def test_change(self): c = DataContext() c.save() revisions = Revision.objects.get_for_object(c) self.assertEqual(revisions.count(), 1) latest_revision = Revision.objects.latest_for_object(c) self.assertFalse('old_value' in latest_revision.changes) self.assertEqual(latest_revision.changes, { 'json': {'new_value': {}}, 'name': {'new_value': None}, 'description': {'new_value': None} }) c.name = "New Name" c.save() revisions = Revision.objects.get_for_object(c) self.assertEqual(revisions.count(), 2) latest_revision = Revision.objects.latest_for_object(c) self.assertEqual(latest_revision.changes, { 'name': {'old_value': None, 'new_value': 'New Name'} })
def test_cull_for_object(self): c = DataContext(name="Test") c.save() Revision.objects.create_revision(c, fields=["name"]) for i in xrange(1, 100): c.name = "Test{0}".format(i) c.save() Revision.objects.create_revision(c, fields=["name"]) self.assertEqual(Revision.objects.get_for_object(c).count(), 100) # Cull down to the maximum size defined in the settings Revision.objects.cull_for_object(c) self.assertEqual(Revision.objects.get_for_object(c).count(), settings.HISTORY_MAX_SIZE) # Cull down to an arbitrary size Revision.objects.cull_for_object(c, max_size=20) self.assertEqual(Revision.objects.get_for_object(c).count(), 20)
def test_cull_for_object(self): c = DataContext(name='Test') c.save() Revision.objects.create_revision(c, fields=['name']) for i in xrange(1, 100): c.name = 'Test{0}'.format(i) c.save() Revision.objects.create_revision(c, fields=['name']) self.assertEqual(Revision.objects.get_for_object(c).count(), 100) # Cull down to the maximum size defined in the settings Revision.objects.cull_for_object(c) self.assertEqual(Revision.objects.get_for_object(c).count(), settings.HISTORY_MAX_SIZE) # Cull down to an arbitrary size Revision.objects.cull_for_object(c, max_size=20) self.assertEqual(Revision.objects.get_for_object(c).count(), 20)
def test_change(self): c = DataContext() c.save() revisions = Revision.objects.get_for_object(c) self.assertEqual(revisions.count(), 1) latest_revision = Revision.objects.latest_for_object(c) self.assertFalse("old_value" in latest_revision.changes) self.assertEqual( latest_revision.changes, {"json": {"new_value": {}}, "name": {"new_value": None}, "description": {"new_value": None}}, ) c.name = "New Name" c.save() revisions = Revision.objects.get_for_object(c) self.assertEqual(revisions.count(), 2) latest_revision = Revision.objects.latest_for_object(c) self.assertEqual(latest_revision.changes, {"name": {"old_value": None, "new_value": "New Name"}})