def test_readAndWrite(self): # from networkit.graphio import METISGraphReader from _NetworKit import METISGraphReader from _NetworKit import METISGraphWriter w = METISGraphWriter() w.write(self.g, "output/metis_test.graph") self.assertTrue(os.path.isfile("output/metis_test.graph")) r = METISGraphReader() testg = r.read("output/metis_test.graph") self.assertEqual(self.g.numberOfNodes(), testg.numberOfNodes()) self.assertEqual(self.g.numberOfEdges(), testg.numberOfEdges())
def getReader(fileformat, **kwargs): #define your [edgelist] reader here: readers = { Format.METIS: METISGraphReader(), Format.GraphML: GraphMLReader(), Format.GEXF: GEXFReader(), Format.SNAP: EdgeListReader('\t', 0, '#', False), Format.EdgeListCommaOne: EdgeListReader( ',', 1, ), Format.EdgeListSpaceOne: EdgeListReader(' ', 1), Format.EdgeListSpaceZero: EdgeListReader(' ', 0), Format.EdgeListTabOne: EdgeListReader('\t', 1), Format.EdgeListTabZero: EdgeListReader('\t', 0), Format.LFR: EdgeListReader('\t', 1), Format.KONECT: KONECTGraphReader(' '), Format.GML: GMLGraphReader(), Format.GraphToolBinary: GraphToolBinaryReader(), Format.MAT: MatReader() } try: # special case for custom Edge Lists if fileformat == Format.EdgeList: if kwargs["continuous"] == False: kwargs["firstNode"] = 0 reader = EdgeListReader(**kwargs) else: reader = readers[fileformat] #(**kwargs) except Exception or KeyError: raise Exception( "unrecognized format/format not supported as input: {0}".format( fileformat)) return reader