summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2021-11-09 11:08:30 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2021-11-09 11:13:14 +0100
commit78f9e8e7b5e3750ebfba0268d15c4b77a1de729a (patch)
treeb0d3b4ec1ff5b17bdebe26cb0338638c3e8add18 /archaeological_warehouse/tests.py
parentb1b75e2d654fa248397c08a36642d30d13294f6b (diff)
downloadIshtar-78f9e8e7b5e3750ebfba0268d15c4b77a1de729a.tar.bz2
Ishtar-78f9e8e7b5e3750ebfba0268d15c4b77a1de729a.zip
Container: prevent parent infinite loop
Diffstat (limited to 'archaeological_warehouse/tests.py')
-rw-r--r--archaeological_warehouse/tests.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/archaeological_warehouse/tests.py b/archaeological_warehouse/tests.py
index 347382e75..4e6ca9dd9 100644
--- a/archaeological_warehouse/tests.py
+++ b/archaeological_warehouse/tests.py
@@ -1142,6 +1142,24 @@ class ContainerTest(FindInit, TestCase):
"|".join(sorted([mat0.code, mat1.code, mat2.code])),
)
+ def test_prevent_parent_infinite_loop(self):
+ ct = models.ContainerType.objects.all()[0]
+ container_1 = models.Container.objects.create(
+ reference="Test 1", location=self.main_warehouse, container_type=ct
+ )
+ container_2 = models.Container.objects.create(
+ reference="Test 2", location=self.main_warehouse, container_type=ct,
+ parent=container_1
+ )
+ container_3 = models.Container.objects.create(
+ reference="Test 2", location=self.main_warehouse, container_type=ct,
+ parent=container_2
+ )
+ container_1.parent = container_3
+ container_1.save()
+ self.assertIsNone(models.Container.objects.get(pk=container_1.pk).parent)
+
+
def test_calculated_weight(self):
self.create_finds()
self.create_finds()