summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archaeological_context_records/tests.py12
-rw-r--r--archaeological_finds/models.py4
-rw-r--r--archaeological_finds/tests.py15
-rw-r--r--archaeological_operations/tests.py2
4 files changed, 16 insertions, 17 deletions
diff --git a/archaeological_context_records/tests.py b/archaeological_context_records/tests.py
index 27ba0ab71..9b8d4f000 100644
--- a/archaeological_context_records/tests.py
+++ b/archaeological_context_records/tests.py
@@ -90,14 +90,14 @@ class ImportContextRecordTest(ImportOperationTest):
class ContextRecordInit(OperationInitTest):
test_operations = False
- def create_context_record(self, user=None, data={}):
+ def create_context_record(self, user=None, data={}, force=False):
if not getattr(self, 'context_records', None):
self.context_records = []
default = {'label': "Context record"}
- if not data.get('operation'):
- data['operation'] = self.get_default_operation()
- if not data.get('parcel'):
+ if force or not data.get('operation'):
+ data['operation'] = self.get_default_operation(force=force)
+ if not data.get('parcel') or not data['parcel'].pk:
data['parcel'] = self.get_default_parcel()
if not data.get('history_modifier'):
data['history_modifier'] = self.get_default_user()
@@ -107,8 +107,8 @@ class ContextRecordInit(OperationInitTest):
**default))
return self.context_records
- def get_default_context_record(self):
- return self.create_context_record()[0]
+ def get_default_context_record(self, force=False):
+ return self.create_context_record(force=force)[0]
def tearDown(self):
if hasattr(self, 'context_records'):
diff --git a/archaeological_finds/models.py b/archaeological_finds/models.py
index 603e046ee..5811ded6e 100644
--- a/archaeological_finds/models.py
+++ b/archaeological_finds/models.py
@@ -450,8 +450,8 @@ class Find(BaseHistorizedItem, ImageModel, OwnPerms, ShortMenuItem):
@property
def administrative_index(self):
bf = self.get_first_base_find()
- if not bf:
- return
+ if not bf or not bf.context_record or not bf.context_record.operation:
+ return ""
return "{}-{}".format(
bf.context_record.operation.get_reference(),
self.index)
diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py
index 1b61d49ca..a0a9f0a8a 100644
--- a/archaeological_finds/tests.py
+++ b/archaeological_finds/tests.py
@@ -97,7 +97,7 @@ class ImportFindTest(ImportContextRecordTest):
class FindInit(ContextRecordInit):
test_context_records = False
- def create_finds(self, user=None, data_base={}, data={}):
+ def create_finds(self, user=None, data_base={}, data={}, force=False):
if not getattr(self, 'finds', None):
self.finds = []
if not getattr(self, 'base_finds', None):
@@ -106,10 +106,9 @@ class FindInit(ContextRecordInit):
default = {'label': "Base find"}
if not data_base.get('history_modifier'):
data_base['history_modifier'] = self.get_default_user()
- if not data_base.get('context_record') \
- or not data_base['context_record'].pk:
- data_base['context_record'] = self.get_default_context_record()
-
+ if force or not data_base.get('context_record'):
+ data_base['context_record'] = self.get_default_context_record(
+ force=force)
default.update(data_base)
base_find = models.BaseFind.objects.create(**default)
self.base_finds.append(base_find)
@@ -156,7 +155,7 @@ class FindTest(FindInit, TestCase):
model = models.Find
def setUp(self):
- self.create_finds()
+ self.create_finds(force=True)
def testExternalID(self):
find = self.finds[0]
@@ -188,8 +187,8 @@ class PackagingTest(FindInit, TestCase):
model = models.Find
def setUp(self):
- self.create_finds({"label": u"Find 1"})
- self.create_finds({"label": u"Find 2"})
+ self.create_finds({"label": u"Find 1"}, force=True)
+ self.create_finds({"label": u"Find 2"}, force=True)
self.basket = models.FindBasket.objects.create(
label="My basket", user=IshtarUser.objects.get(
pk=self.get_default_user().pk))
diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py
index a8d627dd5..dd294550e 100644
--- a/archaeological_operations/tests.py
+++ b/archaeological_operations/tests.py
@@ -494,7 +494,7 @@ class OperationInitTest(object):
self.operations.append(create_operation(user, orga))
return self.operations
- def get_default_operation(self):
+ def get_default_operation(self, force=False):
return self.create_operation()[0]
def tearDown(self):