summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archaeological_operations/tests.py22
-rw-r--r--archaeological_operations/views.py6
2 files changed, 22 insertions, 6 deletions
diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py
index 8e3bb7e70..5dd66dc4a 100644
--- a/archaeological_operations/tests.py
+++ b/archaeological_operations/tests.py
@@ -1826,6 +1826,28 @@ class ParcelTest(ImportTest, TestCase):
parcels = models.Parcel.objects.all()
self.assertEqual(parcels.count(), 12)
+ def test_operation_parcel_duplicate(self):
+ c, user, operation, town_1, town_2 = self.init_operation_parcels_tests()
+ parcel_1 = self.init_one_parcel(operation, town_1)
+ data = self.init_data()
+
+ data.update({
+ "form-0-pk": parcel_1.pk,
+ "form-0-year": parcel_1.year,
+ "form-0-section": parcel_1.section,
+ "form-0-parcel_number": parcel_1.parcel_number,
+ "form-0-town": town_1.pk,
+ "form-1-year": parcel_1.year,
+ "form-1-section": parcel_1.section,
+ "form-1-parcel_number": parcel_1.parcel_number,
+ "form-1-town": town_1.pk,
+ })
+
+ post_response = c.post("/operation-parcels-modify/" + str(operation.pk) + "/", data)
+
+ parcels = models.Parcel.objects.all()
+ self.assertEqual(parcels.count(), 1)
+
def create_orga(user):
orga_type, created = OrganizationType.objects.get_or_create(txt_idx="operator")
diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py
index 5ebee7b43..6d34163d4 100644
--- a/archaeological_operations/views.py
+++ b/archaeological_operations/views.py
@@ -464,16 +464,12 @@ def operation_modify_parcels(request, pk):
section=p_section, parcel_number=p_parcel_number, town=p_town, operation=operation
)
nb = q.count()
- # parcels_who_cant_be_deleted = 0
if nb > 1: # if duplicates parcels, keep just one
while nb > 1:
for d in q:
d.delete()
nb -= 1
- elif nb == 1:
- # parcels_who_cant_be_deleted += 1
- pass
else:
added_parcel = models.Parcel.objects.create(
section = p_section,
@@ -484,8 +480,6 @@ def operation_modify_parcels(request, pk):
added_parcel.year = p_year
added_parcel.save()
operation.parcels.add(added_parcel)
- # if parcels_who_cant_be_deleted > 0:
- # raise ValidationError(str(parcels_who_cant_be_deleted) + " parcels could not be created because there already exists.")
return redirect(reverse("operation-parcels-modify", args=[pk]))
if formset.is_valid():