Example #1
0
 def test_set_container_factory(self):
     # No container factory.
     d = {}
     self.assertRaises(KeyError, api.set, d, 'foo.0', 'bar')
     # dict container factory
     d = {}
     def container_factory(parent_key, item_key):
         return {}
     api.set(d, 'foo.0.bar', 'fum', container_factory=container_factory)
     self.assertEqual(d, {'foo': {'0': {'bar': 'fum'}}})
     # list for ints container factory
     d = {}
     def container_factory(parent_key, item_key):
         if item_key.isdigit():
             return []
         return {}
     api.set(d, 'foo.0.bar', 'fum', container_factory=container_factory)
     self.assertEqual(d, {'foo': [{'bar': 'fum'}]})
Example #2
0
    def test_set_container_factory(self):
        # No container factory.
        d = {}
        self.assertRaises(KeyError, api.set, d, 'foo.0', 'bar')
        # dict container factory
        d = {}

        def container_factory(parent_key, item_key):
            return {}

        api.set(d, 'foo.0.bar', 'fum', container_factory=container_factory)
        self.assertEqual(d, {'foo': {'0': {'bar': 'fum'}}})
        # list for ints container factory
        d = {}

        def container_factory(parent_key, item_key):
            if item_key.isdigit():
                return []
            return {}

        api.set(d, 'foo.0.bar', 'fum', container_factory=container_factory)
        self.assertEqual(d, {'foo': [{'bar': 'fum'}]})
Example #3
0
    def test_set_container_factory(self):
        # No container factory.
        d = {}
        self.assertRaises(KeyError, api.set, d, "foo.0", "bar")
        # dict container factory
        d = {}

        def container_factory(parent_key, item_key):
            return {}

        api.set(d, "foo.0.bar", "fum", container_factory=container_factory)
        self.assertTrue(d == {"foo": {"0": {"bar": "fum"}}})
        # list for ints container factory
        d = {}

        def container_factory(parent_key, item_key):
            if item_key.isdigit():
                return []
            return {}

        api.set(d, "foo.0.bar", "fum", container_factory=container_factory)
        self.assertTrue(d == {"foo": [{"bar": "fum"}]})
Example #4
0
 def test_set(self):
     # Test top-level.
     d = {}
     api.set(d, 'foo', 'bar')
     self.assertTrue(d == {'foo': 'bar'})
     # Test nested.
     d = {'foo': {}}
     api.set(d, 'foo.bar', 'rab')
     self.assertTrue(d == {'foo': {'bar': 'rab'}})
     # Test traversal key error.
     d = {'foo': {}}
     api.set(d, 'oof.bar', 'rab', container_factory=container_factory)
     self.assertTrue(d == {'foo': {}, 'oof': {'bar': 'rab'}})
Example #5
0
 def test_set(self):
     # Test top-level
     l = [None]
     api.set(l, '0', 'foo')
     self.assertEquals(l, ['foo'])
     # Test nested.
     l = [[None]]
     api.set(l, '0.0', 'foo')
     self.assertEquals(l, [['foo']])
     # Test traversal key error.
     l = [[None]]
     api.set(l,'1.0','bar',container_factory=container_factory)
     self.assertEquals(l, [[None],['bar']])
Example #6
0
 def test_set(self):
     # Test top-level.
     d = {}
     api.set(d, 'foo', 'bar')
     self.assertEqual(d, {'foo': 'bar'})
     # Test nested.
     d = {'foo': {}}
     api.set(d, 'foo.bar', 'rab')
     self.assertEqual(d, {'foo': {'bar': 'rab'}})
     # Test traversal key error.
     d = {'foo': {}}
     api.set(d, 'oof.bar','rab', container_factory=container_factory)
     self.assertEqual(d, {'foo': {},'oof': {'bar':'rab'}})
Example #7
0
 def test_set(self):
     # Test top-level
     l = [None]
     api.set(l, '0', 'foo')
     self.assertEqual(l, ['foo'])
     # Test nested.
     l = [[None]]
     api.set(l, '0.0', 'foo')
     self.assertEqual(l, [['foo']])
     # Test traversal key error.
     l = [[None]]
     api.set(l, '1.0', 'bar', container_factory=container_factory)
     self.assertEqual(l, [[None], ['bar']])
Example #8
0
 def __setitem__(self, key, value):
     return api.set(self._o, key, api.unwrap(value))
Example #9
0
 def __setitem__(self, key, value):
     return api.set(self._o, key, api.unwrap(value))
Example #10
0
 def test_set_dotted(self):
     d = {}
     dd = api.dotted(d)
     api.set(dd, 'foo', 1)
     self.assertEqual(dd, {'foo': 1})
Example #11
0
 def test_set_dotted(self):
     d = {}
     dd = api.dotted(d)
     api.set(dd, 'foo', 1)
Example #12
0
 def test_set_dotted(self):
     d = {}
     dd = api.dotted(d)
     api.set(dd, 'foo', 1)
     self.assertEqual(dd, {'foo': 1})
Example #13
0
 def test_set_dotted(self):
     d = {}
     dd = api.dotted(d)
     api.set(dd, 'foo', 1)