summaryrefslogtreecommitdiff
path: root/archaeological_finds/tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_finds/tests.py')
-rw-r--r--archaeological_finds/tests.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py
index e274c757f..1268b4f03 100644
--- a/archaeological_finds/tests.py
+++ b/archaeological_finds/tests.py
@@ -21,6 +21,7 @@ import json
from django.conf import settings
from django.contrib.auth.models import User
+from django.core.files import File
from django.core.files.uploadedfile import SimpleUploadedFile
from django.core.urlresolvers import reverse
from django.test.client import Client
@@ -474,8 +475,14 @@ class PackagingTest(FindInit, TestCase):
model = models.Find
def setUp(self):
+ img = settings.ROOT_PATH + \
+ '../ishtar_common/static/media/images/ishtar-bg.jpg'
+
self.create_finds({"label": u"Find 1"}, force=True)
self.create_finds({"label": u"Find 2"}, force=True)
+ self.finds[0].image.save('ishtar-bg.jpg', File(open(img)))
+ self.finds[0].save()
+
self.basket = models.FindBasket.objects.create(
label="My basket", user=IshtarUser.objects.get(
pk=self.get_default_user().pk))
@@ -490,11 +497,26 @@ class PackagingTest(FindInit, TestCase):
treatment_type = models.TreatmentType.objects.get(txt_idx='packaging')
treatment = models.Treatment()
items_nb = models.Find.objects.count()
+
+ first_find = self.finds[0]
+
treatment.save(user=self.get_default_user(), items=self.basket)
self.assertEqual(items_nb + self.basket.items.count(),
models.Find.objects.count(),
msg="Packaging doesn't generate enough new finds")
treatment.treatment_types.add(treatment_type)
+
+ resulting_find = models.Find.objects.get(
+ upstream_treatment__upstream=first_find,
+ base_finds__pk=first_find.base_finds.all()[0].pk
+ )
+
+ # image names used to be altered on save: check for this bug
+ self.assertEqual(
+ resulting_find.image.name,
+ models.Find.objects.get(pk=first_find.pk).image.name
+ )
+
# new version of the find is in the basket
for item in self.basket.items.all():
self.assertNotIn(