summaryrefslogtreecommitdiff
path: root/archaeological_finds/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-11-28 18:51:28 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-11-28 18:53:28 +0100
commit13531adff386cc09c7f41c02ba7c116575cb6ee1 (patch)
tree51067bbe4ac2bb44a139c2bc813d1442d2db4582 /archaeological_finds/tests.py
parent1d26a7a62d150d19e659e66515fcda5a40c6c68a (diff)
downloadIshtar-13531adff386cc09c7f41c02ba7c116575cb6ee1.tar.bz2
Ishtar-13531adff386cc09c7f41c02ba7c116575cb6ee1.zip
Treatments: better management of merge - tests
Diffstat (limited to 'archaeological_finds/tests.py')
-rw-r--r--archaeological_finds/tests.py67
1 files changed, 64 insertions, 3 deletions
diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py
index b5ec5de83..8d1ffe91d 100644
--- a/archaeological_finds/tests.py
+++ b/archaeological_finds/tests.py
@@ -808,7 +808,7 @@ class FindQATest(FindInit, TestCase):
base_desc_1 + u"\n" + extra_desc)
-class PackagingTest(FindInit, TestCase):
+class TreatmentTest(FindInit, TestCase):
fixtures = FIND_FIXTURES
model = models.Find
@@ -875,13 +875,40 @@ class PackagingTest(FindInit, TestCase):
item, self.finds,
msg="Other basket have not been upgraded after packaging")
- def test_delete(self):
- # manage treatment deletion
+ def test_simple_delete(self):
+ treatment_type = models.TreatmentType.objects.get(txt_idx='packaging')
+ treatment_type.create_new_find = False
+ treatment_type.save()
+
+ nb_find = models.Find.objects.count()
+
+ treatment = models.Treatment()
+
+ initial_find = self.finds[0]
+ treatment.save(user=self.get_default_user(), items=self.basket,
+ treatment_type_list=[treatment_type])
+ treatment.treatment_types.add(treatment_type)
+
+ self.assertEqual(nb_find, models.Find.objects.count())
+
+ treatment.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)
+
+ def test_upstream_find_delete(self):
treatment_type = models.TreatmentType.objects.get(txt_idx='packaging')
# make packaging a treatment with a new version of the find created
treatment_type.create_new_find = True
treatment_type.save()
+ nb_find = models.Find.objects.count()
+
treatment = models.Treatment()
initial_find = self.finds[0]
@@ -889,6 +916,10 @@ class PackagingTest(FindInit, TestCase):
treatment_type_list=[treatment_type])
treatment.treatment_types.add(treatment_type)
+ nb_b = self.basket.items.count()
+ self.assertEqual(
+ nb_find + nb_b, models.Find.objects.count())
+
resulting_find = models.Find.objects.get(
upstream_treatment__upstream=initial_find,
base_finds__pk=initial_find.base_finds.all()[0].pk
@@ -902,3 +933,33 @@ class PackagingTest(FindInit, TestCase):
self.assertEqual(q.count(), 1)
initial_find = q.all()[0]
self.assertEqual(initial_find.upstream_treatment, None)
+
+ def test_treatment_delete(self):
+ treatment_type = models.TreatmentType.objects.get(txt_idx='packaging')
+ treatment_type.create_new_find = True
+ treatment_type.save()
+
+ nb_find = models.Find.objects.count()
+
+ treatment = models.Treatment()
+
+ initial_find = self.finds[0]
+ treatment.save(user=self.get_default_user(), items=self.basket,
+ treatment_type_list=[treatment_type])
+ treatment.treatment_types.add(treatment_type)
+
+ nb_b = self.basket.items.count()
+ self.assertEqual(
+ nb_find + nb_b, models.Find.objects.count())
+
+ treatment.delete()
+
+ self.assertEqual(nb_find, models.Find.objects.count())
+
+ 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)