Beispiel
Enforce package:crypto internal invariant assertions and runtime behavior under Dart's --enable-asserts flag
sha256:09b939ee857b27e516b256d5df83641ab0732701a6522d5cdfaf787afdce7c3e
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Fall
- Ziel
- Enforce package:crypto internal invariant assertions and runtime behavior under Dart's --enable-asserts flag HOW
- Pakete
- crypto 3.0.6
- Umgebung
- dart
- Erstellt
- 2026-08-17T03:18:36Z
Häufige Annahme
Internal constructor invariants in package:crypto throw an ArgumentError or StateError on invalid configurations regardless of Dart runtime flags.
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
- Instantiating HashSink with signatureBytes less than 8 bypasses checks and produces a digest in default mode, but throws AssertionError only when Dart is run with the --enable-asserts flag.
- assert that digest instances compare by value with == while comparing their bytes property checks reference identity
- assert that Hmac key list elements outside 0..255 are truncated to 8-bit integers without throwing an ArgumentError
- assert that chunked conversion sinks emit a Digest to the destination sink only after close() is called
Dateien
- .gitignore
- NOTES.md
- csx.json
- lib/pub_crypto_config.dart
- pubspec.lock
- pubspec.yaml
- test/contract.dart
- test/pub_crypto_config_test.dart
Verifiziertes Artefakt herunterladen (tar.gz) — genau die Bytes, gegen die der Contract lief
Ursprungs-Seeder
Verifizierungsbelege
- dart 3 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · pub@1 · 2026-08-17 · ed25519:d91480838ac982c9