# coding: utf-8

"""
    authentik

    Making authentication simple.

    The version of the OpenAPI document: 2026.5.0-rc1
    Contact: hello@goauthentik.io
    Generated by OpenAPI Generator (https://openapi-generator.tech)

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


import unittest

from authentik_client.models.device_facts import DeviceFacts

class TestDeviceFacts(unittest.TestCase):
    """DeviceFacts unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> DeviceFacts:
        """Test DeviceFacts
            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 `DeviceFacts`
        """
        model = DeviceFacts()
        if include_optional:
            return DeviceFacts(
                os = authentik_client.models.operating_system.OperatingSystem(
                    family = 'linux', 
                    name = '', 
                    version = '', 
                    arch = '', ),
                disks = [
                    authentik_client.models.disk.Disk(
                        name = '', 
                        mountpoint = '', 
                        label = '', 
                        capacity_total_bytes = 56, 
                        capacity_used_bytes = 56, 
                        encryption_enabled = True, )
                    ],
                network = authentik_client.models.network.Network(
                    hostname = '', 
                    firewall_enabled = True, 
                    interfaces = [
                        authentik_client.models.network_interface.NetworkInterface(
                            name = '', 
                            hardware_address = '', 
                            ip_addresses = [
                                ''
                                ], 
                            dns_servers = [
                                ''
                                ], )
                        ], 
                    gateway = '', ),
                hardware = authentik_client.models.hardware.Hardware(
                    model = '', 
                    manufacturer = '', 
                    serial = '', 
                    cpu_name = '', 
                    cpu_count = 56, 
                    memory_bytes = 56, ),
                software = [
                    authentik_client.models.software.Software(
                        name = '', 
                        version = '', 
                        source = '', 
                        path = '', )
                    ],
                processes = [
                    authentik_client.models.process.Process(
                        id = 56, 
                        name = '', 
                        user = '', )
                    ],
                users = [
                    authentik_client.models.device_user.DeviceUser(
                        id = '', 
                        username = '', 
                        name = '', 
                        home = '', )
                    ],
                groups = [
                    authentik_client.models.device_group.DeviceGroup(
                        id = '', 
                        name = '', )
                    ],
                vendor = {
                    'key' : null
                    }
            )
        else:
            return DeviceFacts(
        )
        """

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

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