diff options
Diffstat (limited to 'archaeological_finds/tests.py')
| -rw-r--r-- | archaeological_finds/tests.py | 93 | 
1 files changed, 91 insertions, 2 deletions
| diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py index 9d2ff8e8b..63090ce04 100644 --- a/archaeological_finds/tests.py +++ b/archaeological_finds/tests.py @@ -44,17 +44,18 @@ from archaeological_warehouse.models import Warehouse, WarehouseType, \      ContainerType, Container, WarehouseDivision, WarehouseDivisionLink, \      ContainerLocalisation  from archaeological_operations.models import Operation, OperationType -from archaeological_context_records.models import ContextRecord  from ishtar_common import forms_common  from ishtar_common.tests import WizardTest, WizardTestFormData as FormData, \      TestCase, create_user, create_superuser, AutocompleteTestBase, AcItem, \      FIND_FIXTURES, FIND_TOWNS_FIXTURES, WAREHOUSE_FIXTURES, \ -    CONTEXT_RECORD_FIXTURES, CONTEXT_RECORD_TOWNS_FIXTURES +    COMMON_FIXTURES, GenericSerializationTest  from archaeological_operations.tests import ImportTest, create_operation  from archaeological_context_records.tests import ContextRecordInit +from archaeological_finds import serializers +  class FindInit(ContextRecordInit):      test_context_records = False @@ -114,6 +115,94 @@ class FindInit(ContextRecordInit):              self.base_find = [] +class SerializationTest(GenericSerializationTest, FindInit, TestCase): +    fixtures = COMMON_FIXTURES + WAREHOUSE_FIXTURES + +    def setUp(self): +        ope1 = self.create_operation()[0] +        ope2 = self.create_operation()[1] +        cr = self.create_context_record( +            data={"label": u"CR 1", "operation": ope1} +        )[0] +        cr2 = self.create_context_record( +            data={"label": u"CR 2", "operation": ope2} +        )[1] +        self.create_finds(data_base={"context_record": cr})[0] +        self.create_finds(data_base={"context_record": cr2})[1] +        # basket = models.FindBasket.objects.create(label="Hophop") +        # basket.items.add(self.finds[0]) +        # basket.items.add(self.finds[1]) + +    def test_serialization(self): +        res = self.generic_serialization_test(serializers.find_serialization) +        find_json = json.loads( +            res[('finds', 'archaeological_finds__Find')] +        ) +        self.assertEqual(len(find_json), 2) +        bfind_json = json.loads( +            res[('finds', 'archaeological_finds__BaseFind')] +        ) +        self.assertEqual(len(bfind_json), 2) + +        result_queryset = Operation.objects.filter(uuid=self.operations[0].uuid) +        res = self.generic_serialization_test( +            serializers.find_serialization, no_test=True, +            kwargs={"operation_queryset": result_queryset} +        ) +        find_json = json.loads( +            res[('finds', 'archaeological_finds__Find')] +        ) +        self.assertEqual(len(find_json), 1) +        bfind_json = json.loads( +            res[('finds', 'archaeological_finds__BaseFind')] +        ) +        self.assertEqual(len(bfind_json), 1) + +        result_queryset = ContextRecord.objects.filter( +            uuid=self.context_records[0].uuid) +        res = self.generic_serialization_test( +            serializers.find_serialization, no_test=True, +            kwargs={"cr_queryset": result_queryset} +        ) +        find_json = json.loads( +            res[('finds', 'archaeological_finds__Find')] +        ) +        self.assertEqual(len(find_json), 1) +        bfind_json = json.loads( +            res[('finds', 'archaeological_finds__BaseFind')] +        ) +        self.assertEqual(len(bfind_json), 1) + +        """ +    def test_ope_serialization_with_cr_filter(self): +        res = self.generic_serialization_test( +            operation_serialization, no_test=True, +        ) +        ope_json = json.loads( +            res[('operations', 'archaeological_operations__Operation')] +        ) +        self.assertEqual(len(ope_json), 2) + +        result_queryset = models.ContextRecord.objects.filter( +            uuid=self.context_records[0].uuid) +        res = self.generic_serialization_test( +            operation_serialization, no_test=True, +            kwargs={"cr_queryset": result_queryset} +        ) +        ope_json = json.loads( +            res[('operations', 'archaeological_operations__Operation')] +        ) +        self.assertEqual(len(ope_json), 1) +    """ + +    def test_restore(self): +        current_number, zip_filename = self.generic_restore_test_genzip( +            serializers.FIND_MODEL_LIST, +            serializers.find_serialization) +        self.generic_restore_test(zip_filename, current_number, +                                  serializers.FIND_MODEL_LIST) + +  class FindWizardCreationTest(WizardTest, FindInit, TestCase):      fixtures = WAREHOUSE_FIXTURES      url_name = 'find_creation' | 
