Esempio n. 1
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. 2
0
 def __init__(self, group):
     Graph.__init__(self)
     apex = group.apex()
     for elem in apex:
         factors = Integer(elem).factorize().keys()
         self.add_vertices(factors)
         self.add_edges(itertools.combinations(factors, 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 __init__(self, group):
     Graph.__init__(self)
     apex = group.apex()
     for elem in apex:
         self._add_element(elem)
     for i, vertex in enumerate(self._vertices):
         instance = MultiModeStringFormatter.mixin_to(Integer(vertex))
         instance.str_mode = 'verbose'
         self._vertices[i] = instance
Esempio n. 5
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. 6
0
class LayoutTest(unittest.TestCase):
    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))

    def test_setLocation(self):
        self.assertEquals((0.42, 0.42), self.layout[0])
        self.layout[1] = Point(1, 1)
        self.assertEquals((1, 1), self.layout[1])

        self.layout.reset()
        self.assertEquals((0.42, 0.42), self.layout[1])
Esempio n. 7
0
class LayoutTest(unittest.TestCase):
    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))

    def test_setLocation(self):
        self.assertEquals((0.42, 0.42), self.layout[0])
        self.layout[1] = Point(1, 1)
        self.assertEquals((1, 1), self.layout[1])

        self.layout.reset()
        self.assertEquals((0.42, 0.42), self.layout[1])
Esempio n. 8
0
 def __init__(self, spectrum):
     Graph.__init__(self)
     for elem in spectrum:
         self._add_element(elem)
Esempio n. 9
0
 def __init__(self, spectrum):
     Graph.__init__(self)
     for elem in spectrum:
         factors = Integer(elem).factorize().keys()
         self.add_vertices(factors)
         self.add_edges(itertools.combinations(factors, 2))
Esempio n. 10
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. 11
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. 12
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. 13
0
 def test_vertices(self):
     g = Graph([1, 2, 3])
     self.assertSequenceEqual([1, 2, 3], list(g.vertices))
Esempio n. 14
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())
Esempio n. 15
0
 def __init__(self, spectrum):
     Graph.__init__(self)
     for elem in spectrum:
         factors = Integer(elem).factorize().keys()
         self.add_vertices(factors)
         self.add_edges(itertools.combinations(factors, 2))
Esempio n. 16
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. 17
0
 def __init__(self, spectrum):
     Graph.__init__(self)
     for elem in spectrum:
         self._add_element(elem)
Esempio n. 18
0
 def __init__(self, group):
     Graph.__init__(self)
     apex = group.apex()
     for elem in apex:
         self._add_element(elem)