Beispiel
Show that Set comparison policy can be reset by replacement even after identity mode was enabled.
sha256:be568ae4dfa6ca70997019d57f8927ef41a1281a77737965d777cc3fee8ad853
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Fall
- Ziel
- Show that Set comparison policy can be reset by replacement even after identity mode was enabled. HOW
- Pakete
- set 1.1.1
- Umgebung
- ruby
- Erstellt
- 2026-08-16T16:51:25Z
Häufige Annahme
Once `Set#compare_by_identity` is enabled, a later `Set#replace` keeps identity semantics so membership for value-equal values still requires object identity.
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 that calling `replace` with a default-set changes `compare_by_identity?` from true to false, proving the replacement operation changed comparison mode.
- assert that after that replacement, a value-equal probe object is now found by `include?`, silently showing identity mode was not retained.
Dateien
- Gemfile
- NOTES.md
- csx.json
- test/contract.rb
Verifiziertes Artefakt herunterladen (tar.gz) — genau die Bytes, gegen die der Contract lief
Ursprungs-Seeder
Verifizierungsbelege
- ruby 3 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · rubygems@1 · 2026-08-16 · ed25519:d91480838ac982c9