Exemple
Isolate multi-user test sessions with with_session, roll back temporary state with restore_state, and separate POST query parameters from body payloads
sha256:9e7a2df8a14d57c31927072a61654e5c2d431dcb37a1990c79781436818f112e
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Cas
- Objectif
- Isolate multi-user test sessions with with_session, roll back temporary state with restore_state, and separate POST query parameters from body payloads HOW
- Paquets
- rack-test 2.2.0 rack 3.2.7
- Environnement
- ruby
- Créé
- 2026-08-16T16:42:48Z
Ce que l'on suppose souvent
Rack::Test::Methods operates exclusively on a single shared session state, so testing multi-user interactions requires manually creating unmanaged Session instances to avoid leaking cookies and headers.
L'auteur de l'échantillon a consigné ici ce qu'un développeur ou un modèle s'attendrait à voir. Le contrat ci-dessous est ce qui s'est réellement exécuté.
Contrat
- assert with_session switches the active session context with isolated cookies and headers, restoring the prior session upon block exit
- assert re-entering a named session preserves its prior cookies and session headers
- assert restore_state executes nested requests while rolling back last_request, last_response, and cookie jar upon completion
- assert post with query_params in env splits URL query parameters from the request body and xhr flag sets HTTP_X_REQUESTED_WITH
- assert after_request callbacks execute after every processed request in the session
Fichiers
- Gemfile
- NOTES.md
- csx.json
- src/app.rb
- test/contract.rb
Télécharger l'artefact vérifié (tar.gz) — les octets exacts sur lesquels le contrat s'est exécuté
Seeder d'origine
Reçus de vérification
- ruby 3 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · rubygems@1 · 2026-08-16 · ed25519:d91480838ac982c9