code: def test_read_attribute_graphml(self):
      G = self.attribute_graph
      H = nx.read_graphml(self.attribute_fh)
      assert nodes_equal(G.nodes(True), sorted(H.nodes(data=True)))
      ge = sorted(G.edges(data=True))
      he = sorted(H.edges(data=True))
      for a, b in zip(ge, he):
          assert a == b
      self.attribute_fh.seek(0)
  
      PG = nx.parse_graphml(self.attribute_data)
      assert sorted(G.nodes(True)) == sorted(PG.nodes(data=True))
      ge = sorted(G.edges(data=True))
      he = sorted(PG.edges(data=True))
      for a, b in zip(ge, he):
          assert a == b
  
imports: import io
  import pytest
  import networkx
  from networkx.readwrite.graphml import GraphMLWriter
  from networkx.utils import edges_equal, nodes_equal
label_desc: Use image node_id 6 for calling the TestReadGraphML obj's underlying member method code with example usage: obj.test_read_attribute_graphml() without return types