Esempio n. 1
0
    def test_keys(self):
        d = LazyDict()
        self.assertEqual(set(d.keys()), set())
        d = LazyDict({'a': 1, 'b': 2})
        k = d.keys()
        self.assertTrue('a' in d)
        self.assertTrue('b' in d)
        self.assertEqual(set(k), {'a','b'})

        self.assertRaises(TypeError, d.keys, None)
Esempio n. 2
0
    def test_lazy_clear(self):
        d = LazyDict({1:1, 2:2, 3:3})
        d.set_stub(4, lambda x:x)
        d.clear()
        self.assertEqual(d, {})
        self.assertEqual(set(d.keys()), set())
        self.assertEqual(set(d.values()), set())

        self.assertRaises(TypeError, d.clear, None)
Esempio n. 3
0
 def test_lazy_keys(self):
     def resolver(id):
         p = {'b': 2, 'c': 3}
         return p[id]
     d = LazyDict({'a': 1})
     d.set_stub('b', resolver)
     d.set_stub('c', resolver)
     d['d'] = 4
     k = d.keys()
     self.assertTrue('a' in d)
     self.assertTrue('b' in d)
     self.assertTrue('c' in d)
     self.assertTrue('d' in d)
     self.assertEqual(set(k), {'a','b','c','d'})