コード例 #1
0
    def test_dict(self):

        ad = AttributeDict()
        ad._id = 1
        self.assertEqual(ad['_id'], 1)
        self.assertEqual(ad._id, 1)
        self.assertEqual(getattr(ad, '_id'), 1)
コード例 #2
0
    def test_nested_dict_access_via_attributes(self):
        # Test nested attributes on create (on get in fact)
        d = AttributeDict(a=1, nested=dict(b=2, nested_2=dict(c=3)))
        self.assertEqual(d.a, 1)
        self.assertEqual(d.nested.b, 2)
        self.assertEqual(d.nested.nested_2.c, 3)
        self.assertEqual(d, {'a': 1, 'nested': {'b': 2, 'nested_2': {'c': 3}}})

        # Test nested attributes on set
        d_2 = AttributeDict()
        d_2.a = 1
        d_2.nested = dict(b=2)
        d_2.nested.nested_2 = dict(c=3)
        self.assertEqual(d_2.a, 1)
        self.assertEqual(d_2.nested.b, 2)
        self.assertEqual(d_2.nested.nested_2.c, 3)
        self.assertEqual(
            d_2, {'a': 1, 'nested': {'b': 2, 'nested_2': {'c': 3}}})