# coding: utf-8

"""
    fluid

    client for fluid  # noqa: E501

    The version of the OpenAPI document: v0.1
    Generated by: https://openapi-generator.tech
"""


from __future__ import absolute_import

import unittest
import datetime

import fluid
from fluid.models.data_migrate_list import DataMigrateList  # noqa: E501
from fluid.rest import ApiException

class TestDataMigrateList(unittest.TestCase):
    """DataMigrateList unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional):
        """Test DataMigrateList
            include_option is a boolean, when False only required
            params are included, when True both required and
            optional params are included """
        # model = fluid.models.data_migrate_list.DataMigrateList()  # noqa: E501
        if include_optional :
            return DataMigrateList(
                api_version = '0', 
                items = [
                    fluid.models./data_migrate..DataMigrate(
                        api_version = '0', 
                        kind = '0', 
                        metadata = None, 
                        spec = fluid.models./data_migrate_spec..DataMigrateSpec(
                            affinity = None, 
                            block = True, 
                            from = fluid.models./data_to_migrate..DataToMigrate(
                                dataset = fluid.models./dataset_to_migrate..DatasetToMigrate(
                                    name = '0', 
                                    namespace = '0', 
                                    path = '0', ), 
                                external_storage = fluid.models./external_storage..ExternalStorage(
                                    encrypt_options = [
                                        fluid.models./encrypt_option..EncryptOption(
                                            name = '0', 
                                            value_from = fluid.models./encrypt_option_source..EncryptOptionSource(
                                                secret_key_ref = fluid.models./secret_key_selector..SecretKeySelector(
                                                    key = '0', 
                                                    name = '0', ), ), )
                                        ], 
                                    uri = '0', ), ), 
                            image = '0', 
                            image_pull_policy = '0', 
                            image_tag = '0', 
                            node_selector = {
                                'key' : '0'
                                }, 
                            options = {
                                'key' : '0'
                                }, 
                            pod_metadata = fluid.models./pod_metadata..PodMetadata(
                                annotations = {
                                    'key' : '0'
                                    }, 
                                labels = {
                                    'key' : '0'
                                    }, ), 
                            policy = '0', 
                            resources = None, 
                            run_after = fluid.models./operation_ref..OperationRef(
                                api_version = '0', 
                                kind = '0', 
                                name = '0', 
                                namespace = '0', ), 
                            runtime_type = '0', 
                            schedule = '0', 
                            scheduler_name = '0', 
                            to = fluid.models./data_to_migrate..DataToMigrate(), 
                            tolerations = [
                                None
                                ], 
                            ttl_seconds_after_finished = 56, ), 
                        status = fluid.models./operation_status..OperationStatus(
                            conditions = [
                                fluid.models./condition..Condition(
                                    last_probe_time = None, 
                                    last_transition_time = None, 
                                    message = '0', 
                                    reason = '0', 
                                    status = '0', 
                                    type = '0', )
                                ], 
                            duration = '0', 
                            infos = {
                                'key' : '0'
                                }, 
                            last_schedule_time = None, 
                            last_successful_time = None, 
                            phase = '0', 
                            waiting_for = fluid.models./waiting_status..WaitingStatus(
                                operation_complete = True, ), ), )
                    ], 
                kind = '0', 
                metadata = None
            )
        else :
            return DataMigrateList(
                items = [
                    fluid.models./data_migrate..DataMigrate(
                        api_version = '0', 
                        kind = '0', 
                        metadata = None, 
                        spec = fluid.models./data_migrate_spec..DataMigrateSpec(
                            affinity = None, 
                            block = True, 
                            from = fluid.models./data_to_migrate..DataToMigrate(
                                dataset = fluid.models./dataset_to_migrate..DatasetToMigrate(
                                    name = '0', 
                                    namespace = '0', 
                                    path = '0', ), 
                                external_storage = fluid.models./external_storage..ExternalStorage(
                                    encrypt_options = [
                                        fluid.models./encrypt_option..EncryptOption(
                                            name = '0', 
                                            value_from = fluid.models./encrypt_option_source..EncryptOptionSource(
                                                secret_key_ref = fluid.models./secret_key_selector..SecretKeySelector(
                                                    key = '0', 
                                                    name = '0', ), ), )
                                        ], 
                                    uri = '0', ), ), 
                            image = '0', 
                            image_pull_policy = '0', 
                            image_tag = '0', 
                            node_selector = {
                                'key' : '0'
                                }, 
                            options = {
                                'key' : '0'
                                }, 
                            pod_metadata = fluid.models./pod_metadata..PodMetadata(
                                annotations = {
                                    'key' : '0'
                                    }, 
                                labels = {
                                    'key' : '0'
                                    }, ), 
                            policy = '0', 
                            resources = None, 
                            run_after = fluid.models./operation_ref..OperationRef(
                                api_version = '0', 
                                kind = '0', 
                                name = '0', 
                                namespace = '0', ), 
                            runtime_type = '0', 
                            schedule = '0', 
                            scheduler_name = '0', 
                            to = fluid.models./data_to_migrate..DataToMigrate(), 
                            tolerations = [
                                None
                                ], 
                            ttl_seconds_after_finished = 56, ), 
                        status = fluid.models./operation_status..OperationStatus(
                            conditions = [
                                fluid.models./condition..Condition(
                                    last_probe_time = None, 
                                    last_transition_time = None, 
                                    message = '0', 
                                    reason = '0', 
                                    status = '0', 
                                    type = '0', )
                                ], 
                            duration = '0', 
                            infos = {
                                'key' : '0'
                                }, 
                            last_schedule_time = None, 
                            last_successful_time = None, 
                            phase = '0', 
                            waiting_for = fluid.models./waiting_status..WaitingStatus(
                                operation_complete = True, ), ), )
                    ],
        )

    def testDataMigrateList(self):
        """Test DataMigrateList"""
        inst_req_only = self.make_instance(include_optional=False)
        inst_req_and_optional = self.make_instance(include_optional=True)


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