nested-lookup/test_nested_loopkup.py
Russell Ballestrini b530c0a586 first commit, working with tests.
new file:   .gitignore
	new file:   README.rst
	new file:   __init__.py
	new file:   nested_lookup.py
	new file:   setup.py
	new file:   test_nested_loopkup.py
2015-11-06 23:30:53 -05:00

38 lines
1.3 KiB
Python

from unittest import TestCase
from nested_lookup import nested_lookup
class TestNestedLookup(TestCase):
def setUp(self):
self.subject_dict = {'a':1,'b':{'d':100},'c':{'d':200}}
def test_nested_lookup(self):
results = nested_lookup('d', self.subject_dict)
self.assertEqual(2, len(results))
self.assertIn(100, results)
self.assertIn(200, results)
self.assertSetEqual({100,200}, set(results))
def test_nested_lookup_wrapped_in_list(self):
results = nested_lookup('d', [{}, self.subject_dict, {}])
self.assertEqual(2, len(results))
self.assertIn(100, results)
self.assertIn(200, results)
self.assertSetEqual({100,200}, set(results))
def test_nested_lookup_wrapped_in_list_in_dict_in_list(self):
results = nested_lookup('d', [{}, {'H' : [self.subject_dict]} ])
self.assertEqual(2, len(results))
self.assertIn(100, results)
self.assertIn(200, results)
self.assertSetEqual({100,200}, set(results))
def test_nested_lookup_wrapped_in_list_in_list(self):
results = nested_lookup('d', [ {}, [self.subject_dict, {}] ])
self.assertEqual(2, len(results))
self.assertIn(100, results)
self.assertIn(200, results)
self.assertSetEqual({100,200}, set(results))