"""conftest.""" import datetime from typing import Any from mypy_boto3_secretsmanager import SecretsManagerClient import pytest from unittest.mock import MagicMock from src.models import ClientCredentials @pytest.fixture() def mock_service_client() -> MagicMock: """Return reusable SecretsManagerClient.""" return MagicMock(spec=SecretsManagerClient) @pytest.fixture() def expiration_string() -> str: """Return an expected string representation of expiration.""" return "2024-07-22 16:55:30.13455+0000" @pytest.fixture() def expiration_datetime() -> datetime.datetime: """Return corresponding datetime object expiration_string.""" return datetime.datetime( 2024, 7, 22, 16, 55, 30, 134550, datetime.timezone.utc, ) @pytest.fixture def mock_valid_auth0_response() -> dict[str, Any]: return { "access_token": "some_token", "expires_in": 36000, "token_type": "Bearer", } @pytest.fixture def mock_valid_client_credentials() -> ClientCredentials: return ClientCredentials( audience="https://valid.audience.io", client_id="valid_client_id", client_secret="valid_client_secret", grant_type="client_credentials", ) @pytest.fixture() def mock_arn() -> str: """Reusable ARN.""" return "some_arn"