# coding: utf-8

"""
    ORY Hydra

    Welcome to the ORY Hydra HTTP API documentation. You will find documentation for all HTTP APIs here.  # noqa: E501

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


from __future__ import absolute_import

import unittest
import datetime

import ory_hydra_client
from ory_hydra_client.models.plugin_config import PluginConfig  # noqa: E501
from ory_hydra_client.rest import ApiException

class TestPluginConfig(unittest.TestCase):
    """PluginConfig unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional):
        """Test PluginConfig
            include_option is a boolean, when False only required
            params are included, when True both required and
            optional params are included """
        # model = ory_hydra_client.models.plugin_config.PluginConfig()  # noqa: E501
        if include_optional :
            return PluginConfig(
                args = ory_hydra_client.models.plugin_config_args.PluginConfigArgs(
                    description = '0', 
                    name = '0', 
                    settable = [
                        '0'
                        ], 
                    value = [
                        '0'
                        ], ), 
                description = '0', 
                docker_version = '0', 
                documentation = '0', 
                entrypoint = [
                    '0'
                    ], 
                env = [
                    ory_hydra_client.models.plugin_env.PluginEnv(
                        description = '0', 
                        name = '0', 
                        settable = [
                            '0'
                            ], 
                        value = '0', )
                    ], 
                interface = ory_hydra_client.models.plugin_config_interface.PluginConfigInterface(
                    socket = '0', 
                    types = [
                        ory_hydra_client.models.plugin_interface_type.PluginInterfaceType(
                            capability = '0', 
                            prefix = '0', 
                            version = '0', )
                        ], ), 
                ipc_host = True, 
                linux = ory_hydra_client.models.plugin_config_linux.PluginConfigLinux(
                    allow_all_devices = True, 
                    capabilities = [
                        '0'
                        ], 
                    devices = [
                        ory_hydra_client.models.plugin_device.PluginDevice(
                            description = '0', 
                            name = '0', 
                            path = '0', 
                            settable = [
                                '0'
                                ], )
                        ], ), 
                mounts = [
                    ory_hydra_client.models.plugin_mount.PluginMount(
                        description = '0', 
                        destination = '0', 
                        name = '0', 
                        options = [
                            '0'
                            ], 
                        settable = [
                            '0'
                            ], 
                        source = '0', 
                        type = '0', )
                    ], 
                network = ory_hydra_client.models.plugin_config_network.PluginConfigNetwork(
                    type = '0', ), 
                pid_host = True, 
                propagated_mount = '0', 
                user = ory_hydra_client.models.plugin_config_user.PluginConfigUser(
                    gid = 56, 
                    uid = 56, ), 
                work_dir = '0', 
                rootfs = ory_hydra_client.models.plugin_config_rootfs.PluginConfigRootfs(
                    diff_ids = [
                        '0'
                        ], 
                    type = '0', )
            )
        else :
            return PluginConfig(
                args = ory_hydra_client.models.plugin_config_args.PluginConfigArgs(
                    description = '0', 
                    name = '0', 
                    settable = [
                        '0'
                        ], 
                    value = [
                        '0'
                        ], ),
                description = '0',
                documentation = '0',
                entrypoint = [
                    '0'
                    ],
                env = [
                    ory_hydra_client.models.plugin_env.PluginEnv(
                        description = '0', 
                        name = '0', 
                        settable = [
                            '0'
                            ], 
                        value = '0', )
                    ],
                interface = ory_hydra_client.models.plugin_config_interface.PluginConfigInterface(
                    socket = '0', 
                    types = [
                        ory_hydra_client.models.plugin_interface_type.PluginInterfaceType(
                            capability = '0', 
                            prefix = '0', 
                            version = '0', )
                        ], ),
                ipc_host = True,
                linux = ory_hydra_client.models.plugin_config_linux.PluginConfigLinux(
                    allow_all_devices = True, 
                    capabilities = [
                        '0'
                        ], 
                    devices = [
                        ory_hydra_client.models.plugin_device.PluginDevice(
                            description = '0', 
                            name = '0', 
                            path = '0', 
                            settable = [
                                '0'
                                ], )
                        ], ),
                mounts = [
                    ory_hydra_client.models.plugin_mount.PluginMount(
                        description = '0', 
                        destination = '0', 
                        name = '0', 
                        options = [
                            '0'
                            ], 
                        settable = [
                            '0'
                            ], 
                        source = '0', 
                        type = '0', )
                    ],
                network = ory_hydra_client.models.plugin_config_network.PluginConfigNetwork(
                    type = '0', ),
                pid_host = True,
                propagated_mount = '0',
                work_dir = '0',
        )

    def testPluginConfig(self):
        """Test PluginConfig"""
        inst_req_only = self.make_instance(include_optional=False)
        inst_req_and_optional = self.make_instance(include_optional=True)


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