'Ensure save only sets / unsets changed fields.'

def test_save_only_changed_fields(self):

    class User(self.Person, ):
        active = BooleanField(default=True)
    User.drop_collection()
    user = User(name='Test    User', age=30, active=True)
    user.save()
    user.reload()
    same_person = self.Person.objects.get()
    same_person.active = False
    user.age = 21
    user.save()
    same_person.name = 'User'
    same_person.save()
    person = self.Person.objects.get()
    self.assertEqual(person.name, 'User')
    self.assertEqual(person.age, 21)
    self.assertEqual(person.active, False)
