def test_progress(self): metaknowledge.VERBOSE_MODE = True tmpIO = io.StringIO() P = _ProgressBar(0, "testing", output=tmpIO, dummy=True) metaknowledge.writeEdgeList( self.G, fileEName, _progBar=P, ) tmpIO.seek(0) s = ''.join(tmpIO.readlines()) self.assertEqual(len(s), 0) P = _ProgressBar(0, "testing", output=tmpIO) metaknowledge.writeEdgeList(self.G, fileEName, _progBar=P) tmpIO.seek(0) os.remove(fileEName) s = ''.join(tmpIO.readlines()) self.assertEqual(s[-14], '[') self.assertEqual(s[-1], '%') P.finish("done test") tmpIO.seek(0) s = ''.join(tmpIO.readlines()) self.assertEqual( s[-81:-3], 'done test 0.' ) metaknowledge.VERBOSE_MODE = False
def outputNetwork(clargs, grph): outDict = collections.OrderedDict([ ('1', "edge list and node attribute list"), ('2', "edge list"), ('3', "node attribute list"), ('4', "graphml (SLOW)"), ]) try: import metaknowledge.contour except ImportError: import metaknowledge else: outDict['0'] = "view graph" outDict.move_to_end('0', last=False) print("The network contains {} nodes and {} edges.".format( len(grph.nodes()), len(grph.edges()))) outID = int(inputMenu(outDict, header="What type of output to you want? ")) if outID == 0: metaknowledge.contour.quickVisual(grph) outputNetwork(clargs, grph) elif outID == 1: while True: try: outName = getOutputName(clargs, '', checking=False) metaknowledge.writeGraph(grph, outName, overwrite=False) except OSError: if clargs.name: metaknowledge.writeGraph(grph, outName, overwrite=True) break else: overWrite = yesorNo("{}, overwrite (y/n)? ") if overWrite: metaknowledge.writeGraph(grph, outName, overwrite=True) break else: pass else: break elif outID == 2: outName = getOutputName(clargs, '.csv') metaknowledge.writeEdgeList(grph, outName) elif outID == 3: outName = getOutputName(clargs, '.csv') metaknowledge.writeNodeAttributeFile(grph, outName) else: outName = getOutputName(clargs, '.graphml') nx.write_graphml(grph, outName)
def test_progress(self): metaknowledge.VERBOSE_MODE = True tmpIO = io.StringIO() P = _ProgressBar(0, "testing", output = tmpIO, dummy = True) metaknowledge.writeEdgeList(self.G, fileEName, _progBar = P, ) tmpIO.seek(0) s = ''.join(tmpIO.readlines()) self.assertEqual(len(s), 0) P = _ProgressBar(0, "testing", output = tmpIO) metaknowledge.writeEdgeList(self.G, fileEName, _progBar = P) tmpIO.seek(0) s = ''.join(tmpIO.readlines()) self.assertFalse("]100.0%" in s) self.assertTrue("Done edge list" in s) os.remove(fileEName) metaknowledge.VERBOSE_MODE = False
def outputNetwork(clargs, grph): outDict = collections.OrderedDict([ ('1', "edge list and node attribute list"), ('2', "edge list"), ('3', "node attribute list"), ('4', "graphml (SLOW)"), ]) try: import metaknowledge.contour except ImportError: import metaknowledge else: outDict['0'] = "view graph" outDict.move_to_end('0', last = False) print("The network contains {} nodes and {} edges.".format(len(grph.nodes()), len(grph.edges()))) outID = int(inputMenu(outDict, header = "What type of output to you want? ")) if outID == 0: metaknowledge.contour.quickVisual(grph) outputNetwork(clargs, grph) elif outID == 1: while True: try: outName = getOutputName(clargs, '', checking = False) metaknowledge.writeGraph(grph, outName, overwrite = False) except OSError: if clargs.name: metaknowledge.writeGraph(grph, outName, overwrite = True) break else: overWrite = yesorNo("{}, overwrite (y/n)? ") if overWrite: metaknowledge.writeGraph(grph, outName, overwrite = True) break else: pass else: break elif outID == 2: outName = getOutputName(clargs, '.csv') metaknowledge.writeEdgeList(grph, outName) elif outID == 3: outName = getOutputName(clargs, '.csv') metaknowledge.writeNodeAttributeFile(grph, outName) else: outName = getOutputName(clargs, '.graphml') nx.write_graphml(grph, outName)