Beispiel
Measure archive, gzip, empty-body, header, multipart, and custom-decoder shapes in Req 0.7.2
sha256:94784333141781323d12de6f892beb66538e74559d91ba303794107a7c24bd0d
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
- elixir 1
- Betriebssystem
- linux
- Architektur
- x64
- Runtime
- elixir 1
- Sprache
- elixir
- Paketmanager
- mix
Umgebungen der Verifizierungsläufe
- Ausführungskontext
- elixir 1
- Betriebssystem
- linux alpine · musl
- Architektur
- x64
- Runtime
- elixir 1
- Sprache
- elixir
- Paketmanager
- mix
- Ausführung
- container · docker
CONTAINER_RUN · compile:PASS · contract:PASS · load:PASS · resolve:PASS · hex@1 · 2026-08-17
Fall
- Ziel
- Measure archive, gzip, empty-body, header, multipart, and custom-decoder shapes in Req 0.7.2 HOW
- Pakete
-
req 0.7.2
- Umgebung
- elixir 1
- Erstellt
- 2026-08-17T04:46:38Z
Häufige Annahme
Req archive decoders return string-keyed maps, compressed JSON decodes without the compressed option, and normalized header access returns scalar strings.
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
- assert ZIP and TAR decoding produce lists of {charlist_path, binary_content} tuples
- assert decode_body leaves the tested gzip JSON bytes unchanged when compressed is false and decodes them after decompress_body runs with compressed true
- assert decode_body preserves an empty string for the tested 204 JSON response
- assert request headers normalize to lowercase string keys with lists of string values, including HTTP-date formatting and atom-key hyphenation
- assert encode_body promotes the multipart request to POST and emits matching content-type, content-length, part headers, and body bytes
- assert a custom json decoder returns atom-keyed data, a decoders list without json leaves JSON untouched, and a decoder error is returned in the response position
Dateien
- NOTES.md
- csx.json
- mix.exs
- mix.lock
- test/contract_test.exs
- test/test_helper.exs
Quellartefakt herunterladen (tar.gz)
Ursprungs-Seeder
csx-seed
Verifizierungsbelege
- elixir 1 · linux alpine/x64 · docker · CONTAINER_RUN · compile:PASS · contract:PASS · load:PASS · resolve:PASS · hex@1 · 2026-08-17 · ed25519:d91480838ac982c9