# coding: utf-8

"""
    Sonatype Lifecycle Public REST API

    No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)

    The version of the OpenAPI document: 1.200.0-01
    Contact: community@sonatype.com
    Generated by OpenAPI Generator (https://openapi-generator.tech)

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


import unittest

from sonatype_iq_api_client.models.api_policy_waivers_applicable_to_violation_dto import ApiPolicyWaiversApplicableToViolationDTO

class TestApiPolicyWaiversApplicableToViolationDTO(unittest.TestCase):
    """ApiPolicyWaiversApplicableToViolationDTO unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> ApiPolicyWaiversApplicableToViolationDTO:
        """Test ApiPolicyWaiversApplicableToViolationDTO
            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 `ApiPolicyWaiversApplicableToViolationDTO`
        """
        model = ApiPolicyWaiversApplicableToViolationDTO()
        if include_optional:
            return ApiPolicyWaiversApplicableToViolationDTO(
                active_waivers = [
                    sonatype_iq_api_client.models.api_policy_waiver_dto.ApiPolicyWaiverDTO(
                        associated_package_url = '', 
                        comment = '', 
                        component_identifier = sonatype_iq_api_client.models.api_component_identifier_dtov2.ApiComponentIdentifierDTOV2(
                            coordinates = {
                                'key' : ''
                                }, 
                            format = '', ), 
                        component_name = '', 
                        component_upgrade_available = True, 
                        constraint_facts = [
                            sonatype_iq_api_client.models.constraint_fact.ConstraintFact(
                                condition_facts = [
                                    sonatype_iq_api_client.models.condition_fact.ConditionFact(
                                        condition_index = 56, 
                                        condition_type_id = '', 
                                        reason = '', 
                                        reference = sonatype_iq_api_client.models.trigger_reference.TriggerReference(
                                            type = 'SECURITY_VULNERABILITY_REFID', 
                                            value = '', ), 
                                        summary = '', 
                                        trigger_json = '', )
                                    ], 
                                constraint_id = '', 
                                constraint_name = '', 
                                operator_name = '', )
                            ], 
                        constraint_facts_json = '', 
                        create_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        creator_id = '', 
                        creator_name = '', 
                        display_name = sonatype_iq_api_client.models.component_display_name.ComponentDisplayName(
                            name = '', 
                            parts = [
                                sonatype_iq_api_client.models.component_display_name_part.ComponentDisplayNamePart(
                                    field = '', 
                                    value = '', )
                                ], ), 
                        expire_when_remediation_available = True, 
                        expiry_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        for_container_image = True, 
                        for_container_image_component = True, 
                        hash = '', 
                        is_obsolete = True, 
                        matcher_strategy = 'DEFAULT', 
                        policy_id = '', 
                        policy_name = '', 
                        policy_violation_id = '', 
                        policy_waiver_id = '', 
                        policy_waiver_reason_id = '', 
                        reason_text = '', 
                        scope_owner_id = '', 
                        scope_owner_name = '', 
                        scope_owner_type = '', 
                        threat_level = 56, 
                        vulnerability_id = '', )
                    ],
                expired_waivers = [
                    sonatype_iq_api_client.models.api_policy_waiver_dto.ApiPolicyWaiverDTO(
                        associated_package_url = '', 
                        comment = '', 
                        component_identifier = sonatype_iq_api_client.models.api_component_identifier_dtov2.ApiComponentIdentifierDTOV2(
                            coordinates = {
                                'key' : ''
                                }, 
                            format = '', ), 
                        component_name = '', 
                        component_upgrade_available = True, 
                        constraint_facts = [
                            sonatype_iq_api_client.models.constraint_fact.ConstraintFact(
                                condition_facts = [
                                    sonatype_iq_api_client.models.condition_fact.ConditionFact(
                                        condition_index = 56, 
                                        condition_type_id = '', 
                                        reason = '', 
                                        reference = sonatype_iq_api_client.models.trigger_reference.TriggerReference(
                                            type = 'SECURITY_VULNERABILITY_REFID', 
                                            value = '', ), 
                                        summary = '', 
                                        trigger_json = '', )
                                    ], 
                                constraint_id = '', 
                                constraint_name = '', 
                                operator_name = '', )
                            ], 
                        constraint_facts_json = '', 
                        create_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        creator_id = '', 
                        creator_name = '', 
                        display_name = sonatype_iq_api_client.models.component_display_name.ComponentDisplayName(
                            name = '', 
                            parts = [
                                sonatype_iq_api_client.models.component_display_name_part.ComponentDisplayNamePart(
                                    field = '', 
                                    value = '', )
                                ], ), 
                        expire_when_remediation_available = True, 
                        expiry_time = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                        for_container_image = True, 
                        for_container_image_component = True, 
                        hash = '', 
                        is_obsolete = True, 
                        matcher_strategy = 'DEFAULT', 
                        policy_id = '', 
                        policy_name = '', 
                        policy_violation_id = '', 
                        policy_waiver_id = '', 
                        policy_waiver_reason_id = '', 
                        reason_text = '', 
                        scope_owner_id = '', 
                        scope_owner_name = '', 
                        scope_owner_type = '', 
                        threat_level = 56, 
                        vulnerability_id = '', )
                    ]
            )
        else:
            return ApiPolicyWaiversApplicableToViolationDTO(
        )
        """

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

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