Coverage for human_requests/abstraction/warmup.py: 100%
20 statements
« prev ^ index » next coverage.py v7.14.1, created at 2026-05-28 00:39 +0000
« prev ^ index » next coverage.py v7.14.1, created at 2026-05-28 00:39 +0000
1from __future__ import annotations
3from dataclasses import dataclass
4from typing import TYPE_CHECKING
6from human_requests.network_analyzer.anomaly_sniffer import HeaderAnomalySniffer
8if TYPE_CHECKING:
9 from human_requests import HumanBrowser, HumanContext, HumanPage
12@dataclass
13class Warmup:
14 """Runtime context passed to warmup scripts."""
16 browser: "HumanBrowser"
17 """Browser session available to warmup scripts."""
18 context: "HumanContext"
19 """Browser context created during warmup."""
20 page: "HumanPage"
21 """Page used during warmup scripts."""
22 sniffer: HeaderAnomalySniffer | None
23 """Optional header sniffer used during warmup when header sniffing is enabled."""
24 timeout_ms: int
25 """Effective timeout, in milliseconds, shared by warmup actions."""
26 test_mode: bool
27 """Whether the client was started in test mode."""
28 prefixes: dict[str, str]
29 """Resolved shared prefix values configured for the app."""