lin*_*dan 4 javascript mocking jestjs
如果我有一个模拟功能,说myMockFunction我知道可以检查它的调用,如下所示:
const firstCall = myMockFunction.mock.calls[0];
Run Code Online (Sandbox Code Playgroud)
有没有一种简便的方法来获取最近的电话?
我认为以下方法会起作用:
const mostRecentCall = myMockFunction.mock.calls[myMockFunction.mock.calls.length -1];
Run Code Online (Sandbox Code Playgroud)
这似乎很笨拙/麻烦,有没有一种更清洁/更简便的方法?
ale*_*ero 10
https://jestjs.io/docs/mock-functions#custom-matchers
expect(myMockFunction).lastCalledWith()
如果调用是一个数组,并且您不希望保留其内容,则myMockFunction.mock.calls.pop()可以获取最后一个调用。
从jest v27.5.0开始,有一个新属性lastCall:
const mostRecentCall = myMockFunction.mock.lastCall;
Run Code Online (Sandbox Code Playgroud)