diff options
Diffstat (limited to 'archaeological_finds/tests.py')
-rw-r--r-- | archaeological_finds/tests.py | 62 |
1 files changed, 61 insertions, 1 deletions
diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py index 1268b4f03..cd6bada77 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 @@ -312,6 +312,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])) |