summaryrefslogtreecommitdiff
path: root/archaeological_finds/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-05-15 13:33:53 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-05-15 13:33:53 +0200
commitca5f4c71fc93662fe56aa7588bf5a21fa4033571 (patch)
tree53e764a95ef24c63341e3280acd48fd59e23c4f9 /archaeological_finds/tests.py
parent209a201cd920692b9d7f3f33b42cc56d3bb27a1f (diff)
parentb82aae46b7af06fa7dc8b52a68b91784cea0118f (diff)
downloadIshtar-ca5f4c71fc93662fe56aa7588bf5a21fa4033571.tar.bz2
Ishtar-ca5f4c71fc93662fe56aa7588bf5a21fa4033571.zip
Merge branch 'master' into develop
Diffstat (limited to 'archaeological_finds/tests.py')
-rw-r--r--archaeological_finds/tests.py62
1 files changed, 61 insertions, 1 deletions
diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py
index 432945ecb..10860c0f3 100644
--- a/archaeological_finds/tests.py
+++ b/archaeological_finds/tests.py
@@ -28,7 +28,7 @@ from django.test.client import Client
from ishtar_common.models import ImporterType, IshtarUser, ImporterColumn,\
FormaterType, ImportTarget
-from ishtar_common.models import Person
+from ishtar_common.models import Person, get_current_profile
from archaeological_context_records.models import Period, Dating
from archaeological_finds import models, views
from archaeological_warehouse.models import Warehouse, WarehouseType
@@ -317,6 +317,66 @@ class FindTest(FindInit, TestCase):
base_find.context_record.external_id,
base_find.label))
+ def testIndex(self):
+ profile = get_current_profile()
+ profile.find_index = u"O"
+ profile.save()
+
+ op1 = self.create_operation()[-1]
+ op2 = self.create_operation()[-1]
+ op1_cr1 = self.create_context_record(data={'label': "CR1",
+ 'operation': op1})[-1]
+ op1_cr2 = self.create_context_record(data={'label': "CR2",
+ 'operation': op1})[-1]
+ op2_cr1 = self.create_context_record(data={'label': "CR3",
+ 'operation': op2})[-1]
+ self.create_finds(data_base={'context_record': op1_cr1})
+ find_1 = self.finds[-1]
+ bf_1 = models.BaseFind.objects.get(pk=self.base_finds[-1].pk)
+ self.assertEqual(find_1.index, 1)
+ self.assertEqual(bf_1.index, 1)
+
+ # index is based on operations
+ self.create_finds(data_base={'context_record': op1_cr2})
+ find_2 = self.finds[-1]
+ bf_2 = models.BaseFind.objects.get(pk=self.base_finds[-1].pk)
+ self.assertEqual(find_2.index, 2)
+ self.assertEqual(bf_2.index, 2)
+
+ self.create_finds(data_base={'context_record': op2_cr1})
+ find_3 = self.finds[-1]
+ bf_3 = models.BaseFind.objects.get(pk=self.base_finds[-1].pk)
+ self.assertEqual(find_3.index, 1)
+ self.assertEqual(bf_3.index, 1)
+
+ profile = get_current_profile()
+ profile.find_index = u"CR"
+ profile.save()
+
+ op3 = self.create_operation()[-1]
+ op3_cr1 = self.create_context_record(data={'label': "CR1",
+ 'operation': op3})[-1]
+ op3_cr2 = self.create_context_record(data={'label': "CR2",
+ 'operation': op3})[-1]
+ self.create_finds(data_base={'context_record': op3_cr1})
+ find_1b = self.finds[-1]
+ bf_1b = models.BaseFind.objects.get(pk=self.base_finds[-1].pk)
+ self.assertEqual(find_1b.index, 1)
+ self.assertEqual(bf_1b.index, 1)
+
+ # index now based on context records
+ self.create_finds(data_base={'context_record': op3_cr2})
+ find_2b = self.finds[-1]
+ bf_2b = models.BaseFind.objects.get(pk=self.base_finds[-1].pk)
+ self.assertEqual(find_2b.index, 1)
+ self.assertEqual(bf_2b.index, 1)
+
+ self.create_finds(data_base={'context_record': op3_cr2})
+ find_3b = self.finds[-1]
+ bf_3b = models.BaseFind.objects.get(pk=self.base_finds[-1].pk)
+ self.assertEqual(find_3b.index, 2)
+ self.assertEqual(bf_3b.index, 2)
+
def testShowFind(self):
find = self.finds[0]
response = self.client.get(reverse('display-find', args=[find.pk]))