Index: tools/telemetry/third_party/altgraph/altgraph_tests/test_dot.py |
diff --git a/tools/telemetry/third_party/altgraph/altgraph_tests/test_dot.py b/tools/telemetry/third_party/altgraph/altgraph_tests/test_dot.py |
deleted file mode 100644 |
index 83993dad542d3acad524a2b8c1b4e33396f992c7..0000000000000000000000000000000000000000 |
--- a/tools/telemetry/third_party/altgraph/altgraph_tests/test_dot.py |
+++ /dev/null |
@@ -1,370 +0,0 @@ |
-import unittest |
-import os |
- |
-from altgraph import Dot |
-from altgraph import Graph |
-from altgraph import GraphError |
- |
- |
-class TestDot (unittest.TestCase): |
- |
- def test_constructor(self): |
- g = Graph.Graph([ |
- (1,2), |
- (1,3), |
- (1,4), |
- (2,4), |
- (2,6), |
- (2,7), |
- (7,4), |
- (6,1), |
- ] |
- ) |
- |
- dot = Dot.Dot(g) |
- |
- self.assertEqual(dot.name, 'G') |
- self.assertEqual(dot.attr, {}) |
- self.assertEqual(dot.temp_dot, 'tmp_dot.dot') |
- self.assertEqual(dot.temp_neo, 'tmp_neo.dot') |
- self.assertEqual(dot.dot, 'dot') |
- self.assertEqual(dot.dotty, 'dotty') |
- self.assertEqual(dot.neato, 'neato') |
- self.assertEqual(dot.type, 'digraph') |
- |
- self.assertEqual(dot.nodes, dict([(x, {}) for x in g])) |
- |
- edges = {} |
- for head in g: |
- edges[head] = {} |
- for tail in g.out_nbrs(head): |
- edges[head][tail] = {} |
- |
- self.assertEqual(dot.edges[1], edges[1]) |
- self.assertEqual(dot.edges, edges) |
- |
- |
- dot = Dot.Dot(g, nodes=[1,2], |
- edgefn=lambda node: list(sorted(g.out_nbrs(node)))[:-1], |
- nodevisitor=lambda node: {'label': node}, |
- edgevisitor=lambda head, tail: {'label': (head, tail) }, |
- name="testgraph", |
- dot='/usr/local/bin/dot', |
- dotty='/usr/local/bin/dotty', |
- neato='/usr/local/bin/neato', |
- graphtype="graph") |
- |
- self.assertEqual(dot.name, 'testgraph') |
- self.assertEqual(dot.attr, {}) |
- self.assertEqual(dot.temp_dot, 'tmp_dot.dot') |
- self.assertEqual(dot.temp_neo, 'tmp_neo.dot') |
- self.assertEqual(dot.dot, '/usr/local/bin/dot') |
- self.assertEqual(dot.dotty, '/usr/local/bin/dotty') |
- self.assertEqual(dot.neato, '/usr/local/bin/neato') |
- self.assertEqual(dot.type, 'graph') |
- |
- self.assertEqual(dot.nodes, dict([(x, {'label': x}) for x in [1,2]])) |
- |
- edges = {} |
- for head in [1,2]: |
- edges[head] = {} |
- for tail in list(sorted(g.out_nbrs(head)))[:-1]: |
- if tail not in [1,2]: continue |
- edges[head][tail] = {'label': (head, tail) } |
- |
- self.assertEqual(dot.edges[1], edges[1]) |
- self.assertEqual(dot.edges, edges) |
- |
- self.assertRaises(GraphError, Dot.Dot, g, nodes=[1,2, 9]) |
- |
- def test_style(self): |
- g = Graph.Graph([]) |
- |
- dot = Dot.Dot(g) |
- |
- self.assertEqual(dot.attr, {}) |
- |
- dot.style(key='value') |
- self.assertEqual(dot.attr, {'key': 'value'}) |
- |
- dot.style(key2='value2') |
- self.assertEqual(dot.attr, {'key2': 'value2'}) |
- |
- def test_node_style(self): |
- g = Graph.Graph([ |
- (1,2), |
- (1,3), |
- (1,4), |
- (2,4), |
- (2,6), |
- (2,7), |
- (7,4), |
- (6,1), |
- ] |
- ) |
- |
- dot = Dot.Dot(g) |
- |
- self.assertEqual(dot.nodes[1], {}) |
- |
- dot.node_style(1, key='value') |
- self.assertEqual(dot.nodes[1], {'key': 'value'}) |
- |
- dot.node_style(1, key2='value2') |
- self.assertEqual(dot.nodes[1], {'key2': 'value2'}) |
- self.assertEqual(dot.nodes[2], {}) |
- |
- dot.all_node_style(key3='value3') |
- for n in g: |
- self.assertEqual(dot.nodes[n], {'key3': 'value3'}) |
- |
- self.assertTrue(9 not in dot.nodes) |
- dot.node_style(9, key='value') |
- self.assertEqual(dot.nodes[9], {'key': 'value'}) |
- |
- def test_edge_style(self): |
- g = Graph.Graph([ |
- (1,2), |
- (1,3), |
- (1,4), |
- (2,4), |
- (2,6), |
- (2,7), |
- (7,4), |
- (6,1), |
- ] |
- ) |
- |
- dot = Dot.Dot(g) |
- |
- self.assertEqual(dot.edges[1][2], {}) |
- dot.edge_style(1,2, foo='bar') |
- self.assertEqual(dot.edges[1][2], {'foo': 'bar'}) |
- |
- dot.edge_style(1,2, foo2='2bar') |
- self.assertEqual(dot.edges[1][2], {'foo2': '2bar'}) |
- |
- self.assertEqual(dot.edges[1][3], {}) |
- |
- self.assertFalse(6 in dot.edges[1]) |
- dot.edge_style(1,6, foo2='2bar') |
- self.assertEqual(dot.edges[1][6], {'foo2': '2bar'}) |
- |
- self.assertRaises(GraphError, dot.edge_style, 1, 9, a=1) |
- self.assertRaises(GraphError, dot.edge_style, 9, 1, a=1) |
- |
- |
- def test_iter(self): |
- g = Graph.Graph([ |
- (1,2), |
- (1,3), |
- (1,4), |
- (2,4), |
- (2,6), |
- (2,7), |
- (7,4), |
- (6,1), |
- ] |
- ) |
- |
- dot = Dot.Dot(g) |
- dot.style(graph="foobar") |
- dot.node_style(1, key='value') |
- dot.node_style(2, key='another', key2='world') |
- dot.edge_style(1,4, key1='value1', key2='value2') |
- dot.edge_style(2,4, key1='valueA') |
- |
- self.assertEqual(list(iter(dot)), list(dot.iterdot())) |
- |
- for item in dot.iterdot(): |
- self.assertTrue(isinstance(item, str)) |
- |
- first = list(dot.iterdot())[0] |
- self.assertEqual(first, "digraph %s {\n"%(dot.name,)) |
- |
- dot.type = 'graph' |
- first = list(dot.iterdot())[0] |
- self.assertEqual(first, "graph %s {\n"%(dot.name,)) |
- |
- dot.type = 'foo' |
- self.assertRaises(GraphError, list, dot.iterdot()) |
- dot.type = 'digraph' |
- |
- self.assertEqual(list(dot), [ |
- 'digraph G {\n', |
- 'graph="foobar";', |
- '\n', |
- |
- '\t"1" [', |
- 'key="value",', |
- '];\n', |
- |
- '\t"2" [', |
- 'key="another",', |
- 'key2="world",', |
- '];\n', |
- |
- '\t"3" [', |
- '];\n', |
- |
- '\t"4" [', |
- '];\n', |
- |
- '\t"6" [', |
- '];\n', |
- |
- '\t"7" [', |
- '];\n', |
- |
- '\t"1" -> "2" [', |
- '];\n', |
- |
- '\t"1" -> "3" [', |
- '];\n', |
- |
- '\t"1" -> "4" [', |
- 'key1="value1",', |
- 'key2="value2",', |
- '];\n', |
- |
- '\t"2" -> "4" [', |
- 'key1="valueA",', |
- '];\n', |
- |
- '\t"2" -> "6" [', |
- '];\n', |
- |
- '\t"2" -> "7" [', |
- '];\n', |
- |
- '\t"6" -> "1" [', |
- '];\n', |
- |
- '\t"7" -> "4" [', |
- '];\n', |
- '}\n']) |
- |
- |
- def test_save(self): |
- g = Graph.Graph([ |
- (1,2), |
- (1,3), |
- (1,4), |
- (2,4), |
- (2,6), |
- (2,7), |
- (7,4), |
- (6,1), |
- ] |
- ) |
- |
- dot = Dot.Dot(g) |
- dot.style(graph="foobar") |
- dot.node_style(1, key='value') |
- dot.node_style(2, key='another', key2='world') |
- dot.edge_style(1,4, key1='value1', key2='value2') |
- dot.edge_style(2,4, key1='valueA') |
- |
- fn = 'test_dot.dot' |
- self.assertTrue(not os.path.exists(fn)) |
- |
- try: |
- dot.save_dot(fn) |
- |
- fp = open(fn, 'r') |
- data = fp.read() |
- fp.close() |
- self.assertEqual(data, ''.join(dot)) |
- |
- finally: |
- if os.path.exists(fn): |
- os.unlink(fn) |
- |
- |
- def test_img(self): |
- g = Graph.Graph([ |
- (1,2), |
- (1,3), |
- (1,4), |
- (2,4), |
- (2,6), |
- (2,7), |
- (7,4), |
- (6,1), |
- ] |
- ) |
- |
- dot = Dot.Dot(g, dot='/usr/local/bin/!!dot', dotty='/usr/local/bin/!!dotty', neato='/usr/local/bin/!!neato') |
- dot.style(size='10,10', rankdir='RL', page='5, 5' , ranksep=0.75) |
- dot.node_style(1, label='BASE_NODE',shape='box', color='blue') |
- dot.node_style(2, style='filled', fillcolor='red') |
- dot.edge_style(1,4, style='dotted') |
- dot.edge_style(2,4, arrowhead='dot', label='binds', labelangle='90') |
- |
- system_cmds = [] |
- def fake_system(cmd): |
- system_cmds.append(cmd) |
- return None |
- |
- try: |
- real_system = os.system |
- os.system = fake_system |
- |
- system_cmds = [] |
- dot.save_img('foo') |
- self.assertEqual(system_cmds, ['/usr/local/bin/!!dot -Tgif tmp_dot.dot -o foo.gif']) |
- |
- system_cmds = [] |
- dot.save_img('foo', file_type='jpg') |
- self.assertEqual(system_cmds, ['/usr/local/bin/!!dot -Tjpg tmp_dot.dot -o foo.jpg']) |
- |
- system_cmds = [] |
- dot.save_img('bar', file_type='jpg', mode='neato') |
- self.assertEqual(system_cmds, [ |
- '/usr/local/bin/!!neato -o tmp_dot.dot tmp_neo.dot', |
- '/usr/local/bin/!!dot -Tjpg tmp_dot.dot -o bar.jpg', |
- ]) |
- |
- system_cmds = [] |
- dot.display() |
- self.assertEqual(system_cmds, [ |
- '/usr/local/bin/!!dotty tmp_dot.dot' |
- ]) |
- |
- system_cmds = [] |
- dot.display(mode='neato') |
- self.assertEqual(system_cmds, [ |
- '/usr/local/bin/!!neato -o tmp_dot.dot tmp_neo.dot', |
- '/usr/local/bin/!!dotty tmp_dot.dot' |
- ]) |
- |
- finally: |
- if os.path.exists(dot.temp_dot): |
- os.unlink(dot.temp_dot) |
- if os.path.exists(dot.temp_neo): |
- os.unlink(dot.temp_neo) |
- os.system = real_system |
- |
- if os.path.exists('/usr/local/bin/dot') and os.path.exists('/usr/local/bin/neato'): |
- try: |
- dot.dot='/usr/local/bin/dot' |
- dot.neato='/usr/local/bin/neato' |
- self.assertFalse(os.path.exists('foo.gif')) |
- dot.save_img('foo') |
- self.assertTrue(os.path.exists('foo.gif')) |
- os.unlink('foo.gif') |
- |
- self.assertFalse(os.path.exists('foo.gif')) |
- dot.save_img('foo', mode='neato') |
- self.assertTrue(os.path.exists('foo.gif')) |
- os.unlink('foo.gif') |
- |
- finally: |
- if os.path.exists(dot.temp_dot): |
- os.unlink(dot.temp_dot) |
- if os.path.exists(dot.temp_neo): |
- os.unlink(dot.temp_neo) |
- |
- |
-if __name__ == "__main__": # pragma: no cover |
- unittest.main() |