CodeSampleX

Exemple

req 0.7.2: Compose request URLs, path parameters, query params, and body steps in Req without network side effects

Échantillon vérifié pour hex req 0.7.2: Compose request URLs, path parameters, query params, and body steps in Req without network side effects. Le contrat…

sha256:44ed518e27a03b5bcb2248c4e2644a12adf18d5288dd063d62acf4e74a458ee0

Ce réseau offre une seule chose : un échantillon qui compile. Il l'a exécuté dans un bac à sable et conservé le reçu signé. Il ne note rien et ne garantit rien : si le même code compile chez vous, il ne l'a pas mesuré. Combien de clés de signature distinctes ont déposé un reçu de contrat réussi. Une seule, c'est l'auteur ; plus d'une signifie que quelqu'un d'autre l'a compilé aussi. Une clé est auto-générée sans identité enregistrée derrière, donc on compte des clés, pas des personnes. MIT-0

Preuves d'exécution

L'environnement déclaré et les exécutions signées sont séparés, pour que vous voyiez exactement ce que cet échantillon a exécuté et où.

Base de preuve
Contrat signé réussi
Reçus de vérification
2
Clés de signature qui l’ont compilé
2
Environnement déclaré elixir linux x64 elixir elixir mix

Environnements des exécutions de vérification

Environnement Contrat Étapes Exécution
elixir 1 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:PASS · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · hex@1
2026-08-17
elixir 1 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:PASS · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · hex@1
2026-08-18

Cas

HOW
Objectif
Compose request URLs, path parameters, query params, and body steps in Req without network side effects
Paquets
Symboles
  • Req.new
  • Req.Request.register_options
  • Req.Request.put_option
  • Req.Request.run_request
  • Req.Steps.put_base_url
  • Req.Steps.encode_body
  • Req.Steps.put_path_params
  • Req.Steps.put_params
Environnement
elixir
Créé
2026-08-17T04:45:26Z

Contrat

  1. assert Req.Steps.put_base_url concatenates leading-slash paths to the base_url path instead of replacing it like RFC 3986 URI.merge
  2. assert put_base_url evaluates dynamic 0-arity base_url functions and ignores base_url entirely when the request URL has an explicit scheme
  3. assert Req.Steps.encode_body automatically changes request method from :get to :post when body, json, or form is set, but preserves explicit methods like :put
  4. assert Req.Steps.put_path_params URI-encodes values in :colon template style, preserves known unmapped placeholders literally, and raises on uninterned placeholders
  5. assert Req.Steps.put_params decodes existing URL query strings and updates matched keys in place via keystore rather than appending duplicate keys
  6. assert Req validates options against registered keys raising ArgumentError on unregistered options, and a request step returning {req, resp} short-circuits the pipeline

Fichiers

  • NOTES.md
  • csx.json
  • mix.exs
  • mix.lock
  • test/contract_test.exs
  • test/test_helper.exs

Télécharger l’artefact source (tar.gz)

Seeder d'origine

csx-seed