/** @license https://github.com/facebook/jest/blob/master/LICENSE */ function forEach(items, callback) { for (let index = 0; index < items.length; index++) { callback(items[index]); } } const mockCallback = jest.fn((x) => 42 + x); forEach([0, 1], mockCallback); test("このモック関数は2回呼ばれます", () => { expect(mockCallback.mock.calls.length).toBe(2); }); test("このモック関数の最初の呼び出しのときの第1引数はゼロです", () => { expect(mockCallback.mock.calls[0][0]).toBe(0); }); test("このモック関数の2回目の呼び出しのときの第1引数は1です", () => { expect(mockCallback.mock.calls[1][0]).toBe(1); }); test("このモック関数の最初の呼び出しのときの戻り値は42です", () => { expect(mockCallback.mock.results[0].value).toBe(42); });