X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/e7927df2744d46e176c7114bf63f1bd8f5746168..ec5b493bff5efa683aadf5f78aa891eff3550156:/apps/dvcs/tests.py?ds=sidebyside diff --git a/apps/dvcs/tests.py b/apps/dvcs/tests.py deleted file mode 100644 index 0c712957..00000000 --- a/apps/dvcs/tests.py +++ /dev/null @@ -1,164 +0,0 @@ -from django.test import TestCase -from dvcs.models import Change, Document -from django.contrib.auth.models import User - -class DocumentModelTests(TestCase): - - def setUp(self): - self.user = User.objects.create_user("tester", "tester@localhost.local") - - def assertTextEqual(self, given, expected): - return self.assertEqual(given, expected, - "Expected '''%s'''\n differs from text: '''%s'''" % (expected, given) - ) - - def test_empty_file(self): - doc = Document.objects.create(name=u"Sample Document", creator=self.user) - self.assert_(doc.head is not None) - self.assertEqual(doc.materialize(), u"") - - def test_single_commit(self): - doc = Document.objects.create(name=u"Sample Document", creator=self.user) - doc.commit(text=u"Ala ma kota", description="Commit #1", author=self.user) - self.assert_(doc.head is not None) - self.assertEqual(doc.change_set.count(), 2) - self.assertEqual(doc.materialize(), u"Ala ma kota") - - def test_chained_commits(self): - doc = Document.objects.create(name=u"Sample Document", creator=self.user) - c1 = doc.commit(description="Commit #1", text=u""" - Line #1 - Line #2 is cool - """, author=self.user) - c2 = doc.commit(description="Commit #2", text=u""" - Line #1 - Line #2 is hot - """, author=self.user) - c3 = doc.commit(description="Commit #3", text=u""" - Line #1 - ... is hot - Line #3 ate Line #2 - """, author=self.user) - self.assert_(doc.head is not None) - self.assertEqual(doc.change_set.count(), 4) - - self.assertEqual(doc.materialize(), u""" - Line #1 - ... is hot - Line #3 ate Line #2 - """) - self.assertEqual(doc.materialize(version=c3), u""" - Line #1 - ... is hot - Line #3 ate Line #2 - """) - self.assertEqual(doc.materialize(version=c2), u""" - Line #1 - Line #2 is hot - """) - self.assertEqual(doc.materialize(version=c1), """ - Line #1 - Line #2 is cool - """) - - - def test_parallel_commit_noconflict(self): - doc = Document.objects.create(name=u"Sample Document", creator=self.user) - self.assert_(doc.head is not None) - base = doc.head - base = doc.commit(description="Commit #1", text=u""" - Line #1 - Line #2 -""", author=self.user) - - c1 = doc.commit(description="Commit #2", text=u""" - Line #1 is hot - Line #2 -""", parent=base, author=self.user) - self.assertTextEqual(c1.materialize(), u""" - Line #1 is hot - Line #2 -""") - c2 = doc.commit(description="Commit #3", text=u""" - Line #1 - Line #2 - Line #3 -""", parent=base, author=self.user) - self.assertEqual(doc.change_set.count(), 5) - self.assertTextEqual(doc.materialize(), u""" - Line #1 is hot - Line #2 - Line #3 -""") - - def test_parallel_commit_conflict(self): - doc = Document.objects.create(name=u"Sample Document", creator=self.user) - self.assert_(doc.head is not None) - base = doc.head - base = doc.commit(description="Commit #1", text=u""" -Line #1 -Line #2 -Line #3 -""", author=self.user) - - c1 = doc.commit(description="Commit #2", text=u""" -Line #1 -Line #2 is hot -Line #3 -""", parent=base, author=self.user) - c2 = doc.commit(description="Commit #3", text=u""" -Line #1 -Line #2 is cool -Line #3 -""", parent=base, author=self.user) - self.assertEqual(doc.change_set.count(), 5) - self.assertTextEqual(doc.materialize(), u""" -Line #1 -<<<<<<< -Line #2 is hot -======= -Line #2 is cool ->>>>>>> -Line #3 -""") - - def test_multiply_parallel_commits(self): - doc = Document.objects.create(name=u"Sample Document", creator=self.user) - self.assert_(doc.head is not None) - c1 = doc.commit(description="Commit A1", text=u""" -Line #1 - -Line #2 - -Line #3 -""", author=self.user) - c2 = doc.commit(description="Commit A2", text=u""" -Line #1 * - -Line #2 - -Line #3 -""", author=self.user) - c3 = doc.commit(description="Commit B1", text=u""" -Line #1 - -Line #2 ** - -Line #3 -""", parent=c1, author=self.user) - c4 = doc.commit(description="Commit C1", text=u""" -Line #1 * - -Line #2 - -Line #3 *** -""", parent=c2, author=self.user) - self.assertEqual(doc.change_set.count(), 7) - self.assertTextEqual(doc.materialize(), u""" -Line #1 * - -Line #2 ** - -Line #3 *** -""") -