mock.calls
Claude Code.icon
mock.calls は、モック関数が呼び出された際の引数の履歴を記録する配列です。
基本構造
code:ts
const fn = vi.fn()
fn('a', 'b')
fn('c')
console.log(fn.mock.calls)
// 'a', 'b'], ['c'
mock.calls[0] → 1回目の呼び出しの引数配列 ['a', 'b']
mock.calls[1] → 2回目の呼び出しの引数配列 ['c']
mock.calls.length → 呼び出し回数 2
よくある使い方
code:ts
// 呼び出し回数の検証
expect(fn).toHaveBeenCalledTimes(2)
// 特定の引数で呼ばれたか
expect(fn).toHaveBeenCalledWith('a', 'b')
// mock.callsを直接使って細かく検証
expect(fn.mock.calls00).toBe('a')
関連プロパティ
table:_
プロパティ 内容
mock.calls 各呼び出しの引数配列
mock.results 各呼び出しの戻り値 ({type, value})
mock.lastCall 最後の呼び出しの引数配列
mock.instances new で呼ばれた場合の this
リセット
code:ts
fn.mockClear() // calls, results等をリセット(実装は残る)
fn.mockReset() // リセット + 実装もundefined返却に戻す
fn.mockRestore() // 元の実装に戻す(spyOn用)