summaryrefslogtreecommitdiff
path: root/archaeological_files
diff options
context:
space:
mode:
authorCefin <kevon@tuta.io>2022-02-14 12:23:07 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2022-12-12 12:21:00 +0100
commite3129a3d848067d8ee684b4f669951b5948b4714 (patch)
treed9a6c49e06ce255581592182950129d59eead857 /archaeological_files
parent16559cbacf794bb37f6da2fa3050d52ae2fbb476 (diff)
downloadIshtar-e3129a3d848067d8ee684b4f669951b5948b4714.tar.bz2
Ishtar-e3129a3d848067d8ee684b4f669951b5948b4714.zip
File - Parcels - Modify: writing tests #5227
Diffstat (limited to 'archaeological_files')
-rw-r--r--archaeological_files/tests.py84
1 files changed, 83 insertions, 1 deletions
diff --git a/archaeological_files/tests.py b/archaeological_files/tests.py
index 947f328a8..2f8f1e158 100644
--- a/archaeological_files/tests.py
+++ b/archaeological_files/tests.py
@@ -34,7 +34,7 @@ from ishtar_common.tests import (
)
from ishtar_common.models import Town, IshtarSiteProfile
-from archaeological_files import models
+from archaeological_files import models, views
from archaeological_operations.models import (
Parcel,
ParcelOwner,
@@ -504,6 +504,88 @@ class FileOperationTest(TestCase, OperationInitTest, FileInit):
self.operations = self.create_operation(self.user, self.orgas[0])
self.operation = self.operations[0]
+ def test_file_parcel_modify(self):
+ username, password, user = create_superuser()
+
+ c = Client()
+ c.login(username=username, password=password)
+
+ town_1 = Town.objects.create(name="Minas Morgul", numero_insee="10920")
+ town_2 = Town.objects.create(name="Minas Tirith", numero_insee="10901")
+ parcel_1 = Parcel.objects.create(
+ town=town_1, year=2640, section="M", parcel_number="1", public_domain=False, associated_file=self.item
+ )
+ parcel_2 = Parcel.objects.create(
+ town=town_2, year=2620, section="M", parcel_number="2", public_domain=True, associated_file=self.item
+ )
+
+ response = c.get(reverse("file-parcels-modify", kwargs={"pk": self.item.pk}))
+
+ self.assertEqual(response.status_code, 200)
+ self.assertContains(response, town_1.name)
+ self.assertContains(response, town_2.name)
+ self.assertContains(response, parcel_1.year)
+ self.assertContains(response, parcel_2.year)
+ self.assertContains(response, parcel_1.section)
+ self.assertContains(response, parcel_2.section)
+ self.assertContains(response, parcel_1.parcel_number)
+ self.assertContains(response, parcel_2.parcel_number)
+
+ data = {}
+ for idx in range(2 + views.PARCEL_FORMSET_EXTRA_FORM):
+ data.update({
+ f"form-{idx}-pk": "",
+ f"form-{idx}-year": "",
+ f"form-{idx}-section": "",
+ f"form-{idx}-parcel_number": "",
+ f"form-{idx}-town": town_1.pk,
+ f"form-{idx}-DELETE": '',
+ })
+ data.update({
+ "_town": town_2.pk,
+ "_parcel_selection": "2013:XD:10",
+ "form-0-pk": parcel_1.pk,
+ "form-0-year": 2021,
+ "form-0-section": "SCT1",
+ "form-0-parcel_number": "001",
+ "form-0-town": town_2.pk,
+ "form-0-DELETE": "on",
+ "form-1-pk": parcel_2.pk,
+ "form-1-year": 2021,
+ "form-1-section": "SCT2",
+ "form-1-parcel_number": "002",
+ "form-1-town": town_2.pk,
+ "form-2-year": 2011,
+ "form-2-section": "XXX",
+ "form-2-parcel_number": "003",
+ "form-2-town": town_2.pk,
+ })
+
+ post_response = c.post("/file-parcels-modify/" + str(self.item.pk) + "/", data)
+
+ self.assertEqual(post_response.status_code, 302)
+
+ response = c.get(reverse("file-parcels-modify", kwargs={"pk": self.item.pk}))
+
+ self.assertContains(response, town_2.name)
+ self.assertContains(response, 2021)
+ self.assertContains(response, "SCT2")
+ self.assertContains(response, "SCT1", count=0)
+ self.assertContains(response, "001", count=0)
+ self.assertContains(response, "002")
+ self.assertContains(response, "003")
+ self.assertContains(response, "XXX")
+ self.assertContains(response, 2013)
+ self.assertContains(response, "XD")
+ self.assertContains(response, "10")
+
+ parcels = Parcel.objects.all()
+ self.assertEqual(parcels.count(), 3)
+
+ deleted_parcel = Parcel.objects.filter(pk=parcel_1.pk)
+ self.assertEqual(deleted_parcel.count(), 0)
+
+
def testFileAssociation(self):
# parcel association
default_town = Town.objects.all()[0]