diff --git a/server/lib/python/cartodb_services/cartodb_services/metrics/quota.py b/server/lib/python/cartodb_services/cartodb_services/metrics/quota.py index b372ae9..3e6019b 100644 --- a/server/lib/python/cartodb_services/cartodb_services/metrics/quota.py +++ b/server/lib/python/cartodb_services/cartodb_services/metrics/quota.py @@ -134,7 +134,10 @@ class QuotaChecker: service_type = self._user_service_config.service_type current_used = self._user_service.used_quota(service_type, today) - if soft_limit or (user_quota > 0 and current_used < user_quota): + # Quick workaround so we don't take into account numer of credits + # spent for users that have defined the quota. + # See https://github.com/CartoDB/bigmetadata/issues/215 + if soft_limit or (user_quota > 0): return True else: return False diff --git a/server/lib/python/cartodb_services/setup.py b/server/lib/python/cartodb_services/setup.py index e0be322..5c1e052 100644 --- a/server/lib/python/cartodb_services/setup.py +++ b/server/lib/python/cartodb_services/setup.py @@ -10,7 +10,7 @@ from setuptools import setup, find_packages setup( name='cartodb_services', - version='0.15.2', + version='0.15.3', description='CartoDB Services API Python Library', diff --git a/server/lib/python/cartodb_services/test/test_quota_service.py b/server/lib/python/cartodb_services/test/test_quota_service.py index 7c29559..9bd3e4f 100644 --- a/server/lib/python/cartodb_services/test/test_quota_service.py +++ b/server/lib/python/cartodb_services/test/test_quota_service.py @@ -126,12 +126,15 @@ class TestQuotaService(TestCase): qs.increment_isolines_service_use(amount=1500000) assert qs.check_user_quota() is False + # Quick workaround so we don't take into account numer of credits + # spent for users that have defined the quota. + # See https://github.com/CartoDB/bigmetadata/issues/215 def test_should_check_user_obs_snapshot_quota_correctly(self): qs = self.__build_obs_snapshot_quota_service('test_user') qs.increment_success_service_use() assert qs.check_user_quota() is True qs.increment_success_service_use(amount=100000) - assert qs.check_user_quota() is False + assert qs.check_user_quota() is True def test_should_check_org_obs_snapshot_quota_correctly(self): qs = self.__build_obs_snapshot_quota_service('test_user', @@ -139,14 +142,14 @@ class TestQuotaService(TestCase): qs.increment_success_service_use() assert qs.check_user_quota() is True qs.increment_success_service_use(amount=100000) - assert qs.check_user_quota() is False + assert qs.check_user_quota() is True def test_should_check_user_obs_quota_correctly(self): qs = self.__build_obs_snapshot_quota_service('test_user') qs.increment_success_service_use() assert qs.check_user_quota() is True qs.increment_success_service_use(amount=100000) - assert qs.check_user_quota() is False + assert qs.check_user_quota() is True def test_should_check_org_obs_quota_correctly(self): qs = self.__build_obs_quota_service('test_user', @@ -154,7 +157,7 @@ class TestQuotaService(TestCase): qs.increment_success_service_use() assert qs.check_user_quota() is True qs.increment_success_service_use(amount=100000) - assert qs.check_user_quota() is False + assert qs.check_user_quota() is True def __prepare_quota_service(self, username, service, quota, provider, orgname, soft_limit, end_date):