diff options
Diffstat (limited to 'archaeological_operations')
-rw-r--r-- | archaeological_operations/tests.py | 33 | ||||
-rw-r--r-- | archaeological_operations/tests/MCC-operations-example-multi-col-periods.csv | 3 |
2 files changed, 36 insertions, 0 deletions
diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py index 957e5d65e..190543e3f 100644 --- a/archaeological_operations/tests.py +++ b/archaeological_operations/tests.py @@ -334,6 +334,36 @@ class ImportOperationTest(ImportTest, TestCase): current_ope_nb = models.Operation.objects.count() self.assertEqual(current_ope_nb, first_ope_nb + 2) + def test_import_multi_column_concat(self): + first_ope_nb = models.Operation.objects.count() + importer, form = self.init_ope_import( + 'MCC-operations-example-multi-col-periods.csv') + col = ImporterColumn.objects.create(col_number=12, + importer_type_id=importer.pk) + period_imp = ImporterColumn.objects.get( + col_number=9, + importer_type_id=importer.pk) + period_target = period_imp.targets.all()[0] + target = ImportTarget.objects.create( + column=col, target=period_target.target, + formater_type=period_target.formater_type, concat=True) + importer, form = self.init_ope_import( + 'MCC-operations-example-multi-col-periods.csv') + self.assertTrue(form.is_valid()) + + impt = form.save(self.ishtar_user) + impt.initialize() + self.init_ope_targetkey(imp=impt) + impt.importation() + current_ope_nb = models.Operation.objects.count() + + self.assertEqual(current_ope_nb, first_ope_nb + 2) + modern = models.Period.objects.get(txt_idx='modern') + for ope in models.Operation.objects.order_by("-pk")[0:2]: + self.assertIn(modern, list(ope.periods.all())) + target.delete() + col.delete() + def test_import_value_format(self): importer, form = self.init_ope_import() column = importer.columns.get(col_number=1) @@ -405,6 +435,9 @@ class ImportOperationTest(ImportTest, TestCase): impt.importation() self.assertEqual(len(impt.errors), 2) self.assertTrue( + "cody" in impt.errors[0]['error'] + ) + self.assertTrue( "Importer configuration error" in impt.errors[0]['error'] or "Erreur de configuration de l\'importeur" in impt.errors[0]['error'] diff --git a/archaeological_operations/tests/MCC-operations-example-multi-col-periods.csv b/archaeological_operations/tests/MCC-operations-example-multi-col-periods.csv new file mode 100644 index 000000000..4ff031c7b --- /dev/null +++ b/archaeological_operations/tests/MCC-operations-example-multi-col-periods.csv @@ -0,0 +1,3 @@ +code OA,region,type operation,intitule operation,operateur,responsable operation,date debut terrain,date fin terrain,chronologie generale,identifiant document georeferencement,notice scientifique,chronologie generale 2 +4201,Bourgogne,Fouille programmée,Oppìdum de Paris 2,L'opérateur,,2000/01/31,2002/12/31,Age du Fer,,,modern +4200,Bourgogne,Fouille programmée,Oppìdum de Paris,L'opérateur,Jean Sui-Resp'on Sablé,2000/01/22,2002/12/31,Age du Fer & Gallo-Romain & Néolithik & Moderne,,, |