コード例 #1
0
ファイル: tests.py プロジェクト: etienned/django-reversion
 def testDontSaveAutoInitialIgnoreDuplicatesOnAdd(self):
     with reversion.create_revision():
         reversion.set_ignore_duplicates(True)
         reversion.set_auto_initial(True, [ReversionTestModel1])
         self.test13.name = "model1 instance3 version2"
         self.test13.save()
     # Test that no revision at all is saved because it's a new object
     # and ignore duplicates is activated
     self.assertEqual(reversion.get_for_object(self.test13).count(), 0)
コード例 #2
0
ファイル: tests.py プロジェクト: etienned/django-reversion
 def testDontSaveAutoInitialOnAdd(self):
     with reversion.create_revision():
         self.assertFalse(reversion.get_auto_initial())
         reversion.set_auto_initial(True, [ReversionTestModel1])
         self.assertTrue(reversion.get_auto_initial())
         self.test13.name = "model1 instance3 version2"
         self.test13.save()
     # Test that no initial is saved because it's a new object
     self.assertEqual(reversion.get_for_object(self.test13).count(), 1)
コード例 #3
0
ファイル: tests.py プロジェクト: etienned/django-reversion
 def testCanSaveAutoInitialOnChange(self):
     self.assertEqual(reversion.get_for_object(self.test11).count(), 0)
     with reversion.create_revision():
         reversion.set_auto_initial(True, [ReversionTestModel1, ReversionTestModel2])
         self.test11.name = "model1 instance1 version2"
         self.test11.save()
         self.test12.save()
         self.test21.save()
         self.test22.save()
     # Test that an initial is save because there's a data change and no previous revision
     self.assertEqual(reversion.get_for_object(self.test11).count(), 2)
コード例 #4
0
ファイル: tests.py プロジェクト: etienned/django-reversion
 def testDontSaveAutoInitialOnDelete(self):
     self.assertEqual(Version.objects.count(), 0)
     with reversion.create_revision():
         self.test11.save()
         self.test12.save()
         self.test21.save()
         self.test22.save()
     self.assertEqual(reversion.get_for_object(self.test11).count(), 1)
     with reversion.create_revision():
         reversion.set_auto_initial(True, [ReversionTestModel1])
         self.test11.delete()
     # Test that no initial is saved on delete
     versions = reversion.get_deleted(ReversionTestModel1)
     self.assertEqual(len(versions), 1)
     self.assertEqual(Version.objects.filter(type=VERSION_ADD).count(), 0)
     self.assertEqual(Version.objects.filter(type=VERSION_CHANGE).count(), 4)
     self.assertEqual(Version.objects.filter(type=VERSION_DELETE).count(), 1)
コード例 #5
0
ファイル: tests.py プロジェクト: etienned/django-reversion
 def testDontSaveAutoInitialIgnoreDuplicatesOnChange(self):
     self.assertEqual(reversion.get_for_object(self.test11).count(), 0)
     with reversion.create_revision():
         reversion.set_ignore_duplicates(True)
         reversion.set_auto_initial(True, [ReversionTestModel1, ReversionTestModel2])
         self.test11.save()
         self.test12.save()
         self.test21.save()
         self.test22.save()
     # Test that no revision at all is saved because there's no data change
     # and ignore duplicates is activated
     self.assertEqual(reversion.get_for_object(self.test11).count(), 0)
     with reversion.create_revision():
         reversion.set_ignore_duplicates(True)
         reversion.set_auto_initial(True, [ReversionTestModel1])
         self.test11.name = "model1 instance1 version3"
         self.test11.save()
     # Test that initial and normal revision are saved because there's data change
     self.assertEqual(reversion.get_for_object(self.test11).count(), 2)
コード例 #6
0
ファイル: tests.py プロジェクト: etienned/django-reversion
 def testDontSaveAutoInitialOnChange(self):
     self.assertEqual(reversion.get_for_object(self.test11).count(), 0)
     with reversion.create_revision():
         self.assertFalse(reversion.get_auto_initial())
         reversion.set_auto_initial(True, [ReversionTestModel1, ReversionTestModel2])
         self.assertTrue(reversion.get_auto_initial())
         self.test11.save()
         self.test12.save()
         self.test21.save()
         self.test22.save()
     # Test that no initial is saved because there's no data change
     self.assertEqual(reversion.get_for_object(self.test11).count(), 1)
     with reversion.create_revision():
         self.assertFalse(reversion.get_auto_initial())
         reversion.set_auto_initial(True, [ReversionTestModel1])
         self.assertTrue(reversion.get_auto_initial())
         self.test11.name = "model1 instance1 version3"
         self.test11.save()
     # Test that no initial is saved because there's a previous revision
     self.assertEqual(reversion.get_for_object(self.test11).count(), 2)
コード例 #7
0
ファイル: tests.py プロジェクト: etienned/django-reversion
 def testCanSaveAutoInitialOnDelete(self):
     self.assertEqual(Version.objects.count(), 0)
     with reversion.create_revision():
         reversion.set_auto_initial(True, [ReversionTestModel1])
         self.test11.delete()
     # Test that an initial is saved on delete
     versions = reversion.get_deleted(ReversionTestModel1)
     self.assertEqual(len(versions), 1)
     self.assertEqual(Version.objects.filter(type=VERSION_ADD).count(), 1)
     self.assertEqual(Version.objects.filter(type=VERSION_CHANGE).count(), 0)
     self.assertEqual(Version.objects.filter(type=VERSION_DELETE).count(), 1)
     self.assertEqual(reversion.get_for_object(self.test12).count(), 0)
     with reversion.create_revision():
         reversion.set_auto_initial(True, [ReversionTestModel1])
         self.test12.name = "model1 instance2 version2"
         self.test12.delete()
     # Test that an initial is saved on delete
     versions = reversion.get_deleted(ReversionTestModel1)
     self.assertEqual(len(versions), 2)
     self.assertEqual(Version.objects.filter(type=VERSION_ADD).count(), 2)
     self.assertEqual(Version.objects.filter(type=VERSION_CHANGE).count(), 0)
     self.assertEqual(Version.objects.filter(type=VERSION_DELETE).count(), 2)