test_node.py 950 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import unittest
  2. from node import Node, Leaf
  3. class TestNode(unittest.TestCase):
  4. def setUp(self):
  5. self.l0 = Leaf('leaf 1')
  6. self.l1 = Leaf('leaf 2')
  7. self.node = Node('node', self.l0, self.l1)
  8. def tearDown(self):
  9. pass
  10. def test_getitem(self):
  11. assert self.node[0] == self.l0
  12. def test_setitem(self):
  13. self.node[0] = Leaf('leaf 3')
  14. assert self.node[0] != self.l0
  15. def test_iter(self):
  16. s = ''
  17. for leaf in self.node:
  18. s += leaf.title()
  19. assert s == 'leaf 1leaf 2'
  20. def test_len(self):
  21. assert len(self.node) == 2
  22. def test_title(self):
  23. assert self.node.title() == 'node'
  24. assert self.l0.title() == 'leaf 1'
  25. def test____str__(self):
  26. l1 = Leaf(1)
  27. self.assertEqual(str(l1), '1')
  28. l1 = -l1
  29. self.assertEqual(str(l1), '-1')
  30. l1 = -l1
  31. self.assertEqual(str(l1), '--1')