summaryrefslogtreecommitdiff
path: root/archaeological_operations/tests.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2023-09-19 12:20:43 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2024-04-16 16:38:32 +0200
commit5e4b5ff9ff801aacbfc173873036437b2ab54fa7 (patch)
tree2cd511d9a9c7f8d10c2bb3acb10afe3f06add050 /archaeological_operations/tests.py
parent5ec78fa85dbb6b7ec7d286827b6e32f82c489b3e (diff)
downloadIshtar-5e4b5ff9ff801aacbfc173873036437b2ab54fa7.tar.bz2
Ishtar-5e4b5ff9ff801aacbfc173873036437b2ab54fa7.zip
✅ Tests: pre-import form - fix import test
Diffstat (limited to 'archaeological_operations/tests.py')
-rw-r--r--archaeological_operations/tests.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py
index f72ef2647..423eae635 100644
--- a/archaeological_operations/tests.py
+++ b/archaeological_operations/tests.py
@@ -67,6 +67,7 @@ from ishtar_common.models import (
IshtarSiteProfile,
Town,
ImporterColumn,
+ ImportColumnValue,
Person,
Author,
SourceType,
@@ -473,6 +474,48 @@ class ImportOperationTest(ImportTest, TestCase):
).count(), 1
)
+ def test_pre_form(self):
+ """
+ Pre-import form
+ """
+ importer, form = self.init_ope_import()
+ # set a pre-form withe one field "Report state"
+ col = ImporterColumn.objects.create(
+ label="State of the report",
+ importer_type=importer,
+ col_number="-10",
+ required=True
+ )
+ ImportTarget.objects.create(
+ column=col, target="report_processing",
+ formater_type=FormaterType.objects.get(
+ formater_type="TypeFormater",
+ options="archaeological_operations.models.ReportState"
+ )
+ )
+ self.assertTrue(form.is_valid())
+ impt = form.save(self.ishtar_user)
+ self.assertTrue(impt.has_pre_import_form)
+ self.assertFalse(impt.pre_import_form_is_valid) # the pre-form has a required value
+
+ rs, __ = models.ReportState.objects.get_or_create(
+ label="Dans les limbes", txt_idx="in-limbo", order=10)
+ ImportColumnValue.objects.get_or_create(
+ column=col, import_item=impt, value=rs.pk
+ )
+ self.assertTrue(impt.pre_import_form_is_valid)
+
+ impt = form.save(self.ishtar_user)
+ impt.initialize()
+ self.init_ope_targetkey(imp=impt)
+ impt.importation()
+ self.assertEqual(
+ models.Operation.objects.filter(
+ code_patriarche="4201",
+ report_processing__txt_idx=rs.txt_idx
+ ).count(), 1
+ )
+
def test_import_value_format(self):
importer, form = self.init_ope_import()
column = importer.columns.get(col_number=1)