# coding: utf-8

"""
    dAIEDGE-DLT

    API documentation

    The version of the OpenAPI document: 1.0.0
    Generated by OpenAPI Generator (https://openapi-generator.tech)

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


import unittest

from daiedge_middleware_client.models.hardware_spec import HardwareSpec

class TestHardwareSpec(unittest.TestCase):
    """HardwareSpec unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> HardwareSpec:
        """Test HardwareSpec
            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 `HardwareSpec`
        """
        model = HardwareSpec()
        if include_optional:
            return HardwareSpec(
                cost = daiedge_middleware_client.models.cost.Cost(
                    value = 1.337, 
                    currency = '', 
                    unit = '', ),
                cpus = [
                    daiedge_middleware_client.models.cpu.CPU(
                        id = '', 
                        arch = '', 
                        model = '', 
                        specs = daiedge_middleware_client.models.cpu_specs_item.CPUSpecsItem(
                            rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            cores = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            computing_power = , ), )
                    ],
                accelerators = [
                    daiedge_middleware_client.models.accelerator.Accelerator(
                        id = '', 
                        type = '', 
                        model = '', 
                        specs = daiedge_middleware_client.models.cpu_specs_item.CPUSpecsItem(
                            rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            cores = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            computing_power = , ), )
                    ],
                memory = daiedge_middleware_client.models.memory.Memory(
                    type = '', 
                    kind = '', 
                    specs = daiedge_middleware_client.models.default_specs_memory.DefaultSpecsMemory(
                        size = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), 
                        rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), ), ),
                storage = daiedge_middleware_client.models.storage.Storage(
                    type = '', 
                    specs = daiedge_middleware_client.models.storage_specs_item.StorageSpecsItem(
                        size = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), 
                        rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), ), ),
                power = daiedge_middleware_client.models.power.Power(
                    min = daiedge_middleware_client.models.power_item_details.PowerItemDetails(
                        value = 1.337, 
                        unit = '', ), 
                    max = daiedge_middleware_client.models.power_item_details.PowerItemDetails(
                        value = 1.337, 
                        unit = '', ), )
            )
        else:
            return HardwareSpec(
                cost = daiedge_middleware_client.models.cost.Cost(
                    value = 1.337, 
                    currency = '', 
                    unit = '', ),
                cpus = [
                    daiedge_middleware_client.models.cpu.CPU(
                        id = '', 
                        arch = '', 
                        model = '', 
                        specs = daiedge_middleware_client.models.cpu_specs_item.CPUSpecsItem(
                            rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            cores = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            computing_power = , ), )
                    ],
                accelerators = [
                    daiedge_middleware_client.models.accelerator.Accelerator(
                        id = '', 
                        type = '', 
                        model = '', 
                        specs = daiedge_middleware_client.models.cpu_specs_item.CPUSpecsItem(
                            rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            cores = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                                value = 1.337, 
                                unit = '', 
                                kind = '', ), 
                            computing_power = , ), )
                    ],
                memory = daiedge_middleware_client.models.memory.Memory(
                    type = '', 
                    kind = '', 
                    specs = daiedge_middleware_client.models.default_specs_memory.DefaultSpecsMemory(
                        size = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), 
                        rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), ), ),
                storage = daiedge_middleware_client.models.storage.Storage(
                    type = '', 
                    specs = daiedge_middleware_client.models.storage_specs_item.StorageSpecsItem(
                        size = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), 
                        rate = daiedge_middleware_client.models.default_spec_item.DefaultSpecItem(
                            value = 1.337, 
                            unit = '', 
                            kind = '', ), ), ),
                power = daiedge_middleware_client.models.power.Power(
                    min = daiedge_middleware_client.models.power_item_details.PowerItemDetails(
                        value = 1.337, 
                        unit = '', ), 
                    max = daiedge_middleware_client.models.power_item_details.PowerItemDetails(
                        value = 1.337, 
                        unit = '', ), ),
        )
        """

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

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