summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2017-01-20 20:09:06 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2017-01-20 20:09:06 +0100
commitd26217d09080ef93fe0b36c3543a266d7a04c688 (patch)
tree99faaf3ec3a2d6da7d265995419dc6af45a69fbe /archaeological_warehouse/tests.py
parent4abb5ff78620c096ab4238535c8e4b22291a2cb1 (diff)
parentac595e9aa13d27fb15e70eb1f6e2d11f928a4c4a (diff)
downloadIshtar-d26217d09080ef93fe0b36c3543a266d7a04c688.tar.bz2
Ishtar-d26217d09080ef93fe0b36c3543a266d7a04c688.zip
Merge branch 'v0.9' into wheezy
Diffstat (limited to 'archaeological_warehouse/tests.py')
-rw-r--r--archaeological_warehouse/tests.py122
1 files changed, 99 insertions, 23 deletions
diff --git a/archaeological_warehouse/tests.py b/archaeological_warehouse/tests.py
index f4ce52732..850af8218 100644
--- a/archaeological_warehouse/tests.py
+++ b/archaeological_warehouse/tests.py
@@ -26,9 +26,7 @@ from ishtar_common.tests import WizardTest, WizardTestFormData as FormData
from archaeological_warehouse import models, views, forms
-
-class ContainerWizardCreationTest(WizardTest, FindInit, TestCase):
- fixtures = [settings.ROOT_PATH +
+warehouse_fixtures = [settings.ROOT_PATH +
'../fixtures/initial_data.json',
settings.ROOT_PATH +
'../ishtar_common/fixtures/initial_data.json',
@@ -41,6 +39,52 @@ class ContainerWizardCreationTest(WizardTest, FindInit, TestCase):
settings.ROOT_PATH +
'../archaeological_warehouse/fixtures/initial_data-fr.json',
]
+
+
+class WarehouseWizardCreationTest(WizardTest, FindInit, TestCase):
+ fixtures = warehouse_fixtures
+ url_name = 'warehouse_creation'
+ wizard_name = 'warehouse_wizard'
+ steps = views.warehouse_creation_steps
+ form_datas = [
+ FormData(
+ 'Warehouse creation',
+ form_datas={
+ 'warehouse-warehouse_creation': {
+ 'name': 'warehouse-ref',
+ 'warehouse_type': None,
+ 'location': None,
+ 'responsible': None,
+ },
+ 'divisions-warehouse_creation': [
+ {
+ 'division': None,
+ 'order': 42
+ }
+ ]
+ },
+ ),
+ ]
+
+ def pre_wizard(self):
+ main_data = self.form_datas[0].form_datas
+ main_data['warehouse-warehouse_creation']['warehouse_type'] = \
+ models.WarehouseType.objects.all()[0].pk
+ main_data['divisions-warehouse_creation'][0]['division'] = \
+ models.WarehouseDivision.create_default_for_test()[0].pk
+ self.warehouse_number = models.Warehouse.objects.count()
+ self.warehouse_div_link = models.WarehouseDivisionLink.objects.count()
+ super(WarehouseWizardCreationTest, self).pre_wizard()
+
+ def post_wizard(self):
+ self.assertEqual(models.Warehouse.objects.count(),
+ self.warehouse_number + 1)
+ self.assertEqual(models.WarehouseDivisionLink.objects.count(),
+ self.warehouse_div_link + 1)
+
+
+class ContainerWizardCreationTest(WizardTest, FindInit, TestCase):
+ fixtures = warehouse_fixtures
url_name = 'container_creation'
wizard_name = 'container_wizard'
steps = views.container_creation_steps
@@ -56,7 +100,31 @@ class ContainerWizardCreationTest(WizardTest, FindInit, TestCase):
},
'localisation-container_creation': []
},
- )
+ ),
+ FormData(
+ 'Other container on the same warehouse',
+ form_datas={
+ 'container-container_creation': {
+ 'reference': 'hop-ref2',
+ 'container_type': None,
+ 'location': None,
+ 'responsible': None,
+ },
+ 'localisation-container_creation': []
+ },
+ ),
+ FormData(
+ 'Container creation with location',
+ form_datas={
+ 'container-container_creation': {
+ 'reference': 'hop-ref3',
+ 'container_type': None,
+ 'location': None,
+ 'responsible': None,
+ },
+ 'localisation-container_creation': []
+ },
+ ),
]
def pre_wizard(self):
@@ -64,33 +132,41 @@ class ContainerWizardCreationTest(WizardTest, FindInit, TestCase):
name="Main",
warehouse_type=models.WarehouseType.objects.all()[0]
)
- forms_data = self.form_datas[0].form_datas[
- 'container-container_creation']
- forms_data["responsible"] = main_warehouse.pk
- forms_data["location"] = main_warehouse.pk
- forms_data["container_type"] = models.ContainerType.objects.all()[0].pk
+ main_data = self.form_datas[0].form_datas
+ main_data_bis = self.form_datas[1].form_datas
+ alt_data = self.form_datas[2].form_datas
+ for data in [main_data, main_data_bis, alt_data]:
+ forms_data = data['container-container_creation']
+ forms_data["responsible"] = main_warehouse.pk
+ forms_data["location"] = main_warehouse.pk
+ forms_data["container_type"] = \
+ models.ContainerType.objects.all()[0].pk
+ alt_warehouse = models.Warehouse.objects.create(
+ name="Alt",
+ warehouse_type=models.WarehouseType.objects.all()[0]
+ )
+ div = models.WarehouseDivision.objects.create(label='division')
+ div_link = models.WarehouseDivisionLink.objects.create(
+ warehouse=alt_warehouse, division=div)
+ alt_data['container-container_creation']["location"] = alt_warehouse.pk
+ alt_data['localisation-container_creation'] = {
+ 'division_{}'.format(div_link.pk): 'Combien ?'
+ }
+
self.container_number = models.Container.objects.count()
+ self.localisation_detail_number = \
+ models.ContainerLocalisation.objects.count()
super(ContainerWizardCreationTest, self).pre_wizard()
def post_wizard(self):
self.assertEqual(models.Container.objects.count(),
- self.container_number + 1)
+ self.container_number + 3)
+ self.assertEqual(models.ContainerLocalisation.objects.count(),
+ self.localisation_detail_number + 1)
class ContainerTest(FindInit, TestCase):
- fixtures = [settings.ROOT_PATH +
- '../fixtures/initial_data.json',
- settings.ROOT_PATH +
- '../ishtar_common/fixtures/initial_data.json',
- settings.ROOT_PATH +
- '../archaeological_files/fixtures/initial_data.json',
- settings.ROOT_PATH +
- '../archaeological_operations/fixtures/initial_data-fr.json',
- settings.ROOT_PATH +
- '../archaeological_finds/fixtures/initial_data-fr.json',
- settings.ROOT_PATH +
- '../archaeological_warehouse/fixtures/initial_data-fr.json',
- ]
+ fixtures = warehouse_fixtures
def testFormCreation(self):
main_warehouse = models.Warehouse.objects.create(