Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import unittest
- import lazy_set
- class LazySetTest(unittest.TestCase):
- def setUp(self):
- self.lazy_set = lazy_set.lazy_set(xrange(1, 4))
- self.starting_value = range(1, 4)
- def testCreation(self):
- self.assertEqual(
- sorted(self.lazy_set),
- self.starting_value
- )
- def testUpdate(self):
- self.lazy_set.update(2* x for x in range(4, 10))
- self.assertEqual(
- sorted(self.lazy_set),
- [1, 2, 3, 8, 10, 12, 14, 16, 18]
- )
- def testAdd(self):
- self.lazy_set.add(5)
- self.assertEqual(
- sorted(self.lazy_set),
- [1, 2, 3, 5]
- )
- def testUniqueness(self):
- self.lazy_set.update(xrange(5))
- self.lazy_set.update(xrange(3, 8))
- self.assertEqual(
- sorted(self.lazy_set),
- range(8)
- )
- def testSelfUpdateWIter(self):
- self.lazy_set.update(iter(self.lazy_set))
- self.assertEqual(
- sorted(self.lazy_set),
- self.starting_value
- )
- def testSelfUpdateWOIter(self):
- self.lazy_set.update(self.lazy_set)
- self.assertEqual(
- sorted(self.lazy_set),
- self.starting_value
- )
- def testSelfUpdateNotLats(self):
- self.lazy_set.update(iter(self.lazy_set))
- self.lazy_set.update(xrange(5, 8))
- self.assertEqual(
- sorted(self.lazy_set),
- range(1, 4) + range(5, 8)
- )
- if __name__ == '__main__':
- unittest.main()
Add Comment
Please, Sign In to add comment