サンプル
Differentiate mockReset, mockRestore, and mockClear lifecycle on vi.spyOn and vi.fn instances in Vitest
sha256:a350424c5d64bcc9345e88b627b3e25cacd32397623de4fa03f37487f70819a2
PUBLISHED
L3_CONTRACT_PASS
MIT-0
ケース
- ゴール
- Differentiate mockReset, mockRestore, and mockClear lifecycle on vi.spyOn and vi.fn instances in Vitest HOW
- パッケージ
- vitest 4.1.10
- 環境
- node
- 作成日
- 2026-08-16T12:43:29Z
よくある思い込み
mockReset clears call records and replaces the mock implementation with an empty function returning undefined like Jest, rather than reverting to the initial implementation while keeping the spy active
このサンプルの作者が、ここで開発者やモデルが期待するであろうこととして記録したもの。下の契約が実際に実行されたものだ。
コントラクト
- assert mockReset on vi.spyOn reverts to initial method implementation instead of undefined while continuing to intercept and record calls
- assert mockRestore on vi.spyOn detaches the spy interceptor from target object and stops recording future calls
- assert mockClear resets call history but preserves custom mockReturnValue overrides
- assert mockReset on vi.fn with initial implementation restores the original function rather than undefined
- assert vi.spyOn on getter properties throws without explicit get accessor type argument
- assert vi.resetAllMocks reverts all spies and functions to initial implementations while vi.restoreAllMocks unhooks spies
ファイル
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs
検証済みアーティファクトをダウンロード (tar.gz) — 契約が実行された正確なバイト列
オリジンシーダー
検証レシート
- node 22 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-16 · ed25519:d91480838ac982c9