Example #1
0
 def test_modeldict(self):
     d = ModelDict(foo='bar', baz__ham='spam')
     self.assertIn('foo', d, 'should have key "foo"')
     self.assertNotIn('baz', d, 'should not have key "baz"')
     self.assertRaises(AttributeError, d.__getattr__, 'x')
     self.assertTrue(hasattr(d, 'foo'), 'should not have real attr "foo"')
     self.assertEqual(d.foo, 'bar')
     self.assertEqual(d.baz__ham, 'spam')
     self.assertIsInstance(d.baz, ModelDict, 'should lazy resolve sub dict')
Example #2
0
 def test_expand(self):
     md = ModelDict(on=False, monkey__name='Pato', monkey__banana=True)
     md.expand()
     self.assertEqual(md, {
         'on': False,
         'monkey': {
             'name': 'Pato',
             'banana': True
         }
     })
Example #3
0
 def test_nested(self):
     md = ModelDict()
     md._nested = {'x': 1}
     self.assertEqual(md.x, 1)