def test_action_is_repeatet_after_wait_on_action_rate_limit_error( self, client, hostFinder, sleep): server, hostFinder, agent = self.makeBase(client, hostFinder) agent.client = client self.serverAction(server).side_effect = [hetznercloud.HetznerRateLimitExceeded('502'), \ MagicMock()] self.takeAction(agent) assert sleep.call_count == 1 assert self.serverAction(server).call_count == 2
def test_monitor_retries_on_server_rate_error(self, client, makeHostFinder, sleep): server, hostFinder, ip, floatingIp = self.makeBase( client, makeHostFinder) ip.server = server.id hostFinder.find = mock.Mock( side_effect=[hetznercloud.HetznerRateLimitExceeded(''), server]) assert floatingIp.monitor() is ocf.ReturnCodes.success
def test_start_retries_on_ip_ratemlimit_error(self, client, makeHostFinder, sleep): server, hostFinder, ip, floatingIp = self.makeBase( client, makeHostFinder) floatingIp.ipFinder.find = mock.Mock( side_effect=[hetznercloud.HetznerRateLimitExceeded(''), ip]) assert floatingIp.start() is ocf.ReturnCodes.success ip.assign_to_server.assert_called_once_with(server.id) sleep.assert_called_once()
def test_action_is_repeatet_after_wait_on_host_find_rate_limit_error( self, client, hostFinder, sleep): server, hostFinder, agent = self.makeBase(client, hostFinder) agent.client = client hostFinder.find.side_effect = [ hetznercloud.HetznerRateLimitExceeded('502'), server ] self.takeAction(agent) assert sleep.call_count == 1 assert hostFinder.find.call_count == 2 try: self.serverAction(server).assert_called_once() except AttributeError: pass