def test_update_from_null(self): c = MapUpdateClause('s', {3: 0, 5: 6}) c._analyze() c.set_context_id(0) self.assertEqual(c._updates, [3, 5]) self.assertEqual(c.get_context_size(), 4) self.assertEqual(str(c), '"s"[%(0)s] = %(1)s, "s"[%(2)s] = %(3)s') ctx = {} c.update_context(ctx) self.assertEqual(ctx, {'0': 3, "1": 0, '2': 5, '3': 6})
def test_update(self): c = MapUpdateClause("s", {3: 0, 5: 6}, previous={5: 0, 3: 4}) c._analyze() c.set_context_id(0) self.assertEqual(c._updates, [3, 5]) self.assertEqual(c.get_context_size(), 4) self.assertEqual(str(c), '"s"[%(0)s] = %(1)s, "s"[%(2)s] = %(3)s') ctx = {} c.update_context(ctx) self.assertEqual(ctx, {"0": 3, "1": 0, "2": 5, "3": 6})
def test_nulled_columns_arent_included(self): c = MapUpdateClause('s', {3: 0}, {1: 2, 3: 4}) c._analyze() c.set_context_id(0) self.assertNotIn(1, c._updates)