# coding: utf-8

"""
    authentik

    Making authentication simple.

    The version of the OpenAPI document: 2025.6.0
    Contact: hello@goauthentik.io
    Generated by OpenAPI Generator (https://openapi-generator.tech)

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


import unittest

from authentik_client.models.authenticator_validation_challenge import AuthenticatorValidationChallenge

class TestAuthenticatorValidationChallenge(unittest.TestCase):
    """AuthenticatorValidationChallenge unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> AuthenticatorValidationChallenge:
        """Test AuthenticatorValidationChallenge
            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 `AuthenticatorValidationChallenge`
        """
        model = AuthenticatorValidationChallenge()
        if include_optional:
            return AuthenticatorValidationChallenge(
                flow_info = authentik_client.models.contextual_flow_info.ContextualFlowInfo(
                    title = '', 
                    background = '', 
                    cancel_url = '', 
                    layout = 'stacked', ),
                component = 'ak-stage-authenticator-validate',
                response_errors = {
                    'key' : [
                        authentik_client.models.error_detail.ErrorDetail(
                            string = '', 
                            code = '', )
                        ]
                    },
                pending_user = '',
                pending_user_avatar = '',
                device_challenges = [
                    authentik_client.models.device_challenge.DeviceChallenge(
                        device_class = '', 
                        device_uid = '', 
                        challenge = {
                            'key' : null
                            }, 
                        last_used = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                    ],
                configuration_stages = [
                    authentik_client.models.selectable_stage.SelectableStage(
                        pk = '', 
                        name = '', 
                        verbose_name = '', 
                        meta_model_name = '', )
                    ]
            )
        else:
            return AuthenticatorValidationChallenge(
                pending_user = '',
                pending_user_avatar = '',
                device_challenges = [
                    authentik_client.models.device_challenge.DeviceChallenge(
                        device_class = '', 
                        device_uid = '', 
                        challenge = {
                            'key' : null
                            }, 
                        last_used = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                    ],
                configuration_stages = [
                    authentik_client.models.selectable_stage.SelectableStage(
                        pk = '', 
                        name = '', 
                        verbose_name = '', 
                        meta_model_name = '', )
                    ],
        )
        """

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

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