Exemplo n.º 1
0
    def test_remove_edge(self):
        graph = Graph(directed=False, weighted=False)
        graph.add_multiple_edges(((1, 2), (2, 3), (3, 4)))
        assert len(graph) == 4
        assert len(graph.edges) == 3
        assert graph.adj == {1: {2}, 2: {1, 3}, 3: {2, 4}, 4: {3}}

        graph.remove_edge((1, 2))
        assert len(graph) == 4
        assert len(graph.edges) == 2
        assert graph.adj == {1: set(), 2: {3}, 3: {2, 4}, 4: {3}}
Exemplo n.º 2
0
    for j in range(0,4):
        if i<j:
            g.add_edge(str(i)+","+str(j), i, j, i+j)

for i in range(4,8):
    for j in range(4,8):
        if i<j:
            g.add_edge(str(i)+","+str(j), i, j, i+j)            

g.add_edge("bridge", 0, 4)

check_graph_validity(g)
assert(str(g) == "<Graph with %d vertices and %d edges>" %(10, 13))

g.remove_vertex("eggs")
g.remove_edge("bridge")
g.remove_vertex(5)
check_graph_validity(g)
assert(str(g) == "<Graph with %d vertices and %d edges>" %(8, 9))
g = g.copy()
check_graph_validity(g)
assert(str(g) == "<Graph with %d vertices and %d edges>" %(8, 9))
gg = g.to_tuple_set_tuple()
hh = ({(6, None), ('spam', None), (4, None), (1, None), (7, None), (0, None), (3, None), (2, None)}, {('4,6', 4, 6, 10), ('1,2', 1, 2, 3), ('0,3', 0, 3, 3), ('4,7', 4, 7, 11), ('0,1', 0, 1, 1), ('0,2', 0, 2, 2), ('6,7', 6, 7, 13), ('1,3', 1, 3, 4), ('2,3', 2, 3, 5)})
assert(gg==hh)

for i in range(5, 20):
    g.add_vertex(i, i)

for  i in range(17, 27):
    for j in range (6, 13):
Exemplo n.º 3
0
    for j in range(0, 4):
        if i < j:
            g.add_edge(str(i) + "," + str(j), i, j, i + j)

for i in range(4, 8):
    for j in range(4, 8):
        if i < j:
            g.add_edge(str(i) + "," + str(j), i, j, i + j)

g.add_edge("bridge", 0, 4)

check_graph_validity(g)
assert (str(g) == "<Graph with %d vertices and %d edges>" % (10, 13))

g.remove_vertex("eggs")
g.remove_edge("bridge")
g.remove_vertex(5)
check_graph_validity(g)
assert (str(g) == "<Graph with %d vertices and %d edges>" % (8, 9))
g = g.copy()
check_graph_validity(g)
assert (str(g) == "<Graph with %d vertices and %d edges>" % (8, 9))
gg = g.to_tuple_set_tuple()
hh = ({(6, None), ('spam', None), (4, None), (1, None), (7, None), (0, None),
       (3, None), (2, None)}, {('4,6', 4, 6, 10), ('1,2', 1, 2, 3),
                               ('0,3', 0, 3, 3), ('4,7', 4, 7, 11),
                               ('0,1', 0, 1, 1), ('0,2', 0, 2, 2),
                               ('6,7', 6, 7, 13), ('1,3', 1, 3, 4),
                               ('2,3', 2, 3, 5)})
assert (gg == hh)