def test_setdefault(self): d = {'a': 1, 'b': 2, 'c': 3} b = BaseDict(d) v = b.setdefault('c', 4) self.assertEqual(v, 3) v = b.setdefault('d', 4) self.assertEqual(v, 4) self.assertEqual(d, {'a': 1, 'b': 2, 'c': 3, 'd': 4}) self.assertTrue(b == d)
def test_setdefault(self): b = BaseDict() b['a'] = 1 b['b'] = 2 b['c'] = 3 v = b.setdefault('c', 4) self.assertEqual(v, 3) v = b.setdefault('d', 4) self.assertEqual(v, 4) self.assertEqual(b, b.dict())
def test_setdefault_with_pointer(self): d = {'a': 1, 'b': 2, 'c': 3} b = BaseDict(d) v = b.setdefault('c', 4) self.assertEqual(v, 3) v = b.setdefault('d', 4) self.assertEqual(v, 4) self.assertEqual(d, {'a': 1, 'b': 2, 'c': 3, 'd': 4}) d['d'] = 4 self.assertTrue(b == d) self.assertEqual(b, b.dict())