Esempio n. 1
0
    def test_clone_vertex(self):
        vertices = [1, 2, 3, 4, 5]
        g = Graph(vertices)
        edges = [(1, 2), (1, 3), (2, 4), (2, 5), (4, 5)]
        g.add_edges(edges)
        g.clone_vertex(g.index(2), 6)
        self.assertSparseGraphEqual((vertices + [6], edges + [(1, 6), (2, 6),
            (4, 6), (5, 6)]), g.as_sparse_graph())

        g = Graph(vertices)
        g.add_edges(edges)
        g.clone_vertex(g.index(2), 3)
        self.assertSparseGraphEqual((vertices,
                                     edges + [(2, 3), (3, 4), (3, 5)]),
            g.as_sparse_graph())
Esempio n. 2
0
    def test_neighbors(self):
        g = Graph(range(5))
        edges = [(0, 1), (0, 3), (0, 4), (1, 2), (2, 3), (2, 4)]
        g.add_edges(edges)

        self.assertEqual([1, 3, 4], g.neighbors(0))
        self.assertEqual([1, 3, 4], g.neighbors(2))
Esempio n. 3
0
    def test_sparse(self):
        g = Graph([7, 5, 9, 4, 2])
        g.add_edges([(7, 5), (5, 2), (4, 9), (4, 7), (7, 9)])

        expectedVertices = [2, 4, 5, 7, 9]
        expectedEdges = [(5, 7), (2, 5), (4, 9), (4, 7), (7, 9)]
        self.assertSparseGraphEqual((expectedVertices, expectedEdges),
            g.as_sparse_graph())
Esempio n. 4
0
    def test_max_cocliques(self):
        vertices = range(6)
        edges = [(0, 1), (0, 5), (1, 2), (1, 3),
            (1, 4), (1, 5), (2, 3), (2, 5)]
        g = Graph(vertices)
        g.add_edges(edges)

        cocliques = g.max_cocliques()
        expected = [[0, 2, 4], [0, 3, 4], [3, 4, 5]]
        self.assertSequenceEqual(expected, cocliques)
Esempio n. 5
0
 def setUp(self):
     self.graph = Graph(range(5))
     self.graph.add_edges({(0, 1), (1, 2), (1, 3), (2, 3), (3, 4), (2, 4)})
     self.layout = Layout(self.graph, default_location=(0.42, 0.42))
Esempio n. 6
0
 def test_adjacent(self):
     g = Graph(range(3))
     g.add_edge(0, 1)
     self.assertTrue(g.adjacent(0, 1))
     self.assertFalse(g.adjacent(1, 2))
Esempio n. 7
0
 def test_vertices(self):
     g = Graph([1, 2, 3])
     self.assertSequenceEqual([1, 2, 3], list(g.vertices))
Esempio n. 8
0
 def test_add_vertices(self):
     vertices = [1, 2, 3, 4, 5]
     g = Graph(vertices)
     h = Graph()
     h.add_vertices(vertices)
     self.assertSparseGraphEqual(g.as_sparse_graph(), h.as_sparse_graph())