diff options
Diffstat (limited to 'docs/sphinx/hieroglyph/test/test_nodes.py')
-rw-r--r-- | docs/sphinx/hieroglyph/test/test_nodes.py | 772 |
1 files changed, 386 insertions, 386 deletions
diff --git a/docs/sphinx/hieroglyph/test/test_nodes.py b/docs/sphinx/hieroglyph/test/test_nodes.py index 4cc17b4771..12cd25a03e 100644 --- a/docs/sphinx/hieroglyph/test/test_nodes.py +++ b/docs/sphinx/hieroglyph/test/test_nodes.py @@ -1,386 +1,386 @@ -import unittest
-from hieroglyph.nodes import Node, Arg, Raises, Except, Returns, Warning, Note
-
-__author__ = 'Robert Smallshire'
-
-class NodeTests(unittest.TestCase):
-
- def test_create_default_node(self):
- node = Node()
- self.assertEqual(node.indent, 0)
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_create_with_indent(self):
- node = Node(indent=4)
- self.assertEqual(node.indent, 4)
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_create_with_lines(self):
- node = Node(lines= ['First', 'Second', 'Third'])
- self.assertEqual(node.indent, 0)
- self.assertEqual(node.lines, ['First', 'Second', 'Third'])
- self.assertIsNone(node.parent)
-
- def test_repr(self):
- node = Node(5, ['One', 'Two', 'Three'])
- actual = repr(node)
- expected = "Node(5, ['One', 'Two', 'Three'], children=[])"
- self.assertEqual(expected, actual)
-
- def test_add_one_child(self):
- node = Node()
- child = Node(parent=node)
- node.add_child(child)
- self.assertIs(node.children[0], child)
-
- def test_add_two_children(self):
- node = Node()
- child0 = Node(parent=node)
- child1 = Node(parent=node)
- node.add_child(child0)
- node.add_child(child1)
- self.assertIs(node.children[0], child0)
- self.assertIs(node.children[1], child1)
-
- def test_render_rst_empty(self):
- node = Node()
- rst = node.render_rst()
- self.assertEqual(len(rst), 0)
-
- def test_render_rst_indent(self):
- node = Node(indent=4)
- rst = node.render_rst()
- self.assertEqual(len(rst), 0)
-
- def test_render_rst_lines(self):
- node = Node(lines= ['First',
- 'Second',
- 'Third'])
- rst = node.render_rst()
- self.assertEqual(rst, ['First',
- 'Second',
- 'Third'])
-
- def test_render_rst_indented_lines(self):
- node = Node(indent=3, lines= ['First',
- 'Second',
- 'Third'])
- rst = node.render_rst()
- self.assertEqual(rst, [' First',
- ' Second',
- ' Third'])
-
- def test_render_rst_with_child(self):
- node = Node(indent=4, lines=["Parent"])
- child = Node(indent=8, lines=["Child"], parent=node)
- node.add_child(child)
- rst = node.render_rst()
- self.assertEqual(rst, [' Parent',
- ' Child'])
-
- def test_render_rst_with_children(self):
- node = Node(indent=4, lines=["Parent"])
- child_a = Node(indent=8, lines=["ChildA"], parent=node)
- node.add_child(child_a)
- child_b = Node(indent=6, lines=["ChildB"], parent=node)
- node.add_child(child_b)
- rst = node.render_rst()
- self.assertEqual(rst, [' Parent',
- ' ChildA',
- ' ChildB'])
-
-
-class ArgTests(unittest.TestCase):
-
- def test_create(self):
- node = Arg(5, 10, 'foo')
- self.assertEqual(node.indent, 5)
- self.assertEqual(node.child_indent, 10)
- self.assertEqual(node.name, 'foo')
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_set_type(self):
- node = Arg(5, 10, 'foo')
- node.type = 'str'
- self.assertEqual(node.type, 'str')
-
- def test_add_one_child(self):
- node = Arg(5, 10, 'foo')
- child = Node(parent=node)
- node.add_child(child)
- self.assertIs(node.children[0], child)
-
- def test_add_two_children(self):
- node = Arg(5, 10, 'foo')
- child0 = Node(parent=node)
- child1 = Node(parent=node)
- node.add_child(child0)
- node.add_child(child1)
- self.assertIs(node.children[0], child0)
- self.assertIs(node.children[1], child1)
-
- def test_repr(self):
- node = Arg(5, 10, 'foo')
- actual = repr(node)
- expected = "Arg('foo', None, children=[])"
- self.assertEqual(expected, actual)
-
- def test_render_rst_empty(self):
- node = Arg(5, 10, 'bar')
- rst = node.render_rst()
- self.assertEqual(rst, [' :param bar: ',
- ''])
-
- def test_render_rst_with_child(self):
- node = Arg(5, 10, 'bar')
- child = Node(indent=10, lines=["Description"], parent=node)
- node.add_child(child)
- rst = node.render_rst()
- self.assertEqual(rst, [' :param bar: Description',
- ''])
-
- def test_render_rst_with_children(self):
- node = Arg(5, 10, 'bar')
- child_a = Node(indent=10, lines=["ChildA"], parent=node)
- node.add_child(child_a)
- child_b = Node(indent=10, lines=["ChildB"], parent=node)
- node.add_child(child_b)
- rst = node.render_rst()
- self.assertEqual(rst, [' :param bar: ChildA',
- ' ChildB',
- ''])
-
- def test_render_rst_with_type(self):
- node = Arg(5, 10, 'bar')
- node.type = 'str'
- rst = node.render_rst()
- self.assertEqual(rst, [' :param bar: ',
- ' :type bar: str',
- ''])
-
-
-class RaisesTests(unittest.TestCase):
-
- def test_create_default_node(self):
- node = Raises()
- self.assertEqual(node.indent, 0)
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_create_with_indent(self):
- node = Raises(indent=4)
- self.assertEqual(node.indent, 4)
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_repr(self):
- node = Raises(5)
- actual = repr(node)
- expected = "Raises(5, children=[])"
- self.assertEqual(expected, actual)
-
- def test_add_one_child(self):
- node = Raises()
- child = Node(parent=node)
- node.add_child(child)
- self.assertIs(node.children[0], child)
-
- def test_add_two_children(self):
- node = Raises()
- child0 = Node(parent=node)
- child1 = Node(parent=node)
- node.add_child(child0)
- node.add_child(child1)
- self.assertIs(node.children[0], child0)
- self.assertIs(node.children[1], child1)
-
- def test_render_rst_empty(self):
- node = Raises()
- rst = node.render_rst()
- self.assertEqual(rst, [':raises:',
- ''])
-
- def test_render_rst_indent(self):
- node = Raises(indent=5)
- rst = node.render_rst()
- self.assertEqual(rst, [' :raises:',
- ''])
-
- def test_render_rst_with_child(self):
- node = Raises(5)
- child = Node(indent=10, lines=["Description"], parent=node)
- node.add_child(child)
- rst = node.render_rst()
- self.assertEqual(rst, [' :raises:',
- ' Description',
- ''])
-
- def test_render_rst_with_children(self):
- node = Raises(5)
- child_a = Node(indent=10, lines=["ChildA"], parent=node)
- node.add_child(child_a)
- child_b = Node(indent=10, lines=["ChildB"], parent=node)
- node.add_child(child_b)
- rst = node.render_rst()
- self.assertEqual(rst, [' :raises:',
- ' ChildA',
- ' ChildB',
- ''])
-
-
-class ExceptTests(unittest.TestCase):
-
- def test_create(self):
- node = Except(5, 'FooError')
- self.assertEqual(node.indent, 5)
- self.assertEqual(node.type, 'FooError')
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_add_one_child(self):
- node = Except(5, 'FooError')
- child = Node(parent=node)
- node.add_child(child)
- self.assertIs(node.children[0], child)
-
- def test_add_two_children(self):
- node = Except(5, 'FooError')
- child0 = Node(parent=node)
- child1 = Node(parent=node)
- node.add_child(child0)
- node.add_child(child1)
- self.assertIs(node.children[0], child0)
- self.assertIs(node.children[1], child1)
-
- def test_repr(self):
- node = Except(5,'FooError')
- actual = repr(node)
- expected = "Except('FooError', children=[])"
- self.assertEqual(expected, actual)
-
- def test_render_rst_empty(self):
- node = Except(5, 'FooError')
- rst = node.render_rst()
- self.assertEqual(rst, [' * FooError - ',
- ''])
-
- def test_render_rst_indent(self):
- node = Except(5, 'FooError')
- rst = node.render_rst()
- self.assertEqual(rst, [' * FooError - ',
- ''])
-
- def test_render_rst_with_child(self):
- node = Except(5, 'FooError')
- child = Node(indent=10, lines=["Description"], parent=node)
- node.add_child(child)
- rst = node.render_rst()
- self.assertEqual(rst, [' * FooError - Description',
- ''])
-
- def test_render_rst_with_children(self):
- node = Except(5, 'FooError')
- child_a = Node(indent=10, lines=["ChildA"], parent=node)
- node.add_child(child_a)
- child_b = Node(indent=10, lines=["ChildB"], parent=node)
- node.add_child(child_b)
- rst = node.render_rst()
- self.assertEqual(rst, [' * FooError - ChildA',
- ' ChildB',
- ''])
-
-class ReturnsTests(unittest.TestCase):
-
- def test_create(self):
- node = Returns(5)
- self.assertEqual(node.indent, 5)
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_add_one_child(self):
- node = Returns(5)
- child = Node(parent=node)
- node.add_child(child)
- self.assertIs(node.children[0], child)
-
- def test_add_two_children(self):
- node = Returns(5)
- child0 = Node(parent=node)
- child1 = Node(parent=node)
- node.add_child(child0)
- node.add_child(child1)
- self.assertIs(node.children[0], child0)
- self.assertIs(node.children[1], child1)
-
- def test_repr(self):
- node = Returns(5)
- actual = repr(node)
- expected = "Returns(5, children=[])"
- self.assertEqual(expected, actual)
-
- # TODO test_render_rst
-
-class WarningTests(unittest.TestCase):
-
- def test_create(self):
- node = Warning(5)
- self.assertEqual(node.indent, 5)
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_add_one_child(self):
- node = Warning(5)
- child = Node(parent=node)
- node.add_child(child)
- self.assertIs(node.children[0], child)
-
- def test_add_two_children(self):
- node = Warning(5)
- child0 = Node(parent=node)
- child1 = Node(parent=node)
- node.add_child(child0)
- node.add_child(child1)
- self.assertIs(node.children[0], child0)
- self.assertIs(node.children[1], child1)
-
- def test_repr(self):
- node = Warning(5)
- actual = repr(node)
- expected = "Warning(5, children=[])"
- self.assertEqual(expected, actual)
-
- # TODO test_render_rst
-
-class NoteTests(unittest.TestCase):
-
- def test_create(self):
- node = Note(5)
- self.assertEqual(node.indent, 5)
- self.assertEqual(node.lines, [])
- self.assertIsNone(node.parent)
-
- def test_add_one_child(self):
- node = Note(5)
- child = Node(parent=node)
- node.add_child(child)
- self.assertIs(node.children[0], child)
-
- def test_add_two_children(self):
- node = Note(5)
- child0 = Node(parent=node)
- child1 = Node(parent=node)
- node.add_child(child0)
- node.add_child(child1)
- self.assertIs(node.children[0], child0)
- self.assertIs(node.children[1], child1)
-
- def test_repr(self):
- node = Note(5)
- actual = repr(node)
- expected = "Note(5, children=[])"
- self.assertEqual(expected, actual)
-
- # TODO test_render_rst
+import unittest +from hieroglyph.nodes import Node, Arg, Raises, Except, Returns, Warning, Note + +__author__ = 'Robert Smallshire' + +class NodeTests(unittest.TestCase): + + def test_create_default_node(self): + node = Node() + self.assertEqual(node.indent, 0) + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_create_with_indent(self): + node = Node(indent=4) + self.assertEqual(node.indent, 4) + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_create_with_lines(self): + node = Node(lines= ['First', 'Second', 'Third']) + self.assertEqual(node.indent, 0) + self.assertEqual(node.lines, ['First', 'Second', 'Third']) + self.assertIsNone(node.parent) + + def test_repr(self): + node = Node(5, ['One', 'Two', 'Three']) + actual = repr(node) + expected = "Node(5, ['One', 'Two', 'Three'], children=[])" + self.assertEqual(expected, actual) + + def test_add_one_child(self): + node = Node() + child = Node(parent=node) + node.add_child(child) + self.assertIs(node.children[0], child) + + def test_add_two_children(self): + node = Node() + child0 = Node(parent=node) + child1 = Node(parent=node) + node.add_child(child0) + node.add_child(child1) + self.assertIs(node.children[0], child0) + self.assertIs(node.children[1], child1) + + def test_render_rst_empty(self): + node = Node() + rst = node.render_rst() + self.assertEqual(len(rst), 0) + + def test_render_rst_indent(self): + node = Node(indent=4) + rst = node.render_rst() + self.assertEqual(len(rst), 0) + + def test_render_rst_lines(self): + node = Node(lines= ['First', + 'Second', + 'Third']) + rst = node.render_rst() + self.assertEqual(rst, ['First', + 'Second', + 'Third']) + + def test_render_rst_indented_lines(self): + node = Node(indent=3, lines= ['First', + 'Second', + 'Third']) + rst = node.render_rst() + self.assertEqual(rst, [' First', + ' Second', + ' Third']) + + def test_render_rst_with_child(self): + node = Node(indent=4, lines=["Parent"]) + child = Node(indent=8, lines=["Child"], parent=node) + node.add_child(child) + rst = node.render_rst() + self.assertEqual(rst, [' Parent', + ' Child']) + + def test_render_rst_with_children(self): + node = Node(indent=4, lines=["Parent"]) + child_a = Node(indent=8, lines=["ChildA"], parent=node) + node.add_child(child_a) + child_b = Node(indent=6, lines=["ChildB"], parent=node) + node.add_child(child_b) + rst = node.render_rst() + self.assertEqual(rst, [' Parent', + ' ChildA', + ' ChildB']) + + +class ArgTests(unittest.TestCase): + + def test_create(self): + node = Arg(5, 10, 'foo') + self.assertEqual(node.indent, 5) + self.assertEqual(node.child_indent, 10) + self.assertEqual(node.name, 'foo') + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_set_type(self): + node = Arg(5, 10, 'foo') + node.type = 'str' + self.assertEqual(node.type, 'str') + + def test_add_one_child(self): + node = Arg(5, 10, 'foo') + child = Node(parent=node) + node.add_child(child) + self.assertIs(node.children[0], child) + + def test_add_two_children(self): + node = Arg(5, 10, 'foo') + child0 = Node(parent=node) + child1 = Node(parent=node) + node.add_child(child0) + node.add_child(child1) + self.assertIs(node.children[0], child0) + self.assertIs(node.children[1], child1) + + def test_repr(self): + node = Arg(5, 10, 'foo') + actual = repr(node) + expected = "Arg('foo', None, children=[])" + self.assertEqual(expected, actual) + + def test_render_rst_empty(self): + node = Arg(5, 10, 'bar') + rst = node.render_rst() + self.assertEqual(rst, [' :param bar: ', + '']) + + def test_render_rst_with_child(self): + node = Arg(5, 10, 'bar') + child = Node(indent=10, lines=["Description"], parent=node) + node.add_child(child) + rst = node.render_rst() + self.assertEqual(rst, [' :param bar: Description', + '']) + + def test_render_rst_with_children(self): + node = Arg(5, 10, 'bar') + child_a = Node(indent=10, lines=["ChildA"], parent=node) + node.add_child(child_a) + child_b = Node(indent=10, lines=["ChildB"], parent=node) + node.add_child(child_b) + rst = node.render_rst() + self.assertEqual(rst, [' :param bar: ChildA', + ' ChildB', + '']) + + def test_render_rst_with_type(self): + node = Arg(5, 10, 'bar') + node.type = 'str' + rst = node.render_rst() + self.assertEqual(rst, [' :param bar: ', + ' :type bar: str', + '']) + + +class RaisesTests(unittest.TestCase): + + def test_create_default_node(self): + node = Raises() + self.assertEqual(node.indent, 0) + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_create_with_indent(self): + node = Raises(indent=4) + self.assertEqual(node.indent, 4) + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_repr(self): + node = Raises(5) + actual = repr(node) + expected = "Raises(5, children=[])" + self.assertEqual(expected, actual) + + def test_add_one_child(self): + node = Raises() + child = Node(parent=node) + node.add_child(child) + self.assertIs(node.children[0], child) + + def test_add_two_children(self): + node = Raises() + child0 = Node(parent=node) + child1 = Node(parent=node) + node.add_child(child0) + node.add_child(child1) + self.assertIs(node.children[0], child0) + self.assertIs(node.children[1], child1) + + def test_render_rst_empty(self): + node = Raises() + rst = node.render_rst() + self.assertEqual(rst, [':raises:', + '']) + + def test_render_rst_indent(self): + node = Raises(indent=5) + rst = node.render_rst() + self.assertEqual(rst, [' :raises:', + '']) + + def test_render_rst_with_child(self): + node = Raises(5) + child = Node(indent=10, lines=["Description"], parent=node) + node.add_child(child) + rst = node.render_rst() + self.assertEqual(rst, [' :raises:', + ' Description', + '']) + + def test_render_rst_with_children(self): + node = Raises(5) + child_a = Node(indent=10, lines=["ChildA"], parent=node) + node.add_child(child_a) + child_b = Node(indent=10, lines=["ChildB"], parent=node) + node.add_child(child_b) + rst = node.render_rst() + self.assertEqual(rst, [' :raises:', + ' ChildA', + ' ChildB', + '']) + + +class ExceptTests(unittest.TestCase): + + def test_create(self): + node = Except(5, 'FooError') + self.assertEqual(node.indent, 5) + self.assertEqual(node.type, 'FooError') + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_add_one_child(self): + node = Except(5, 'FooError') + child = Node(parent=node) + node.add_child(child) + self.assertIs(node.children[0], child) + + def test_add_two_children(self): + node = Except(5, 'FooError') + child0 = Node(parent=node) + child1 = Node(parent=node) + node.add_child(child0) + node.add_child(child1) + self.assertIs(node.children[0], child0) + self.assertIs(node.children[1], child1) + + def test_repr(self): + node = Except(5,'FooError') + actual = repr(node) + expected = "Except('FooError', children=[])" + self.assertEqual(expected, actual) + + def test_render_rst_empty(self): + node = Except(5, 'FooError') + rst = node.render_rst() + self.assertEqual(rst, [' * FooError - ', + '']) + + def test_render_rst_indent(self): + node = Except(5, 'FooError') + rst = node.render_rst() + self.assertEqual(rst, [' * FooError - ', + '']) + + def test_render_rst_with_child(self): + node = Except(5, 'FooError') + child = Node(indent=10, lines=["Description"], parent=node) + node.add_child(child) + rst = node.render_rst() + self.assertEqual(rst, [' * FooError - Description', + '']) + + def test_render_rst_with_children(self): + node = Except(5, 'FooError') + child_a = Node(indent=10, lines=["ChildA"], parent=node) + node.add_child(child_a) + child_b = Node(indent=10, lines=["ChildB"], parent=node) + node.add_child(child_b) + rst = node.render_rst() + self.assertEqual(rst, [' * FooError - ChildA', + ' ChildB', + '']) + +class ReturnsTests(unittest.TestCase): + + def test_create(self): + node = Returns(5) + self.assertEqual(node.indent, 5) + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_add_one_child(self): + node = Returns(5) + child = Node(parent=node) + node.add_child(child) + self.assertIs(node.children[0], child) + + def test_add_two_children(self): + node = Returns(5) + child0 = Node(parent=node) + child1 = Node(parent=node) + node.add_child(child0) + node.add_child(child1) + self.assertIs(node.children[0], child0) + self.assertIs(node.children[1], child1) + + def test_repr(self): + node = Returns(5) + actual = repr(node) + expected = "Returns(5, children=[])" + self.assertEqual(expected, actual) + + # TODO test_render_rst + +class WarningTests(unittest.TestCase): + + def test_create(self): + node = Warning(5) + self.assertEqual(node.indent, 5) + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_add_one_child(self): + node = Warning(5) + child = Node(parent=node) + node.add_child(child) + self.assertIs(node.children[0], child) + + def test_add_two_children(self): + node = Warning(5) + child0 = Node(parent=node) + child1 = Node(parent=node) + node.add_child(child0) + node.add_child(child1) + self.assertIs(node.children[0], child0) + self.assertIs(node.children[1], child1) + + def test_repr(self): + node = Warning(5) + actual = repr(node) + expected = "Warning(5, children=[])" + self.assertEqual(expected, actual) + + # TODO test_render_rst + +class NoteTests(unittest.TestCase): + + def test_create(self): + node = Note(5) + self.assertEqual(node.indent, 5) + self.assertEqual(node.lines, []) + self.assertIsNone(node.parent) + + def test_add_one_child(self): + node = Note(5) + child = Node(parent=node) + node.add_child(child) + self.assertIs(node.children[0], child) + + def test_add_two_children(self): + node = Note(5) + child0 = Node(parent=node) + child1 = Node(parent=node) + node.add_child(child0) + node.add_child(child1) + self.assertIs(node.children[0], child0) + self.assertIs(node.children[1], child1) + + def test_repr(self): + node = Note(5) + actual = repr(node) + expected = "Note(5, children=[])" + self.assertEqual(expected, actual) + + # TODO test_render_rst |