Reworked tree dfs unit tests.

This commit is contained in:
Donne Martin
2015-08-04 19:35:19 -04:00
parent db798ed6a7
commit 706ccd3256
3 changed files with 67 additions and 61 deletions

View File

@@ -1,9 +1,11 @@
from __future__ import print_function
from nose.tools import assert_equal
class TestDfs(object):
def __init__(self):
self.results = Results()
def test_dfs(self):
node = Node(5)
insert(node, 2)
@@ -11,17 +13,17 @@ class TestDfs(object):
insert(node, 1)
insert(node, 3)
with captured_output() as (out, err):
in_order_traversal(node, sys.stdout.write)
assert_equal(out.getvalue().strip(), '12358')
in_order_traversal(node, self.results.add_result)
assert_equal(str(self.results), "[1, 2, 3, 5, 8]")
self.results.clear_results()
with captured_output() as (out, err):
pre_order_traversal(node, sys.stdout.write)
assert_equal(out.getvalue().strip(), '52138')
pre_order_traversal(node, self.results.add_result)
assert_equal(str(self.results), "[5, 2, 1, 3, 8]")
self.results.clear_results()
with captured_output() as (out, err):
post_order_traversal(node, sys.stdout.write)
assert_equal(out.getvalue().strip(), '13285')
post_order_traversal(node, self.results.add_result)
assert_equal(str(self.results), "[1, 3, 2, 8, 5]")
self.results.clear_results()
node = Node(1)
insert(node, 2)
@@ -29,17 +31,16 @@ class TestDfs(object):
insert(node, 4)
insert(node, 5)
with captured_output() as (out, err):
in_order_traversal(node, sys.stdout.write)
assert_equal(out.getvalue().strip(), '12345')
in_order_traversal(node, self.results.add_result)
assert_equal(str(self.results), "[1, 2, 3, 4, 5]")
self.results.clear_results()
with captured_output() as (out, err):
pre_order_traversal(node, sys.stdout.write)
assert_equal(out.getvalue().strip(), '12345')
pre_order_traversal(node, self.results.add_result)
assert_equal(str(self.results), "[1, 2, 3, 4, 5]")
self.results.clear_results()
with captured_output() as (out, err):
post_order_traversal(node, sys.stdout.write)
assert_equal(out.getvalue().strip(), '54321')
post_order_traversal(node, self.results.add_result)
assert_equal(str(self.results), "[5, 4, 3, 2, 1]")
print('Success: test_dfs')