Esempio n. 1
0
 def test_routing_quota_check_passes_if_no_quota_but_soft_limit(self):
     user_service_config = RoutingConfigMock(
         username=self.username,
         organization=None,
         service_type=self.service_type,
         monthly_quota=1000,
         period_end_date=datetime.today(),
         soft_limit=True)
     redis_conn = MockRedis()
     redis_conn.zincrby(self.redis_key, self.period_end_date.day, 1001)
     checker = QuotaChecker(user_service_config, redis_conn)
     assert checker.check() == True
Esempio n. 2
0
 def test_routing_quota_check_fails_when_quota_exhausted(self):
     user_service_config = RoutingConfigMock(
         username=self.username,
         organization=None,
         service_type=self.service_type,
         monthly_quota=1000,
         period_end_date=datetime.today(),
         soft_limit=False)
     redis_conn = MockRedis()
     redis_conn.zincrby(self.redis_key, self.period_end_date.strftime('%d'),
                        1001)
     checker = QuotaChecker(user_service_config, redis_conn)
     assert checker.check() == False
Esempio n. 3
0
 def test_routing_quota_check_passes_if_no_quota_but_soft_limit(self):
     user_service_config = RoutingConfigMock(
         username = self.username,
         organization = None,
         service_type = self.service_type,
         monthly_quota = 1000,
         period_end_date = datetime.today(),
         soft_limit = True
     )
     redis_conn = MockRedis()
     redis_conn.zincrby(self.redis_key, self.period_end_date.day, 1001)
     checker = QuotaChecker(user_service_config, redis_conn)
     assert checker.check() == True
Esempio n. 4
0
 def test_routing_quota_check_fails_right_in_the_limit(self):
     """
     I have 1000 credits and I just spent 1000 today. I should not pass
     the check to perform the 1001th routing operation.
     """
     user_service_config = RoutingConfigMock(
         username=self.username,
         organization=None,
         service_type=self.service_type,
         monthly_quota=1000,
         period_end_date=datetime.today(),
         soft_limit=False)
     redis_conn = MockRedis()
     redis_conn.zincrby(self.redis_key, self.period_end_date.day, 1000)
     checker = QuotaChecker(user_service_config, redis_conn)
     assert checker.check() == False
Esempio n. 5
0
 def test_routing_quota_check_fails_right_in_the_limit(self):
     """
     I have 1000 credits and I just spent 1000 today. I should not pass
     the check to perform the 1001th routing operation.
     """
     user_service_config = RoutingConfigMock(
         username = self.username,
         organization = None,
         service_type = self.service_type,
         monthly_quota = 1000,
         period_end_date = datetime.today(),
         soft_limit = False
     )
     redis_conn = MockRedis()
     redis_conn.zincrby(self.redis_key, self.period_end_date.day, 1000)
     checker = QuotaChecker(user_service_config, redis_conn)
     assert checker.check() == False
Esempio n. 6
0
 def test_routing_quota_check_passes_when_enough_quota(self):
     user_service_config = RoutingConfigMock(
         username=self.username,
         organization=None,
         service_type=self.service_type,
         monthly_quota=1000,
         period_end_date=datetime.today(),
         soft_limit=False)
     redis_conn = MockRedis()
     redis_conn.zincrby(self.redis_key, self.period_end_date.day, 999)
     assert QuotaChecker(user_service_config, redis_conn).check() == True