# coding: utf-8

"""
    Equinix Fabric API v4

    Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers.  </br> 2. Enterprises - Other Equinix customers, vendors and partners.  </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-python\\\">Fabric Python SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>

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

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


import unittest

from equinix.services.fabricv4.models.precision_time_service_request import PrecisionTimeServiceRequest

class TestPrecisionTimeServiceRequest(unittest.TestCase):
    """PrecisionTimeServiceRequest unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> PrecisionTimeServiceRequest:
        """Test PrecisionTimeServiceRequest
            include_option 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 `PrecisionTimeServiceRequest`
        """
        model = PrecisionTimeServiceRequest()
        if include_optional:
            return PrecisionTimeServiceRequest(
                type = 'NTP',
                name = '',
                package = {"code":"NTP_STANDARD"},
                connections = [
                    {"uuid":"095be615-a8ad-4c33-8e9c-c7612fbf6c9f"}
                    ],
                ipv4 = {"primary":"10.0.0.1","secondary":"10.0.0.2","networkMask":"255.255.255.240","defaultGateway":"10.0.0.3"},
                ntp_advanced_configuration = [
                    equinix.services.fabricv4.models.md5.md5(
                        type = 'ASCII', 
                        key_number = 10, 
                        key = '0123456789', )
                    ],
                ptp_advanced_configuration = equinix.services.fabricv4.models.ptp_advance_configuration.ptpAdvanceConfiguration(
                    time_scale = 'ARB', 
                    domain = 0, 
                    priority1 = 128, 
                    priority2 = 128, 
                    log_announce_interval = 1, 
                    log_sync_interval = -4, 
                    log_delay_req_interval = -4, 
                    transport_mode = 'MULTICAST', 
                    grant_time = 300, ),
                project = equinix.services.fabricv4.models.project.Project(
                    project_id = '44f4c4f8-2f39-494e-838c-d8e640591be5', ),
                order = equinix.services.fabricv4.models.precision_time_order.precisionTimeOrder(
                    purchase_order_number = '', 
                    customer_reference_number = '', 
                    order_number = '', )
            )
        else:
            return PrecisionTimeServiceRequest(
                type = 'NTP',
                name = '',
                package = {"code":"NTP_STANDARD"},
                connections = [
                    {"uuid":"095be615-a8ad-4c33-8e9c-c7612fbf6c9f"}
                    ],
                ipv4 = {"primary":"10.0.0.1","secondary":"10.0.0.2","networkMask":"255.255.255.240","defaultGateway":"10.0.0.3"},
        )
        """

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

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