summaryrefslogtreecommitdiff
path: root/Lib/lib2to3/tests/test_pytree.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/lib2to3/tests/test_pytree.py')
-rw-r--r--Lib/lib2to3/tests/test_pytree.py33
1 files changed, 29 insertions, 4 deletions
diff --git a/Lib/lib2to3/tests/test_pytree.py b/Lib/lib2to3/tests/test_pytree.py
index d31f67debd..ac7d9006aa 100644
--- a/Lib/lib2to3/tests/test_pytree.py
+++ b/Lib/lib2to3/tests/test_pytree.py
@@ -178,17 +178,42 @@ class TestNodes(support.TestCase):
self.assertEqual(str(n1), "foo**bar")
self.assertTrue(isinstance(n1.children, list))
+ def test_leaves(self):
+ l1 = pytree.Leaf(100, "foo")
+ l2 = pytree.Leaf(100, "bar")
+ l3 = pytree.Leaf(100, "fooey")
+ n2 = pytree.Node(1000, [l1, l2])
+ n3 = pytree.Node(1000, [l3])
+ n1 = pytree.Node(1000, [n2, n3])
+
+ self.assertEqual(list(n1.leaves()), [l1, l2, l3])
+
+ def test_depth(self):
+ l1 = pytree.Leaf(100, "foo")
+ l2 = pytree.Leaf(100, "bar")
+ n2 = pytree.Node(1000, [l1, l2])
+ n3 = pytree.Node(1000, [])
+ n1 = pytree.Node(1000, [n2, n3])
+
+ self.assertEqual(l1.depth(), 2)
+ self.assertEqual(n3.depth(), 1)
+ self.assertEqual(n1.depth(), 0)
+
def test_post_order(self):
l1 = pytree.Leaf(100, "foo")
l2 = pytree.Leaf(100, "bar")
- n1 = pytree.Node(1000, [l1, l2])
- self.assertEqual(list(n1.post_order()), [l1, l2, n1])
+ l3 = pytree.Leaf(100, "fooey")
+ c1 = pytree.Node(1000, [l1, l2])
+ n1 = pytree.Node(1000, [c1, l3])
+ self.assertEqual(list(n1.post_order()), [l1, l2, c1, l3, n1])
def test_pre_order(self):
l1 = pytree.Leaf(100, "foo")
l2 = pytree.Leaf(100, "bar")
- n1 = pytree.Node(1000, [l1, l2])
- self.assertEqual(list(n1.pre_order()), [n1, l1, l2])
+ l3 = pytree.Leaf(100, "fooey")
+ c1 = pytree.Node(1000, [l1, l2])
+ n1 = pytree.Node(1000, [c1, l3])
+ self.assertEqual(list(n1.pre_order()), [n1, c1, l1, l2, l3])
def test_changed(self):
l1 = pytree.Leaf(100, "f")