在 `bun test` 中監視方法
使用 spyOn 工具在 Bun 的測試執行器中跟蹤方法呼叫。
TypeScript
import { test, expect, spyOn } from "bun:test";
const leo = {
name: "Leonardo",
sayHi(thing: string) {
console.log(`Sup I'm ${this.name} and I like ${thing}`);
},
};
const spy = spyOn(leo, "sayHi");
建立監視器後,在 expect 斷言中使用它來檢查方法呼叫。
TypeScript
import { test, expect, spyOn } from "bun:test";
const leo = {
name: "Leonardo",
sayHi(thing: string) {
console.log(`Sup I'm ${this.name} and I like ${thing}`);
},
};
const spy = spyOn(leo, "sayHi");
test("turtles", () => { // [!code ++]
expect(spy).toHaveBeenCalledTimes(0); // [!code ++]
leo.sayHi("pizza"); // [!code ++]
expect(spy).toHaveBeenCalledTimes(1); // [!code ++]
expect(spy.mock.calls).toEqual([["pizza"]]); // [!code ++]
}); // [!code ++]
請參閱模擬。