def test_discover_peers_Returns_discovered_peers(self): self.mock_peers.get_all_peers.return_value = ['111.222.333.444', '222.333.444.555'] self.mock_api_client.request_nodes.return_value = {"full_nodes": ['333.444.555.777', '444.555.777.888']} result = self.subject.discover_peers() expected_request_nodes_calls = [call.request_nodes('111.222.333.444', 30013), call.request_nodes('222.333.444.555', 30013)] self.assertEqual(self.mock_api_client.method_calls, expected_request_nodes_calls) self.assertEqual(len(result), 4) self.assertEqual(set(result), {'111.222.333.444', '222.333.444.555', '333.444.555.777', '444.555.777.888'})
def test_discover_peers_When_new_peers_none_Returns_known_peers(self): self.mock_peers.get_all_peers.return_value = ['111.222.333.444', '222.333.444.555'] self.mock_api_client.request_nodes.return_value = None result = self.subject.discover_peers() expected_request_nodes_calls = [call.request_nodes('111.222.333.444', 30013), call.request_nodes('222.333.444.555', 30013)] self.assertEqual(self.mock_api_client.method_calls, expected_request_nodes_calls) self.assertEqual(len(result), 2) self.assertEqual(set(result), {'111.222.333.444', '222.333.444.555'})
def test_discover_peers_When_no_new_peers_Returns_known_peers(self): self.mock_peers.get_all_peers.return_value = [ '111.222.333.444', '222.333.444.555' ] self.mock_api_client.request_nodes.return_value = {"full_nodes": []} result = self.subject.discover_peers() expected_request_nodes_calls = [ call.request_nodes('111.222.333.444', 30013), call.request_nodes('222.333.444.555', 30013) ] self.assertEqual(self.mock_api_client.method_calls, expected_request_nodes_calls) self.assertItemsEqual(result, ['111.222.333.444', '222.333.444.555'])