def test_complete_neighbourhood(self): req = MockRequester({ 0: {1, 2, 4, 5}, 1: {6}, 2: {5}, 3: {2, 4}, 4: {1}, 5: {1, 7}, 6: {7}, 7: {0, 6} }) nm = NodeManager(req) _run(nm.complete_neighbourhood(0)) self._assert_graph( { 1: {2, 4, 5}, 2: {1, 4, 5}, 4: {1, 2, 5}, 5: {1, 2, 4} }, req)
def test_concurrent_execution(self): req = MockRequester( { 0: {1, 2, 3, 4, 5, 6, 7}, 1: set(), 2: set(), 3: set(), 4: set(), 5: set(), 6: set(), 7: set() }, add_sleep=1) nm = NodeManager(req) try: # 7 * 6 / 2 = 21 connections to be added _run(asyncio.wait_for(nm.complete_neighbourhood(0), timeout=5)) except asyncio.TimeoutError: self.fail("Timeout reached!") self._assert_graph({i: (set(range(1, 8)) - {i}) for i in range(1, 8)}, req)