| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- import io
- import networkx as nx
- from networkx.readwrite.p2g import read_p2g, write_p2g
- from networkx.utils import edges_equal
- class TestP2G:
- @classmethod
- def setup_class(cls):
- cls.G = nx.Graph(name="test")
- e = [("a", "b"), ("b", "c"), ("c", "d"), ("d", "e"), ("e", "f"), ("a", "f")]
- cls.G.add_edges_from(e)
- cls.G.add_node("g")
- cls.DG = nx.DiGraph(cls.G)
- def test_read_p2g(self):
- s = b"""\
- name
- 3 4
- a
- 1 2
- b
- c
- 0 2
- """
- bytesIO = io.BytesIO(s)
- DG = read_p2g(bytesIO)
- assert DG.name == "name"
- assert sorted(DG) == ["a", "b", "c"]
- assert edges_equal(
- DG.edges(), [("a", "c"), ("a", "b"), ("c", "a"), ("c", "c")], directed=True
- )
- def test_write_p2g(self):
- s = b"""foo
- 3 2
- 1
- 1
- 2
- 2
- 3
- """
- fh = io.BytesIO()
- G = nx.DiGraph()
- G.name = "foo"
- G.add_edges_from([(1, 2), (2, 3)])
- write_p2g(G, fh)
- fh.seek(0)
- r = fh.read()
- assert r == s
- def test_write_read_p2g(self):
- fh = io.BytesIO()
- G = nx.DiGraph()
- G.name = "foo"
- G.add_edges_from([("a", "b"), ("b", "c")])
- write_p2g(G, fh)
- fh.seek(0)
- H = read_p2g(fh)
- assert edges_equal(G.edges(), H.edges(), directed=True)
|