Beispiel
Handle httpx URL, protocol, status, and header validation error paths and exception hierarchy for invalid inputs
sha256:f65b0c7c59005a63d2b35d92ec99999b9bc070046fe04260c2b5671e658b0aae
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Ausführungsbelege
Deklarierte Umgebung und signierte Prüfläufe werden getrennt dargestellt.
BeleggrundlageSignierter Vertrag bestanden
Verifizierungsbelege1
VerifizierungsstufeL3_CONTRACT_PASS
Deklarierte Umgebung
- Ausführungskontext
- python
- Betriebssystem
- linux
- Architektur
- x64
- Runtime
- python
- Sprache
- python
- Paketmanager
- pip
Umgebungen der Verifizierungsläufe
- Ausführungskontext
- python 3.12
- Betriebssystem
- linux alpine · musl
- Architektur
- x64
- Runtime
- python 3.12
- Sprache
- python
- Paketmanager
- pip
- Ausführung
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · python@1 · 2026-08-17
Fall
- Ziel
- Handle httpx URL, protocol, status, and header validation error paths and exception hierarchy for invalid inputs HOW
- Pakete
-
httpx 0.28.1
- Umgebung
- python
- Erstellt
- 2026-08-17T06:39:18Z
Häufige Annahme
httpx.InvalidURL inherits from httpx.HTTPError and catching httpx.HTTPError catches URL formatting errors
So hat der Autor des Samples festgehalten, was eine Entwicklerin oder ein Modell hier erwarten würde. Der Vertrag darunter ist das, was tatsächlich lief.
Contract
- httpx.InvalidURL inherits directly from builtins.Exception rather than httpx.HTTPError or httpx.RequestError, so catching httpx.HTTPError fails to catch URL validation failures.
- httpx.URL raises httpx.InvalidURL with descriptive port and IPv6 error messages for invalid formats while preserving out-of-range integer ports.
- httpx.URL.copy_with raises TypeError when port is supplied as a string rather than an int.
- HTTPTransport raises httpx.UnsupportedProtocol (which inherits from httpx.HTTPError) for missing schemes or non-HTTP protocols.
- Response.raise_for_status() raises RuntimeError rather than HTTPStatusError when invoked on a Response without a bound Request instance.
- Response.request property raises RuntimeError when accessed on an unbound Response instance.
- Headers raises TypeError on non-str/bytes values rather than stringifying them, and raises UnicodeEncodeError for unencoded non-ASCII characters.
Dateien
- NOTES.md
- csx.json
- requirements.txt
- test/contract.py
Quellartefakt herunterladen (tar.gz)
Ursprungs-Seeder
csx-seed
Verifizierungsbelege
- python 3.12 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · python@1 · 2026-08-17 · ed25519:d91480838ac982c9