# coding: utf-8

"""
    authentik

    Making authentication simple.

    The version of the OpenAPI document: 2026.5.0-rc1
    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.o_auth_source import OAuthSource

class TestOAuthSource(unittest.TestCase):
    """OAuthSource unit test stubs"""

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def make_instance(self, include_optional) -> OAuthSource:
        """Test OAuthSource
            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 `OAuthSource`
        """
        model = OAuthSource()
        if include_optional:
            return OAuthSource(
                pk = '',
                name = '',
                slug = 'z',
                enabled = True,
                promoted = True,
                authentication_flow = '',
                enrollment_flow = '',
                user_property_mappings = [
                    ''
                    ],
                group_property_mappings = [
                    ''
                    ],
                component = '',
                verbose_name = '',
                verbose_name_plural = '',
                meta_model_name = '',
                policy_engine_mode = 'all',
                user_matching_mode = 'identifier',
                managed = '',
                user_path_template = '',
                icon = '',
                icon_url = '',
                icon_themed_urls = authentik_client.models.themed_urls.ThemedUrls(
                    light = '', 
                    dark = '', ),
                group_matching_mode = 'identifier',
                provider_type = 'apple',
                request_token_url = '',
                authorization_url = '',
                access_token_url = '',
                profile_url = '',
                pkce = 'none',
                consumer_key = '',
                callback_url = '',
                additional_scopes = '',
                type = authentik_client.models.source_type.SourceType(
                    name = '', 
                    verbose_name = '', 
                    urls_customizable = True, 
                    request_token_url = '', 
                    authorization_url = '', 
                    access_token_url = '', 
                    profile_url = '', 
                    oidc_well_known_url = '', 
                    oidc_jwks_url = '', ),
                oidc_well_known_url = '',
                oidc_jwks_url = '',
                oidc_jwks = {
                    'key' : null
                    },
                authorization_code_auth_method = 'basic_auth'
            )
        else:
            return OAuthSource(
                pk = '',
                name = '',
                slug = 'z',
                component = '',
                verbose_name = '',
                verbose_name_plural = '',
                meta_model_name = '',
                managed = '',
                icon_url = '',
                icon_themed_urls = authentik_client.models.themed_urls.ThemedUrls(
                    light = '', 
                    dark = '', ),
                provider_type = 'apple',
                consumer_key = '',
                callback_url = '',
                type = authentik_client.models.source_type.SourceType(
                    name = '', 
                    verbose_name = '', 
                    urls_customizable = True, 
                    request_token_url = '', 
                    authorization_url = '', 
                    access_token_url = '', 
                    profile_url = '', 
                    oidc_well_known_url = '', 
                    oidc_jwks_url = '', ),
        )
        """

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

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