# 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.get_migration_response import GetMigrationResponse

class TestGetMigrationResponse(unittest.TestCase):
    """GetMigrationResponse unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> GetMigrationResponse:
        """Test GetMigrationResponse
            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 `GetMigrationResponse`
        """
        model = GetMigrationResponse()
        if include_optional:
            return GetMigrationResponse(
                migration_id = '',
                internal_id = '',
                namespace_id = '',
                config = mixpeek.models.migration_config.MigrationConfig(
                    migration_type = null, 
                    source_namespace_id = '', 
                    target_namespace_id = '', 
                    target_namespace_name = '', 
                    feature_extractors = [
                        mixpeek.models.feature_extractor_config.FeatureExtractorConfig(
                            feature_extractor_name = '', 
                            version = '', 
                            parameters = mixpeek.models.parameters.Parameters(), )
                        ], 
                    filters = mixpeek.models.resource_filter.ResourceFilter(
                        collection_ids = [
                            ''
                            ], 
                        taxonomy_ids = [
                            ''
                            ], 
                        cluster_ids = [
                            ''
                            ], 
                        retriever_ids = [
                            ''
                            ], 
                        date_range = {
                            'key' : ''
                            }, 
                        auto_include_dependencies = True, ), 
                    batch_options = mixpeek.models.batch_options.BatchOptions(
                        batch_size = 1.0, 
                        max_workers = 1.0, 
                        retry_failed = True, ), 
                    taxonomy_options = mixpeek.models.taxonomy_options.TaxonomyOptions(
                        preserve_taxonomy_ids = True, 
                        preserve_enrichment_fields = True, 
                        re_run_enrichment = True, 
                        migrate_reference_collections = True, ), 
                    cluster_options = mixpeek.models.cluster_options.ClusterOptions(
                        preserve_cluster_ids = True, 
                        preserve_assignments = True, 
                        migrate_artifacts = True, 
                        preserve_centroids = True, 
                        recompute_clusters = True, ), 
                    retriever_options = mixpeek.models.retriever_options.RetrieverOptions(
                        preserve_retriever_ids = True, 
                        migrate_interactions = True, 
                        migrate_execution_history = True, 
                        validate_references = True, ), 
                    preserve_resource_ids = True, 
                    dry_run = True, 
                    webhook_url = '', ),
                status = 'draft',
                progress = mixpeek.models.migration_progress.MigrationProgress(
                    overall_status = null, 
                    overall_progress_percent = 0.0, 
                    current_stage = 'namespace_setup', 
                    stages = [
                        mixpeek.models.stage_progress.StageProgress(
                            stage = null, 
                            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'), 
                            progress_percent = 0.0, 
                            items_total = 0.0, 
                            items_completed = 0.0, 
                            items_failed = 0.0, 
                            error_message = '', )
                        ], 
                    resources = [
                        mixpeek.models.resource_progress.ResourceProgress(
                            resource_id = '', 
                            resource_type = null, 
                            status = null, 
                            progress_percent = 0.0, 
                            error_message = '', )
                        ], 
                    started_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                    estimated_completion = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ),
                validation_result = mixpeek.models.validation_result.ValidationResult(
                    valid = True, 
                    errors = [
                        mixpeek.models.validation_error.ValidationError(
                            loc = [
                                null
                                ], 
                            msg = '', 
                            type = '', )
                        ], 
                    warnings = [
                        mixpeek.models.validation_error.ValidationError(
                            loc = [
                                null
                                ], 
                            msg = '', 
                            type = '', )
                        ], 
                    estimated_resources = {
                        'key' : 56
                        }, 
                    estimated_duration_seconds = 56, ),
                dependency_graph = mixpeek.models.dependency_graph.DependencyGraph(
                    nodes = [
                        mixpeek.models.dependency_node.DependencyNode(
                            resource_id = '', 
                            resource_type = null, 
                            dependencies = [
                                ''
                                ], 
                            tier = 0.0, )
                        ], 
                    execution_order = [
                        ''
                        ], ),
                task_id = '',
                created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                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'),
                error_message = '',
                additional_data = mixpeek.models.additional_data.Additional Data()
            )
        else:
            return GetMigrationResponse(
                migration_id = '',
                internal_id = '',
                namespace_id = '',
                config = mixpeek.models.migration_config.MigrationConfig(
                    migration_type = null, 
                    source_namespace_id = '', 
                    target_namespace_id = '', 
                    target_namespace_name = '', 
                    feature_extractors = [
                        mixpeek.models.feature_extractor_config.FeatureExtractorConfig(
                            feature_extractor_name = '', 
                            version = '', 
                            parameters = mixpeek.models.parameters.Parameters(), )
                        ], 
                    filters = mixpeek.models.resource_filter.ResourceFilter(
                        collection_ids = [
                            ''
                            ], 
                        taxonomy_ids = [
                            ''
                            ], 
                        cluster_ids = [
                            ''
                            ], 
                        retriever_ids = [
                            ''
                            ], 
                        date_range = {
                            'key' : ''
                            }, 
                        auto_include_dependencies = True, ), 
                    batch_options = mixpeek.models.batch_options.BatchOptions(
                        batch_size = 1.0, 
                        max_workers = 1.0, 
                        retry_failed = True, ), 
                    taxonomy_options = mixpeek.models.taxonomy_options.TaxonomyOptions(
                        preserve_taxonomy_ids = True, 
                        preserve_enrichment_fields = True, 
                        re_run_enrichment = True, 
                        migrate_reference_collections = True, ), 
                    cluster_options = mixpeek.models.cluster_options.ClusterOptions(
                        preserve_cluster_ids = True, 
                        preserve_assignments = True, 
                        migrate_artifacts = True, 
                        preserve_centroids = True, 
                        recompute_clusters = True, ), 
                    retriever_options = mixpeek.models.retriever_options.RetrieverOptions(
                        preserve_retriever_ids = True, 
                        migrate_interactions = True, 
                        migrate_execution_history = True, 
                        validate_references = True, ), 
                    preserve_resource_ids = True, 
                    dry_run = True, 
                    webhook_url = '', ),
                status = 'draft',
                progress = mixpeek.models.migration_progress.MigrationProgress(
                    overall_status = null, 
                    overall_progress_percent = 0.0, 
                    current_stage = 'namespace_setup', 
                    stages = [
                        mixpeek.models.stage_progress.StageProgress(
                            stage = null, 
                            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'), 
                            progress_percent = 0.0, 
                            items_total = 0.0, 
                            items_completed = 0.0, 
                            items_failed = 0.0, 
                            error_message = '', )
                        ], 
                    resources = [
                        mixpeek.models.resource_progress.ResourceProgress(
                            resource_id = '', 
                            resource_type = null, 
                            status = null, 
                            progress_percent = 0.0, 
                            error_message = '', )
                        ], 
                    started_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                    estimated_completion = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), ),
                created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
        )
        """

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

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