def test_update(self): """ This maintains `dict`s functionality, only merging the top-level keys. """ d, e, = NestedDict(), NestedDict() d[1, 2, 3] = [1, 2] d[2, 'k'] = 16 e[1, 2, 4] = [3, 4] e[3] = 'hello' d.update(e) assert (d == {1: {2: {4: [3, 4]}}, 2: {'k': 16}, 3: 'hello'})
def test_update(self): x = NestedDict({"a": 1, "b": 2}) y = NestedDict({"c": 3, "d": 4}) x.update(y) self.assertEqual(len(x), 4) self.assertEqual(len(y), 2) self.assertEqual(x['a'], 1) self.assertEqual(x['b'], 2) self.assertEqual(x['c'], 3) self.assertEqual(x['d'], 4) x = NestedDict({"a": 1, "b": 2}) y = NestedDict({"c": 3, "d": 4}) x.update(y, w=10, x=11) self.assertEqual(len(x), 6) self.assertEqual(len(y), 2) self.assertEqual(x['a'], 1) self.assertEqual(x['b'], 2) self.assertEqual(x['c'], 3) self.assertEqual(x['d'], 4) self.assertEqual(x['w'], 10) self.assertEqual(x['x'], 11)