summaryrefslogtreecommitdiff
path: root/archaeological_operations
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-02-05 10:51:51 +0100
commitb293908ec15c87ed4f015f6c538678f8f3d67c92 (patch)
tree031b8254c21df32630885156f048ad562c3015a6 /archaeological_operations
parent3a6ebc8cda09035846cdb7a46af5bedc6b27d755 (diff)
downloadIshtar-b293908ec15c87ed4f015f6c538678f8f3d67c92.tar.bz2
Ishtar-b293908ec15c87ed4f015f6c538678f8f3d67c92.zip
✅ Tests: pre-import form - fix import test
Diffstat (limited to 'archaeological_operations')
-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)