Ejemplo n.º 1
0
    def test_undirected_graph_remove_vertex(self):
        """ Remove vertices from an undirected graph """
        g = UndirectedGraph()
        g.add_vertex(v_val='v0')
        g.add_vertex(v_val='v1')
        g.add_vertex(v_val='v2')
        g.add_edge(('v0', 'v1'))
        g.add_edge(('v1', 'v2'))

        g.remove_vertex('v0')

        self.assertFalse(g.has_vertex('v0'))
        self.assertTrue(g.has_vertex('v1'))
        self.assertTrue(g.has_vertex('v2'))
        self.assertFalse(g.has_edge(('v0', 'v1')))
        self.assertFalse(g.has_edge(('v1', 'v0')))
        self.assertTrue(g.has_edge(('v1', 'v2')))

        g.remove_vertex('v1')

        self.assertFalse(g.has_vertex('v0'))
        self.assertFalse(g.has_vertex('v1'))
        self.assertTrue(g.has_vertex('v2'))
        self.assertFalse(g.has_edge(('v0', 'v1')))
        self.assertFalse(g.has_edge(('v1', 'v0')))
        self.assertFalse(g.has_edge(('v1', 'v2')))
Ejemplo n.º 2
0
    def test_undirected_graph_length(self):
        """ Get the length of an undirected graph """
        g = UndirectedGraph()

        self.assertEqual(len(g), 0)

        g.add_vertex(v_val='v0')

        self.assertEqual(len(g), 1)

        g.add_vertex(v_val='v1')
        g.add_edge(('v0', 'v1'))

        self.assertEqual(len(g), 2)

        g.remove_vertex('v0')

        self.assertEqual(len(g), 1)