diff --git a/server/lib/python/cartodb_services/cartodb_services/metrics/user.py b/server/lib/python/cartodb_services/cartodb_services/metrics/user.py index d154e0c..90c9698 100644 --- a/server/lib/python/cartodb_services/cartodb_services/metrics/user.py +++ b/server/lib/python/cartodb_services/cartodb_services/metrics/user.py @@ -85,6 +85,11 @@ class UserMetricsService: service, metric, date) score = self._redis_connection.zscore(redis_prefix, date.day) aggregated_metric += score if score else 0 + zero_padded_day = date.strftime('%d') + if str(date.day) != zero_padded_day: + score = self._redis_connection.zscore(redis_prefix, zero_padded_day) + aggregated_metric += score if score else 0 + return aggregated_metric # Private functions diff --git a/server/lib/python/cartodb_services/test/test_user_service.py b/server/lib/python/cartodb_services/test/test_user_service.py index a77622d..2f1a231 100644 --- a/server/lib/python/cartodb_services/test/test_user_service.py +++ b/server/lib/python/cartodb_services/test/test_user_service.py @@ -77,8 +77,11 @@ class TestUserService(TestCase): us.increment_service_use(self.NOKIA_GEOCODER, 'fail_responses') assert us.used_quota(self.NOKIA_GEOCODER, date.today()) == 2 + @freeze_time("2015-06-01") def test_should_account_for_zero_paddded_keys(self): - raise nose.SkipTest('not implemented yet') + us = self.__build_user_service('test_user') + self.redis_conn.zincrby('user:test_user:geocoder_here:success_responses:201506', '01', 400) + assert us.used_quota(self.NOKIA_GEOCODER, date(2015, 6,1)) == 400 @freeze_time("2015-06-01") def test_should_account_for_wrongly_stored_non_padded_keys(self):