Ejemplo n.º 1
0
 def test_custom_bucket_size_and_rate(self):
     self.__test_rate = RateLimiter(10, 1, current_time=0)
     self.assertTrue(self.charge_if_available(10))
     self.assertFalse(self.charge_if_available(10))
     self.advance_time(1)
     self.assertFalse(self.charge_if_available(10))
     self.advance_time(5)
     self.assertFalse(self.charge_if_available(10))
Ejemplo n.º 2
0
 def test_zero_bucket_fill_rate(self):
     self.__test_rate = RateLimiter(100, 0, current_time=0)
     self.assertTrue(self.charge_if_available(20))
     self.assertTrue(self.charge_if_available(80))
     self.assertFalse(self.charge_if_available(1))
     self.advance_time(1)
     self.assertFalse(self.charge_if_available(20))
     self.advance_time(5)
     self.assertFalse(self.charge_if_available(20))
Ejemplo n.º 3
0
 def test_custom_bucket_size_and_rate_sleep(self):
     with mock.patch("scalyr_agent.util.time.sleep", self.fake_sleep):
         self.__last_sleep_amount = -1
         self.__test_rate = RateLimiter(10, 1, current_time=0)
         self.block_until_charge_succeeds(10)
         self.assertEqual(self.__last_sleep_amount, -1)
         self.block_until_charge_succeeds(10)
         self.assertEqual(self.__last_sleep_amount, 10)
         self.advance_time(15)
         self.block_until_charge_succeeds(20)
         self.assertEqual(self.__last_sleep_amount, 10)
Ejemplo n.º 4
0
 def test_zero_bucket_fill_rate_sleep(self):
     self.__test_rate = RateLimiter(100, 0, current_time=0)
     self.assertRaises(ValueError, self.block_until_charge_succeeds, 20)
Ejemplo n.º 5
0
 def setUp(self):
     super(TestRateLimiter, self).setUp()
     self.__test_rate = RateLimiter(100, 10, current_time=0)
     self.__current_time = 0
     self.__last_sleep_amount = -1
Ejemplo n.º 6
0
 def setUp(self):
     self.__test_rate = RateLimiter(100, 10, current_time=0)
     self.__current_time = 0
Ejemplo n.º 7
0
 def setUp(self):
     super(TestRateLimiter, self).setUp()
     self.__test_rate = RateLimiter(100, 10, current_time=0)
     self.__current_time = 0