summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2021-02-12 11:36:21 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2021-02-28 12:15:24 +0100
commit3dfaed1174796e8f7310e8091e9a680df181685d (patch)
tree5f4779b7e1b91b0f86376591dbe087bf38306021 /archaeological_warehouse/tests.py
parent93355e90c5e5fce0523a1b3ee2387876e65f57a1 (diff)
downloadIshtar-3dfaed1174796e8f7310e8091e9a680df181685d.tar.bz2
Ishtar-3dfaed1174796e8f7310e8091e9a680df181685d.zip
Container autocomplete: improve search
Diffstat (limited to 'archaeological_warehouse/tests.py')
-rw-r--r--archaeological_warehouse/tests.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/archaeological_warehouse/tests.py b/archaeological_warehouse/tests.py
index 93acafa9f..873941d8e 100644
--- a/archaeological_warehouse/tests.py
+++ b/archaeological_warehouse/tests.py
@@ -513,6 +513,49 @@ class ContainerTest(FindInit, TestCase):
warehouse_type=models.WarehouseType.objects.all()[0]
)
+ def test_container_search(self):
+ ct = models.ContainerType.objects.all()[0]
+ ct2 = models.ContainerType.objects.all()[0]
+ container_1 = models.Container.objects.create(
+ reference="Test", responsible=self.main_warehouse,
+ location=self.main_warehouse,
+ container_type=ct
+ )
+ container_2 = models.Container.objects.create(
+ reference="35000", responsible=self.main_warehouse,
+ parent=container_1,
+ location=self.main_warehouse,
+ container_type=ct2
+ )
+ container_2.index = 42000
+ container_2.save()
+ username, password, user = create_user()
+ user.user_permissions.add(Permission.objects.get(
+ codename='view_warehouse'))
+ client = Client()
+ client.login(username=username, password=password)
+ url = "/autocomplete-container/{}/".format(self.main_warehouse.pk)
+ response = client.get(url, {"term": "Test"})
+ self.assertEqual(response.status_code, 200)
+ c = json.loads(response.content.decode())
+ self.assertEqual(len(c), 2)
+ response = client.get(url, {"term": "Test 35000"})
+ self.assertEqual(response.status_code, 200)
+ c = json.loads(response.content.decode())
+ self.assertEqual(len(c), 1)
+ response = client.get(url, {"term": "42000"})
+ self.assertEqual(response.status_code, 200)
+ c = json.loads(response.content.decode())
+ self.assertEqual(len(c), 1)
+ response = client.get(
+ url,
+ {"term": "{} Test {} Test 35000".format(ct.label, ct2.label)})
+ self.assertEqual(response.status_code, 200)
+ c = json.loads(response.content.decode())
+ self.assertEqual(len(c), 1)
+
+
+
def test_form_creation(self):
data = {
'reference': 'hop-ref',