Files
Morgan Bartholomew 5209c256e9 [python] PY-80529 sync bundled django-stubs to 5.2.2
GitOrigin-RevId: 3a93ac3253fb47e532a5eb02bcc1ce328d0b1078
2025-07-25 13:27:06 +00:00

192 lines
6.7 KiB
Python

import decimal
from collections.abc import Callable, Iterable, Iterator, Mapping
from contextlib import AbstractContextManager
from decimal import Decimal
from io import StringIO
from logging import Logger
from types import TracebackType
from typing import Any, Protocol, SupportsIndex, TypeAlias, TypeVar, type_check_only
from django.apps.registry import Apps
from django.conf import LazySettings, Settings
from django.core.checks.registry import CheckRegistry
from django.db.backends.base.base import BaseDatabaseWrapper
from django.db.models.lookups import Lookup, Transform
from django.db.models.query_utils import RegisterLookupMixin
from django.test.runner import DiscoverRunner
from django.test.testcases import SimpleTestCase
from typing_extensions import Self
_TestClass: TypeAlias = type[SimpleTestCase]
_DecoratedTest: TypeAlias = Callable | _TestClass
_DT = TypeVar("_DT", bound=_DecoratedTest)
_C = TypeVar("_C", bound=Callable) # Any callable
TZ_SUPPORT: bool
class Approximate:
val: decimal.Decimal | float
places: int
def __init__(self, val: Decimal | float, places: int = ...) -> None: ...
class ContextList(list[dict[str, Any]]):
def __getitem__(self, key: str | SupportsIndex | slice) -> Any: ...
def get(self, key: str, default: Any | None = ...) -> Any: ...
def __contains__(self, key: object) -> bool: ...
def keys(self) -> set[str]: ...
class _TestState: ...
def setup_test_environment(debug: bool | None = ...) -> None: ...
def teardown_test_environment() -> None: ...
def get_runner(settings: LazySettings, test_runner_class: str | None = ...) -> type[DiscoverRunner]: ...
class TestContextDecorator:
attr_name: str | None
kwarg_name: str | None
def __init__(self, attr_name: str | None = ..., kwarg_name: str | None = ...) -> None: ...
def enable(self) -> Any: ...
def disable(self) -> None: ...
def __enter__(self) -> Apps | None: ...
def __exit__(
self,
exc_type: type[BaseException] | None,
exc_value: BaseException | None,
exc_tb: TracebackType | None,
) -> None: ...
def decorate_class(self, cls: _TestClass) -> _TestClass: ...
def decorate_callable(self, func: _C) -> _C: ...
def __call__(self, decorated: _DT) -> _DT: ...
class override_settings(TestContextDecorator):
enable_exception: Exception | None
options: dict[str, Any]
def __init__(self, **kwargs: Any) -> None: ...
wrapped: Settings
def save_options(self, test_func: _DecoratedTest) -> None: ...
def decorate_class(self, cls: type) -> type: ...
class modify_settings(override_settings):
wrapped: Settings
operations: list[tuple[str, dict[str, list[str] | str]]]
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
def save_options(self, test_func: _DecoratedTest) -> None: ...
options: dict[str, list[tuple[str, str] | str]]
class override_system_checks(TestContextDecorator):
registry: CheckRegistry
new_checks: list[Callable]
deployment_checks: list[Callable] | None
def __init__(self, new_checks: list[Callable], deployment_checks: list[Callable] | None = ...) -> None: ...
old_checks: set[Callable]
old_deployment_checks: set[Callable]
class CaptureQueriesContext:
connection: BaseDatabaseWrapper
force_debug_cursor: bool
initial_queries: int
final_queries: int | None
def __init__(self, connection: BaseDatabaseWrapper) -> None: ...
def __iter__(self) -> Iterator[dict[str, str]]: ...
def __getitem__(self, index: int) -> dict[str, str]: ...
def __len__(self) -> int: ...
@property
def captured_queries(self) -> list[dict[str, str]]: ...
def __enter__(self) -> Self: ...
def __exit__(
self,
exc_type: type[BaseException] | None,
exc_value: BaseException | None,
exc_tb: TracebackType | None,
) -> None: ...
class ignore_warnings(TestContextDecorator):
ignore_kwargs: dict[str, Any]
filter_func: Callable
def __init__(self, **kwargs: Any) -> None: ...
catch_warnings: AbstractContextManager[list | None]
requires_tz_support: Any
def isolate_lru_cache(lru_cache_object: Callable) -> AbstractContextManager[None]: ...
class override_script_prefix(TestContextDecorator):
prefix: str
def __init__(self, prefix: str) -> None: ...
old_prefix: str
class LoggingCaptureMixin:
logger: Logger
old_stream: Any
logger_output: Any
def setUp(self) -> None: ...
def tearDown(self) -> None: ...
class isolate_apps(TestContextDecorator):
installed_apps: tuple[str, ...]
def __init__(self, *installed_apps: Any, **kwargs: Any) -> None: ...
old_apps: Apps
def extend_sys_path(*paths: str) -> AbstractContextManager[None]: ...
def captured_output(stream_name: str) -> AbstractContextManager[StringIO]: ...
def captured_stdin() -> AbstractContextManager[StringIO]: ...
def captured_stdout() -> AbstractContextManager[StringIO]: ...
def captured_stderr() -> AbstractContextManager[StringIO]: ...
def freeze_time(t: float) -> AbstractContextManager[None]: ...
def tag(*tags: str) -> Callable[[_C], _C]: ...
_Signature: TypeAlias = str
_TestDatabase: TypeAlias = tuple[str, list[str]]
@type_check_only
class TimeKeeperProtocol(Protocol):
def timed(self, name: Any) -> AbstractContextManager[None]: ...
def print_results(self) -> None: ...
def dependency_ordered(
test_databases: Iterable[tuple[_Signature, _TestDatabase]], dependencies: Mapping[str, list[str]]
) -> list[tuple[_Signature, _TestDatabase]]: ...
def get_unique_databases_and_mirrors(
aliases: set[str] | None = ...,
) -> tuple[dict[_Signature, _TestDatabase], dict[str, Any]]: ...
def setup_databases(
verbosity: int,
interactive: bool,
*,
time_keeper: TimeKeeperProtocol | None = ...,
keepdb: bool = ...,
debug_sql: bool = ...,
parallel: int = ...,
aliases: Mapping[str, Any] | None = ...,
serialized_aliases: Iterable[str] | None = ...,
**kwargs: Any,
) -> list[tuple[BaseDatabaseWrapper, str, bool]]: ...
def teardown_databases(
old_config: Iterable[tuple[Any, str, bool]], verbosity: int, parallel: int = ..., keepdb: bool = ...
) -> None: ...
def require_jinja2(test_func: _C) -> _C: ...
def register_lookup(
field: type[RegisterLookupMixin], *lookups: type[Lookup | Transform], lookup_name: str | None = ...
) -> AbstractContextManager[None]: ...
def garbage_collect() -> None: ...
__all__ = (
"Approximate",
"ContextList",
"isolate_lru_cache",
"garbage_collect",
"get_runner",
"CaptureQueriesContext",
"ignore_warnings",
"isolate_apps",
"modify_settings",
"override_settings",
"override_system_checks",
"tag",
"requires_tz_support",
"setup_databases",
"setup_test_environment",
"teardown_test_environment",
)