# coding: utf-8

"""
    Mixpeek API

    This is the Mixpeek API, providing access to various endpoints for data processing and retrieval.

    The version of the OpenAPI document: 1.3.0
    Contact: info@mixpeek.com
    Generated by OpenAPI Generator (https://openapi-generator.tech)

    Do not edit the class manually.
"""  # noqa: E501


import unittest

from mixpeek.models.batch_model import BatchModel

class TestBatchModel(unittest.TestCase):
    """BatchModel unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> BatchModel:
        """Test BatchModel
            include_optional is a boolean, when False only required
            params are included, when True both required and
            optional params are included """
        # uncomment below to create an instance of `BatchModel`
        """
        model = BatchModel()
        if include_optional:
            return BatchModel(
                batch_id = '',
                bucket_id = '',
                status = 'PENDING',
                object_ids = [
                    ''
                    ],
                collection_ids = [
                    ''
                    ],
                error = '',
                error_summary = {
                    'key' : 56
                    },
                type = 'BUCKET',
                manifest_key = '',
                task_id = '',
                loaded_object_ids = [
                    ''
                    ],
                internal_metadata = mixpeek.models.internal_metadata.Internal Metadata(),
                metadata = mixpeek.models.metadata.Metadata(),
                tier_tasks = [
                    mixpeek.models.tier_task_info.TierTaskInfo(
                        tier_num = 0.0, 
                        task_id = '', 
                        status = null, 
                        collection_ids = [
                            ''
                            ], 
                        extractor_jobs = [
                            mixpeek.models.extractor_job_info.ExtractorJobInfo(
                                extractor_type = '', 
                                ray_job_id = '', 
                                celery_task_id = '', 
                                status = null, 
                                started_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                                completed_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                                duration_ms = 1.337, 
                                documents_written = 56, 
                                errors = [
                                    mixpeek.models.batch_error_detail.BatchErrorDetail(
                                        error_type = null, 
                                        message = '', 
                                        component = '', 
                                        stage = '', 
                                        traceback = '', 
                                        timestamp = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                                        affected_document_ids = [
                                            ''
                                            ], 
                                        affected_count = 1.0, 
                                        recovery_suggestion = '', 
                                        metadata = mixpeek.models.metadata.Metadata(), )
                                    ], 
                                error = '', )
                            ], 
                        source_type = '', 
                        source_collection_ids = [
                            ''
                            ], 
                        parent_task_id = '', 
                        started_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        completed_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        duration_ms = 1.337, 
                        errors = [
                            mixpeek.models.batch_error_detail.BatchErrorDetail(
                                error_type = null, 
                                message = '', 
                                component = '', 
                                stage = '', 
                                traceback = '', 
                                timestamp = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                                affected_count = 1.0, 
                                recovery_suggestion = '', 
                                metadata = mixpeek.models.metadata.Metadata(), )
                            ], 
                        error_summary = {
                            'key' : 56
                            }, 
                        performance = mixpeek.models.performance.Performance(), 
                        ray_job_id = '', 
                        celery_task_id = '', 
                        source_documents_fetched = 56, 
                        documents_after_source_filter = 56, 
                        documents_missing_input_fields = 56, 
                        documents_submitted_to_engine = 56, 
                        documents_written = 56, )
                    ],
                current_tier = 0.0,
                total_tiers = 1.0,
                dag_tiers = [
                    [
                        ''
                        ]
                    ],
                created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                updated_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f')
            )
        else:
            return BatchModel(
                bucket_id = '',
        )
        """

    def testBatchModel(self):
        """Test BatchModel"""
        # inst_req_only = self.make_instance(include_optional=False)
        # inst_req_and_optional = self.make_instance(include_optional=True)

if __name__ == '__main__':
    unittest.main()
