diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-12-18 10:46:50 +0100 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-12-18 10:46:50 +0100 | 
| commit | f2274d391af31cd620465f4424e4510e075562cd (patch) | |
| tree | 8f011de951df885b7359b2bd7e8da5d5e126ff7b | |
| parent | 9c6bfb0cb898b974f0f1b741e78729e597996383 (diff) | |
| download | Ishtar-f2274d391af31cd620465f4424e4510e075562cd.tar.bz2 Ishtar-f2274d391af31cd620465f4424e4510e075562cd.zip | |
Tests: reorder tests for finds
| -rw-r--r-- | archaeological_finds/tests.py | 197 | 
1 files changed, 99 insertions, 98 deletions
| diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py index 085671be3..b5096ae01 100644 --- a/archaeological_finds/tests.py +++ b/archaeological_finds/tests.py @@ -34,69 +34,6 @@ from ishtar_common import forms_common  from ishtar_common.tests import WizardTest, WizardTestFormData as FormData -class ImportFindTest(ImportContextRecordTest): -    test_context_records = False - -    fixtures = ImportContextRecordTest.fixtures + [ -        settings.ROOT_PATH + -        '../archaeological_finds/fixtures/initial_data-fr.json', -    ] - -    def testMCCImportFinds(self, test=True): -        self.testMCCImportContextRecords(test=False) - -        old_nb = models.BaseFind.objects.count() -        old_nb_find = models.Find.objects.count() -        MCC = ImporterType.objects.get(name=u"MCC - Mobilier") - -        col = ImporterColumn.objects.create(col_number=25, -                                            importer_type_id=MCC.pk) -        formater = FormaterType.objects.filter( -            formater_type='FileFormater').all()[0] -        ImportTarget.objects.create(target='find__image', -                                    formater_type_id=formater.pk, -                                    column_id=col.pk) -        mcc_file = open( -            settings.ROOT_PATH + -            '../archaeological_finds/tests/MCC-finds-example.csv', 'rb') -        mcc_images = open( -            settings.ROOT_PATH + -            '../archaeological_finds/tests/images.zip', 'rb') -        file_dict = {'imported_file': SimpleUploadedFile(mcc_file.name, -                                                         mcc_file.read()), -                     'imported_images': SimpleUploadedFile(mcc_images.name, -                                                           mcc_images.read())} -        post_dict = {'importer_type': MCC.pk, 'skip_lines': 1, -                     "encoding": 'utf-8'} -        form = forms_common.NewImportForm(data=post_dict, files=file_dict, -                                          instance=None) -        form.is_valid() -        if test: -            self.assertTrue(form.is_valid()) -        impt = form.save(self.ishtar_user) -        impt.initialize() - -        # doing manual connections -        ceram = models.MaterialType.objects.get(txt_idx='ceramic').pk -        glass = models.MaterialType.objects.get(txt_idx='glass').pk -        self.setTargetKey('find__material_types', 'terre-cuite', ceram) -        self.setTargetKey('find__material_types', 'verre', glass) -        impt.importation() -        if not test: -            return -        # new finds has now been imported -        current_nb = models.BaseFind.objects.count() -        self.assertEqual(current_nb, (old_nb + 4)) -        current_nb = models.Find.objects.count() -        self.assertEqual(current_nb, (old_nb_find + 4)) -        self.assertEqual( -            models.Find.objects.filter(material_types__pk=ceram).count(), 4) -        self.assertEqual( -            models.Find.objects.filter(material_types__pk=glass).count(), 1) -        images = [f.image for f in models.Find.objects.all() if f.image.name] -        self.assertEqual(len(images), 1) - -  class FindInit(ContextRecordInit):      test_context_records = False @@ -143,39 +80,8 @@ class FindInit(ContextRecordInit):              self.base_find = [] -class FindTest(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', -                ] -    model = models.Find - -    def setUp(self): -        self.create_finds(force=True) - -    def testExternalID(self): -        find = self.finds[0] -        base_find = find.base_finds.all()[0] -        self.assertEqual( -            find.external_id, -            u"{}-{}".format( -                find.get_first_base_find().context_record.external_id, -                find.label)) -        self.assertEqual( -            base_find.external_id, -            u"{}-{}".format( -                base_find.context_record.external_id, -                base_find.label)) - - -class TreatmentWizardCreationTest(WizardTest, FindInit, TestCase): +class ATreatmentWizardCreationTest(WizardTest, FindInit, TestCase): +    # TODO: first to be run because of strange init things...      fixtures = [settings.ROOT_PATH +                  '../fixtures/initial_data.json',                  settings.ROOT_PATH + @@ -229,7 +135,7 @@ class TreatmentWizardCreationTest(WizardTest, FindInit, TestCase):          if not models.Find.objects.filter(pk=1).count():              self.create_finds({"pk": 1, "label": u"Find 1"}, force=True)          self.treatment_number = models.Treatment.objects.count() -        super(TreatmentWizardCreationTest, self).pre_wizard() +        super(ATreatmentWizardCreationTest, self).pre_wizard()      def post_wizard(self):          self.assertEqual(models.Treatment.objects.count(), @@ -237,7 +143,102 @@ class TreatmentWizardCreationTest(WizardTest, FindInit, TestCase):          pass -class ZPackagingTest(FindInit, TestCase): +class ImportFindTest(ImportContextRecordTest): +    test_context_records = False + +    fixtures = ImportContextRecordTest.fixtures + [ +        settings.ROOT_PATH + +        '../archaeological_finds/fixtures/initial_data-fr.json', +    ] + +    def testMCCImportFinds(self, test=True): +        self.testMCCImportContextRecords(test=False) + +        old_nb = models.BaseFind.objects.count() +        old_nb_find = models.Find.objects.count() +        MCC = ImporterType.objects.get(name=u"MCC - Mobilier") + +        col = ImporterColumn.objects.create(col_number=25, +                                            importer_type_id=MCC.pk) +        formater = FormaterType.objects.filter( +            formater_type='FileFormater').all()[0] +        ImportTarget.objects.create(target='find__image', +                                    formater_type_id=formater.pk, +                                    column_id=col.pk) +        mcc_file = open( +            settings.ROOT_PATH + +            '../archaeological_finds/tests/MCC-finds-example.csv', 'rb') +        mcc_images = open( +            settings.ROOT_PATH + +            '../archaeological_finds/tests/images.zip', 'rb') +        file_dict = {'imported_file': SimpleUploadedFile(mcc_file.name, +                                                         mcc_file.read()), +                     'imported_images': SimpleUploadedFile(mcc_images.name, +                                                           mcc_images.read())} +        post_dict = {'importer_type': MCC.pk, 'skip_lines': 1, +                     "encoding": 'utf-8'} +        form = forms_common.NewImportForm(data=post_dict, files=file_dict, +                                          instance=None) +        form.is_valid() +        if test: +            self.assertTrue(form.is_valid()) +        impt = form.save(self.ishtar_user) +        impt.initialize() + +        # doing manual connections +        ceram = models.MaterialType.objects.get(txt_idx='ceramic').pk +        glass = models.MaterialType.objects.get(txt_idx='glass').pk +        self.setTargetKey('find__material_types', 'terre-cuite', ceram) +        self.setTargetKey('find__material_types', 'verre', glass) +        impt.importation() +        if not test: +            return +        # new finds has now been imported +        current_nb = models.BaseFind.objects.count() +        self.assertEqual(current_nb, (old_nb + 4)) +        current_nb = models.Find.objects.count() +        self.assertEqual(current_nb, (old_nb_find + 4)) +        self.assertEqual( +            models.Find.objects.filter(material_types__pk=ceram).count(), 4) +        self.assertEqual( +            models.Find.objects.filter(material_types__pk=glass).count(), 1) +        images = [f.image for f in models.Find.objects.all() if f.image.name] +        self.assertEqual(len(images), 1) + + +class FindTest(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', +                ] +    model = models.Find + +    def setUp(self): +        self.create_finds(force=True) + +    def testExternalID(self): +        find = self.finds[0] +        base_find = find.base_finds.all()[0] +        self.assertEqual( +            find.external_id, +            u"{}-{}".format( +                find.get_first_base_find().context_record.external_id, +                find.label)) +        self.assertEqual( +            base_find.external_id, +            u"{}-{}".format( +                base_find.context_record.external_id, +                base_find.label)) + + +class PackagingTest(FindInit, TestCase):      fixtures = [settings.ROOT_PATH +                  '../fixtures/initial_data.json',                  settings.ROOT_PATH + | 
