# 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_core_vrf_bgp_neighbors_value import V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue

class TestV1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue(unittest.TestCase):
    """V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue:
        """Test V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue
            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 `V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue`
        """
        model = V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue()
        if include_optional:
            return V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue(
                neighbor = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_bgp_neighbors_value_neighbor._v1_devices__deviceId__config_put_request_core_coreVrf_bgpNeighbors_value_neighbor(
                    address_families = {
                        'key' : graphiant_sdk.models._v1_gateways_put_request_details_ipsec_gateway_routing_bgp_address_families_value._v1_gateways_put_request_details_ipsecGateway_routing_bgp_addressFamilies_value(
                            family = graphiant_sdk.models._v1_gateways_put_request_details_ipsec_gateway_routing_bgp_address_families_value_family._v1_gateways_put_request_details_ipsecGateway_routing_bgp_addressFamilies_value_family(
                                address_family = 'ENUM_VALUE', 
                                inbound_policy = graphiant_sdk.models._v1_global_config_patch_request_routing_policies_value_policy_statements_value_statement_actions_value_action_call_policy._v1_global_config_patch_request_routingPolicies_value_policy_statements_value_statement_actions_value_action_callPolicy(
                                    policy = 'example string', ), 
                                outbound_policy = graphiant_sdk.models._v1_global_config_patch_request_routing_policies_value_policy_statements_value_statement_actions_value_action_call_policy._v1_global_config_patch_request_routingPolicies_value_policy_statements_value_statement_actions_value_action_callPolicy(
                                    policy = 'example string', ), ), )
                        }, 
                    allow_as_in = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_allow_as_in._v1_devices__deviceId__config_put_request_core_coreVrf_bgpNeighbors_value_neighbor_allowAsIn(
                        count = 123, ), 
                    as_override = True, 
                    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(), 
                    default_originate = 'ENUM_VALUE', 
                    ebgp_multihop_ttl = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_ebgp_multihop_ttl._v1_devices__deviceId__config_put_request_core_coreVrf_bgpNeighbors_value_neighbor_ebgpMultihopTtl(
                        multi_hop = 123, ), 
                    enabled = True, 
                    hold_timer = 123, 
                    hold_timer_value = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_hold_timer_value._v1_devices__deviceId__config_put_request_core_coreVrf_bgpNeighbors_value_neighbor_holdTimerValue(
                        timer = 123, ), 
                    keepalive_timer = 123, 
                    keepalive_timer_value = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_hold_timer_value._v1_devices__deviceId__config_put_request_core_coreVrf_bgpNeighbors_value_neighbor_holdTimerValue(
                        timer = 123, ), 
                    local_address = 'example string', 
                    local_interface = graphiant_sdk.models._v1_global_config_patch_request_routing_policies_value_policy_statements_value_statement_matches_value_match_source_interface._v1_global_config_patch_request_routingPolicies_value_policy_statements_value_statement_matches_value_match_sourceInterface(
                        interface = 'example string', ), 
                    max_prefix_value = graphiant_sdk.models._v1_devices__device_id__config_put_request_core_core_vrf_bgp_neighbors_value_neighbor_max_prefix_value._v1_devices__deviceId__config_put_request_core_coreVrf_bgpNeighbors_value_neighbor_maxPrefixValue(
                        max_prefix = 123, ), 
                    md5_password = graphiant_sdk.models._v1_gateways_put_request_details_ipsec_gateway_routing_bgp_md5_password._v1_gateways_put_request_details_ipsecGateway_routing_bgp_md5Password(), 
                    peer_asn = 123, 
                    remote_address = 'example string', 
                    remove_private_as = True, 
                    send_community = True, )
            )
        else:
            return V1DevicesDeviceIdConfigPutRequestCoreCoreVrfBgpNeighborsValue(
        )
        """

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

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