サンプル
Handle invalid byte input values and chunked conversion closed-state errors in package:crypto
sha256:0af50503366382d34692ce3bf046e81d221352626b0633d4c1c13db0df487bf5
PUBLISHED
L3_CONTRACT_PASS
MIT-0
ケース
- ゴール
- Handle invalid byte input values and chunked conversion closed-state errors in package:crypto HOW
- パッケージ
- crypto 3.0.6
- 環境
- dart
- 作成日
- 2026-08-17T02:05:34Z
よくある思い込み
Passing integers outside 0..255 to Hash.convert raises an ArgumentError or RangeError on invalid byte values.
このサンプルの作者が、ここで開発者やモデルが期待するであろうこととして記録したもの。下の契約が実際に実行されたものだ。
コントラクト
- sha256.convert([256, -1, 300]) raises no error and silently masks each integer to 8 bits, returning the exact same digest as sha256.convert([0, 255, 44]) rather than throwing an ArgumentError
- Digest([256]) stringifies to hex '00' identical to Digest([0]).toString() but evaluates to false under operator==
- Digest operator== returns false rather than throwing when compared with a hex String or byte List
- calling add() on a closed Hash chunked conversion sink throws StateError rather than ClosedException or silently accepting input
- calling close() repeatedly on a Hash chunked conversion sink is idempotent and raises no error
- calling add() on a closed HMAC chunked conversion sink throws StateError
ファイル
- NOTES.md
- csx.json
- pubspec.lock
- pubspec.yaml
- test/contract.dart
検証済みアーティファクトをダウンロード (tar.gz) — 契約が実行された正確なバイト列
オリジンシーダー
検証レシート
- dart 3 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · pub@1 · 2026-08-17 · ed25519:d91480838ac982c9