summaryrefslogtreecommitdiff
path: root/archaeological_finds/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-08-29 15:52:53 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-08-29 15:52:53 +0200
commit45c062ade6edecce68e479b09117d8d75dde18a0 (patch)
treedc744f5a54d36f7d43b13e21270a323b1d764069 /archaeological_finds/tests.py
parente7e161c2e610b442b4d72d9d749687ff87b993f9 (diff)
downloadIshtar-45c062ade6edecce68e479b09117d8d75dde18a0.tar.bz2
Ishtar-45c062ade6edecce68e479b09117d8d75dde18a0.zip
Finds: delete associated treatment on find deletion (refs #3723)
Diffstat (limited to 'archaeological_finds/tests.py')
-rw-r--r--archaeological_finds/tests.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py
index f8f134c0a..933b5f292 100644
--- a/archaeological_finds/tests.py
+++ b/archaeological_finds/tests.py
@@ -599,3 +599,26 @@ class PackagingTest(FindInit, TestCase):
self.assertNotIn(
item, self.finds,
msg="Other basket have not been upgraded after packaging")
+
+ def test_delete(self):
+ # manage treatment deletion
+ treatment_type = models.TreatmentType.objects.get(txt_idx='packaging')
+ treatment = models.Treatment()
+
+ initial_find = self.finds[0]
+ treatment.save(user=self.get_default_user(), items=self.basket)
+ treatment.treatment_types.add(treatment_type)
+
+ resulting_find = models.Find.objects.get(
+ upstream_treatment__upstream=initial_find,
+ base_finds__pk=initial_find.base_finds.all()[0].pk
+ )
+ resulting_find.delete()
+
+ self.assertEqual(
+ models.Treatment.objects.filter(pk=treatment.pk).count(), 0)
+ q = models.Find.objects.filter(pk=initial_find.pk)
+ # initial find not deleted
+ self.assertEqual(q.count(), 1)
+ initial_find = q.all()[0]
+ self.assertEqual(initial_find.upstream_treatment, None)