# 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_global_config_patch_request_traffic_policies_traffic_rulesets_value import V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue

class TestV1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue(unittest.TestCase):
    """V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue:
        """Test V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue
            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 `V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue`
        """
        model = V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue()
        if include_optional:
            return V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue(
                ruleset = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset(
                    description = 'example string', 
                    global_id = 1234567891011, 
                    is_global_sync = True, 
                    name = 'example string', 
                    rules = {
                        'key' : graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset_rules_value._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset_rules_value(
                            rule = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset_rules_value_rule._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset_rules_value_rule(
                                action = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset_rules_value_rule_action._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset_rules_value_rule_action(
                                    backup_circuit = graphiant_sdk.models._v1_portal_apikeys_post_request._v1_portal_apikeys_post_request(
                                        name = 'example string', ), 
                                    backup_circuit_label = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset_rules_value_rule_action_backup_circuit_label._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset_rules_value_rule_action_backupCircuitLabel(
                                        ipsec_label = 'ENUM_VALUE', 
                                        label = 'ENUM_VALUE', ), 
                                    egress = 'ENUM_VALUE', 
                                    logging = True, 
                                    primary_circuit = graphiant_sdk.models._v1_portal_apikeys_post_request._v1_portal_apikeys_post_request(
                                        name = 'example string', ), 
                                    primary_circuit_label = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset_rules_value_rule_action_backup_circuit_label._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset_rules_value_rule_action_backupCircuitLabel(
                                        ipsec_label = 'ENUM_VALUE', 
                                        label = 'ENUM_VALUE', ), 
                                    remark = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset_rules_value_rule_action_remark._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset_rules_value_rule_action_remark(
                                        val = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_dscp_match._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_dscp_match(
                                            code_point = 123, ), ), 
                                    set_sla_class = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_traffic_rulesets_value_ruleset_rules_value_rule_action_set_sla_class._v1_global_config_patch_request_trafficPolicies_trafficRulesets_value_ruleset_rules_value_rule_action_setSlaClass(
                                        class = 'ENUM_VALUE', ), ), 
                                description = 'example string', 
                                match = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match(
                                    application = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_application._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_application(), 
                                    content_filter = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_content_filter._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_contentFilter(), 
                                    destination_network = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_destination_network._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_destinationNetwork(), 
                                    destination_port = 123, 
                                    destination_port_range = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_destination_port_range._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_destinationPortRange(
                                        lower = 123, 
                                        upper = 123, ), 
                                    dscp = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_dscp._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_dscp(), 
                                    icmp_type = 123, 
                                    ip_protocol = 'ENUM_VALUE', 
                                    protocol = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_protocol._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_protocol(
                                        ip_protocol = 'ENUM_VALUE', ), 
                                    source_network = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_source_network._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_sourceNetwork(), 
                                    source_port = 123, 
                                    source_port_range = graphiant_sdk.models._v1_global_config_patch_request_traffic_policies_security_rulesets_value_ruleset_rules_value_rule_match_destination_port_range._v1_global_config_patch_request_trafficPolicies_securityRulesets_value_ruleset_rules_value_rule_match_destinationPortRange(
                                        lower = 123, 
                                        upper = 123, ), ), 
                                name = 'example string', 
                                seq = 123, ), )
                        }, )
            )
        else:
            return V1GlobalConfigPatchRequestTrafficPoliciesTrafficRulesetsValue(
        )
        """

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

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