# coding: utf-8

"""
    Graphiant APIs

    **To use the APIs:**  1) Login using `/api/v1/auth/login`   2) Copy the value of \"token\" in the response   3) Click the \"Authorize\" button   4) In the \"Value\" text field enter: `Bearer <your token>`   5) Click \"Authorize\"   6) All requests are now authorized.  **Token valid for 2 hours. If expired:**   - Login again, click \"Authorize\", paste new token.

    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 graphiant_sdk.models.v1_devices_device_id_config_put_request_core_interfaces_value_interface import V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface

class TestV1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface(unittest.TestCase):
    """V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface:
        """Test V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface
            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 `V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface`
        """
        model = V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface()
        if include_optional:
            return V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface(
                admin_status = True,
                alias = 'example string',
                circuit = 'example string',
                core_neighbor = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor(
                    cost = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost(
                        dynamic = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost_dynamic._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost_dynamic(
                            bandwidth = 123, 
                            latency = 123, ), 
                        static = 123, ), 
                    ospf_cost = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost(
                        static = 123, ), 
                    peer_hostname = 'example string', 
                    type = 'ENUM_VALUE', ),
                core_to_core_tunnel = graphiant_sdk.models.core_to_core_tunnel.coreToCoreTunnel(),
                create_link_local_address = True,
                default = graphiant_sdk.models.default.default(),
                description = 'example string',
                duplex = 'example string',
                dynamic = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost_dynamic._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost_dynamic(
                    bandwidth = 123, 
                    latency = 123, ),
                flex_algos = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_flex_algos._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_flexAlgos(
                    flex_algo_names = [
                        'example string'
                        ], ),
                gateway_neighbor = graphiant_sdk.models._v1_account_mfa_get_200_response._v1_account_mfa_get_200_response(
                    type = 'ENUM_VALUE', ),
                gw = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw(),
                interface_type = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_interface_type._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_interfaceType(
                    core_neighbor = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor(
                        cost = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost(
                            dynamic = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost_dynamic._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost_dynamic(
                                bandwidth = 123, 
                                latency = 123, ), 
                            static = 123, ), 
                        ospf_cost = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost(
                            static = 123, ), 
                        peer_hostname = 'example string', 
                        type = 'ENUM_VALUE', ), 
                    core_to_core_tunnel = graphiant_sdk.models.core_to_core_tunnel.coreToCoreTunnel(), 
                    default = graphiant_sdk.models.default.default(), 
                    gateway_neighbor = graphiant_sdk.models._v1_account_mfa_get_200_response._v1_account_mfa_get_200_response(
                        type = 'ENUM_VALUE', ), 
                    wan = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_interface_type_wan._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_interfaceType_wan(
                        gw = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_interface_type_wan_gw._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_interfaceType_wan_gw(), 
                        type = 'ENUM_VALUE', 
                        vrf_name = 'example string', ), 
                    wan_management = graphiant_sdk.models.wan_management.wanManagement(), ),
                ipsec = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_ipsec._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_ipsec(
                    anti_replay_window_size = 123, 
                    dh_group = 'ENUM_VALUE', 
                    dpd_interval = 123, 
                    encryption_alg = 'ENUM_VALUE', 
                    esn = True, 
                    ike_integrity = 'ENUM_VALUE', 
                    initiator = True, 
                    ipsec_encryption_alg = 'ENUM_VALUE', 
                    ipsec_integrity = 'ENUM_VALUE', 
                    label = 'ENUM_VALUE', 
                    local_address = 'example string', 
                    local_circuit = 'example string', 
                    local_ike_peer_identity = 'example string', 
                    perfect_forward_secrecy = 'ENUM_VALUE', 
                    preshared_key = 'example string', 
                    reauth_interval = 123, 
                    rekey_interval = 123, 
                    remote_address = 'example string', 
                    remote_ike_peer_identity = 'example string', ),
                ipv4 = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw(
                    address = graphiant_sdk.models._v1_global_config_patch_request_snmps_value_config_engine_endpoints_value_engine_endpoint_addresses_value._v1_global_config_patch_request_snmps_value_config_engineEndpoints_value_engineEndpoint_addresses_value(), 
                    dhcp = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_dhcp._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_dhcp(
                        dhcp_client = True, 
                        dhcp_relay = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_dhcp_dhcp_relay._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_dhcp_dhcpRelay(
                            relay_servers = [
                                'example string'
                                ], ), ), 
                    vrrp = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_vrrp._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_vrrp(
                        group = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_vrrp_group._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_vrrp_group(
                            accept_mode = True, 
                            allow_inter_operability = True, 
                            description = 'example string', 
                            enabled = True, 
                            preempt = True, 
                            priority = 123, 
                            tracked_interfaces = [
                                graphiant_sdk.models._v1_extranets_get_200_response_policies_inner_branches_excluded_devices_inner_interfaces_inner_ipv4_vrrp_group_tracked_interfaces_inner._v1_extranets_get_200_response_policies_inner_branches_excludedDevices_inner_interfaces_inner_ipv4_vrrpGroup_trackedInterfaces_inner(
                                    interface = 'example string', 
                                    priority_decrement = 123, )
                                ], 
                            virtual_ip = 'example string', 
                            virtual_router_id = 123, ), ), ),
                ipv6 = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw(
                    address = graphiant_sdk.models._v1_global_config_patch_request_snmps_value_config_engine_endpoints_value_engine_endpoint_addresses_value._v1_global_config_patch_request_snmps_value_config_engineEndpoints_value_engineEndpoint_addresses_value(), 
                    dhcp = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_dhcp._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_dhcp(
                        dhcp_client = True, 
                        dhcp_relay = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_dhcp_dhcp_relay._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_dhcp_dhcpRelay(
                            relay_servers = [
                                'example string'
                                ], ), ), 
                    vrrp = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_vrrp._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_vrrp(
                        group = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw_gw_vrrp_group._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw_gw_vrrp_group(
                            accept_mode = True, 
                            allow_inter_operability = True, 
                            description = 'example string', 
                            enabled = True, 
                            preempt = True, 
                            priority = 123, 
                            tracked_interfaces = [
                                graphiant_sdk.models._v1_extranets_get_200_response_policies_inner_branches_excluded_devices_inner_interfaces_inner_ipv4_vrrp_group_tracked_interfaces_inner._v1_extranets_get_200_response_policies_inner_branches_excludedDevices_inner_interfaces_inner_ipv4_vrrpGroup_trackedInterfaces_inner(
                                    interface = 'example string', 
                                    priority_decrement = 123, )
                                ], 
                            virtual_ip = 'example string', 
                            virtual_router_id = 123, ), ), ),
                lan = 'example string',
                lldp_enabled = True,
                loopback = True,
                max_transmission_unit = 123,
                mpls_enabled = True,
                ospf_cost = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost(
                    dynamic = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost_dynamic._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost_dynamic(
                        bandwidth = 123, 
                        latency = 123, ), 
                    static = 123, ),
                ospf_interface = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_ospf_interface._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_ospfInterface(
                    interface = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_ospf_interface_interface._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_ospfInterface_interface(
                        bfd = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_bfd._v1_devices__deviceId__config_put_request_core_coreVrf_bgpNeighbors_value_neighbor_bfd(), 
                        cost = 123, 
                        dead_interval_value = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_ospfv2_process_areas_value_area_interfaces_value_interface_dead_interval_value._v1_devices__deviceId__config_put_request_core_coreVrf_ospfv2_process_areas_value_area_interfaces_value_interface_deadIntervalValue(
                            dead_interval = 123, ), 
                        dr_priority = 123, 
                        hello_interval_value = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_ospfv2_process_areas_value_area_interfaces_value_interface_hello_interval_value._v1_devices__deviceId__config_put_request_core_coreVrf_ospfv2_process_areas_value_area_interfaces_value_interface_helloIntervalValue(
                            hello_interval = 123, ), 
                        interface_name = 'example string', 
                        mtu = 123, 
                        mtu_ignore = True, 
                        prefix_sid = 123, 
                        retransmit_interval_value = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_ospfv2_process_areas_value_area_interfaces_value_interface_retransmit_interval_value._v1_devices__deviceId__config_put_request_core_coreVrf_ospfv2_process_areas_value_area_interfaces_value_interface_retransmitIntervalValue(
                            retransmit_interval = 123, ), 
                        type = 'ENUM_VALUE', ), ),
                peer_device_id = 1234567891011,
                peer_hostname = 'example string',
                security_zone = 'example string',
                speed = 1234567891011,
                static = 123,
                subinterfaces = {
                    'key' : graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_subinterfaces_value._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_subinterfaces_value(
                        interface = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface(
                            core_neighbor = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor(
                                cost = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost(
                                    dynamic = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost_dynamic._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost_dynamic(
                                        bandwidth = 123, 
                                        latency = 123, ), 
                                    static = 123, ), 
                                ospf_cost = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_core_neighbor_cost._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_coreNeighbor_Cost(
                                    static = 123, ), 
                                peer_hostname = 'example string', 
                                type = 'ENUM_VALUE', ), 
                            default = graphiant_sdk.models.default.default(), 
                            gateway_neighbor = graphiant_sdk.models._v1_account_mfa_get_200_response._v1_account_mfa_get_200_response(
                                type = 'ENUM_VALUE', ), 
                            interface_type = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_interface_type._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_interfaceType(
                                core_to_core_tunnel = graphiant_sdk.models.core_to_core_tunnel.coreToCoreTunnel(), 
                                default = graphiant_sdk.models.default.default(), 
                                wan = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_interface_type_wan._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_interfaceType_wan(
                                    gw = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_interface_type_wan_gw._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_interfaceType_wan_gw(), 
                                    type = 'ENUM_VALUE', 
                                    vrf_name = 'example string', ), 
                                wan_management = graphiant_sdk.models.wan_management.wanManagement(), ), 
                            vlan_id = 123, 
                            wan = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_wan._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_subinterfaces_value_interface_wan(
                                type = 'ENUM_VALUE', 
                                vrf_name = 'example string', ), ), )
                    },
                tcp_mss = 123,
                tcp_mss_v4 = 123,
                tcp_mss_v6 = 123,
                tunnel_interface = 'example string',
                tunnel_underlay = 'example string',
                wan = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_wan._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_wan(
                    gw = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_interfaces_value_interface_gw._v1_devices__deviceId__config_put_request_core_interfaces_value_interface_gw(), 
                    type = 'ENUM_VALUE', 
                    vrf_name = 'example string', ),
                wan_management = graphiant_sdk.models.wan_management.wanManagement(),
                x_talk_filter = True
            )
        else:
            return V1DevicesDeviceIdConfigPutRequestCoreInterfacesValueInterface(
        )
        """

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

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