summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAlex Gaynor <alex.gaynor@gmail.com>2013-08-18 09:41:43 -0700
committerAlex Gaynor <alex.gaynor@gmail.com>2013-08-18 09:41:43 -0700
commitaa01c99f5587b36c354e80c682ad52e1a3b41455 (patch)
treed782f4b2c338acc51404190b0d6b733ead72f488 /tests
parentc2907a6e3d96315027f7313885f3d0212dd19cbe (diff)
parent7a698c05b56d7d5e267241dc71c16c403efd2965 (diff)
Merge pull request #1479 from nickbruun/ticket_20924
Proxy __len__ and __contains__ for LazyObject
Diffstat (limited to 'tests')
-rw-r--r--tests/utils_tests/test_simplelazyobject.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/utils_tests/test_simplelazyobject.py b/tests/utils_tests/test_simplelazyobject.py
index 7b681d9290..f16b5e4da1 100644
--- a/tests/utils_tests/test_simplelazyobject.py
+++ b/tests/utils_tests/test_simplelazyobject.py
@@ -136,6 +136,9 @@ class TestUtilsSimpleLazyObject(TestCase):
self.assertEqual(lazydict['one'], 1)
lazydict['one'] = -1
self.assertEqual(lazydict['one'], -1)
+ self.assertTrue('one' in lazydict)
+ self.assertFalse('two' in lazydict)
+ self.assertEqual(len(lazydict), 1)
del lazydict['one']
with self.assertRaises(KeyError):
lazydict['one']
@@ -183,3 +186,13 @@ class TestUtilsSimpleLazyObject(TestCase):
# This would fail with "TypeError: expected string or Unicode object, NoneType found".
pickled = cPickle.dumps(x)
+
+ def test_list_set(self):
+ lazy_list = SimpleLazyObject(lambda: [1, 2, 3, 4, 5])
+ lazy_set = SimpleLazyObject(lambda: set([1, 2, 3, 4]))
+ self.assertTrue(1 in lazy_list)
+ self.assertTrue(1 in lazy_set)
+ self.assertFalse(6 in lazy_list)
+ self.assertFalse(6 in lazy_set)
+ self.assertEqual(len(lazy_list), 5)
+ self.assertEqual(len(lazy_set), 4)