def test_task_is_dirty_m2m(self): user = self.create_user() task = Task(description='foobar', user=user) self.assertTrue(task._is_dirty()) task.save() self.assertFalse(task._is_dirty()) task.tags.add(Tag.objects.create(tag='foobar')) self.assertItemsEqual(task._get_dirty_fields().keys(), ['tags']) self.assertTrue(task._is_dirty())
def test_task_is_dirty_foreign_key(self): user = self.create_user() task = Task(description='foobar', user=user) self.assertTrue(task._is_dirty()) task.save() self.assertFalse(task._is_dirty()) task.priority = Priority.objects.get(weight=1) self.assertItemsEqual(task._get_dirty_fields().keys(), ['priority']) self.assertTrue(task._is_dirty())
def test_task_is_dirty(self): user = self.create_user() task = Task(description='foobar', user=user) self.assertItemsEqual(task._get_dirty_fields().keys(), ['user', 'description']) self.assertTrue(task._is_dirty()) task.save() self.assertFalse(task._is_dirty()) self.assertItemsEqual(task._get_dirty_fields().keys(), []) task.description = 'foobar2' self.assertItemsEqual(task._get_dirty_fields().keys(), ['description']) self.assertTrue(task._is_dirty())