def test_remove_self_loops(self): network = clique(5) network[5].append(5) network.remove_self_loops() self.assertEqual(network[5], [1, 2, 3, 4])
def test_make_undirected(self): network = clique(5) network[4] = [] network.make_undirected() self.assertTrue(network == {1: [2, 3, 4, 5], 2: [1, 3, 4, 5], 3: [1, 2, 4, 5], 4: [1, 2, 3, 5], 5: [1, 2, 3, 4]})
def test_make_consistent(self): network = clique(5) network[5].extend([1, 2, 3, 4]) self.assertNotEqual(network[5], [1, 2, 3, 4]) network.make_consistent() self.assertEqual(network[5], [1, 2, 3, 4])
def test_nodes(self): network = clique(5) self.assertEqual(set(range(1, 6)).difference(network.nodes()), set())
def test_number_of_nodes(self): network = clique(5) self.assertEqual(network.number_of_nodes(), 5)
def test_number_of_edges(self): network = clique(5) self.assertEqual(network.number_of_edges(), 4 + 3 + 2 + 1) network = clique(4) self.assertEqual(network.number_of_edges(), 3 + 2 + 1)
def test_order(self): network = clique(5) self.assertEqual(network.order(), 5)
def test_degree(self): network = clique(5) self.assertEqual(network.degree(1), 4) self.assertEqual(network.degree([1, 2, 3]), {1: 4, 2: 4, 3: 4})
def test_has_edge(self): network = clique(5) self.assertTrue(network.has_edge(1, 5)) self.assertFalse(network.has_edge(1, 6)) self.assertFalse(network.has_edge(6, 1))
def test_check_self_loops(self): network = clique(5) self.assertFalse(network.check_self_loops()) network[5].append(5) self.assertTrue(network.check_self_loops())
def test_subgraph(self): network = clique(5) self.assertEqual(network.subgraph({1, 2}), {1: [2], 2: [1]})
def test_adjacency_iter(self): network = clique(3) self.assertEqual([x for x in network.adjacency_iter()], [(1, [2, 3]), (2, [1, 3]), (3,[1, 2])])