# coding: utf-8

"""
    Akeyless API

    The purpose of this application is to provide access to Akeyless API.  # noqa: E501

    The version of the OpenAPI document: 2.0
    Contact: support@akeyless.io
    Generated by: https://openapi-generator.tech
"""


from __future__ import absolute_import

import unittest
import datetime

import akeyless
from akeyless.models.migrations_config_part import MigrationsConfigPart  # noqa: E501
from akeyless.rest import ApiException

class TestMigrationsConfigPart(unittest.TestCase):
    """MigrationsConfigPart unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional):
        """Test MigrationsConfigPart
            include_option is a boolean, when False only required
            params are included, when True both required and
            optional params are included """
        # model = akeyless.models.migrations_config_part.MigrationsConfigPart()  # noqa: E501
        if include_optional :
            return MigrationsConfigPart(
                aws_secrets_migrations = [
                    akeyless.models.aws_secrets_migration.AWSSecretsMigration(
                        general = akeyless.models.migration_general.MigrationGeneral(
                            id = '0', 
                            name = '0', 
                            prefix = '0', 
                            protection_key = '0', ), 
                        payload = akeyless.models.aws_payload.AWSPayload(
                            key = '0', 
                            region = '0', 
                            secret = '0', ), )
                    ], 
                azure_kv_migrations = [
                    akeyless.models.azure_key_vault_migration.AzureKeyVaultMigration(
                        general = akeyless.models.migration_general.MigrationGeneral(
                            id = '0', 
                            name = '0', 
                            prefix = '0', 
                            protection_key = '0', ), 
                        payload = akeyless.models.azure_payload.AzurePayload(
                            client = '0', 
                            name = '0', 
                            secret = '0', 
                            tenant = '0', ), )
                    ], 
                hashi_migrations = [
                    akeyless.models.hashi_migration.HashiMigration(
                        general = akeyless.models.migration_general.MigrationGeneral(
                            id = '0', 
                            name = '0', 
                            prefix = '0', 
                            protection_key = '0', ), 
                        payload = akeyless.models.hashi_payload.HashiPayload(
                            namespaces = [
                                '0'
                                ], 
                            token = '0', 
                            url = '0', ), )
                    ], 
                k8s_migrations = [
                    akeyless.models.k8_s_migration.K8SMigration(
                        general = akeyless.models.migration_general.MigrationGeneral(
                            id = '0', 
                            name = '0', 
                            prefix = '0', 
                            protection_key = '0', ), 
                        payload = akeyless.models.k8_s_payload.K8SPayload(
                            ca = [
                                56
                                ], 
                            client_cert = [
                                56
                                ], 
                            client_key = [
                                56
                                ], 
                            namespace = '0', 
                            password = '0', 
                            server = '0', 
                            skip_system = True, 
                            token = '0', 
                            username = '0', ), )
                    ]
            )
        else :
            return MigrationsConfigPart(
        )

    def testMigrationsConfigPart(self):
        """Test MigrationsConfigPart"""
        inst_req_only = self.make_instance(include_optional=False)
        inst_req_and_optional = self.make_instance(include_optional=True)


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