def test_find_clears_scheduler_id(self, client_class): client_class.side_effect = self.create_fake_client client = MagicMock() self._clients["bar"] = client scheduler = LeafScheduler("foo", 9, False) scheduler.configure([ChildInfo(id="bar", address="bar")]) scheduler.find(FindRequest(scheduler_id="foo")) client.host_find.assert_called_with(FindRequest())
def test_find_resource_found(self, client_class): client_class.side_effect = self.create_fake_client bar_client = MagicMock() bar_response = FindResponse(FindResultCode.NOT_FOUND) bar_client.host_find.return_value = bar_response self._clients["bar"] = bar_client baz_client = MagicMock() baz_response = FindResponse(FindResultCode.OK) baz_client.host_find.return_value = baz_response self._clients["baz"] = baz_client scheduler = LeafScheduler("foo", 9, False) scheduler.configure([ChildInfo(id="bar", address="bar"), ChildInfo(id="baz", address="baz")]) response = scheduler.find(self._place_request()) assert_that(response, is_(same_instance(baz_response)))
def test_find_timeout(self, wait_fn, client_class): client_class.side_effect = self.create_fake_client client = MagicMock() response = FindResponse(FindResultCode.OK) client.find.return_value = response self._clients["baz"] = client scheduler = LeafScheduler("foo", 9, False) scheduler.configure([ChildInfo(id="baz", address="baz")]) wait_fn.return_value = set(), set() response = scheduler.find(self._place_request()) assert_that(response.result, is_(FindResultCode.NOT_FOUND)) # must shutdown to join the futures since the patch lifecycle # ends when this method returns self._threadpool.shutdown()