"""Shared fixtures for auth infrastructure tests."""

from __future__ import annotations

import pytest


@pytest.fixture
def valid_discovery_document() -> dict[str, object]:
    """Valid OIDC discovery document."""
    return {
        "issuer": "https://auth.example.com",
        "authorization_endpoint": "https://auth.example.com/authorize",
        "token_endpoint": "https://auth.example.com/token",
        "userinfo_endpoint": "https://auth.example.com/userinfo",
        "jwks_uri": "https://auth.example.com/.well-known/jwks.json",
        "end_session_endpoint": "https://auth.example.com/logout",
        "revocation_endpoint": "https://auth.example.com/revoke",
        "scopes_supported": ["openid", "profile", "email", "groups"],
        "response_types_supported": ["code", "token", "id_token"],
        "grant_types_supported": ["authorization_code", "refresh_token"],
        "code_challenge_methods_supported": ["S256", "plain"],
        "claims_supported": ["sub", "email", "name", "groups", "preferred_username"],
    }
