Latihan 1: Mocking & Stubbing — Testing

Latihan 1 dari materi Mocking & Stubbing di Testing — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.

Buat fungsi createMock() yang mengembalikan mock function. Mock function ini harus:

  1. Bisa dipanggil seperti fungsi biasa
  2. Menyimpan riwayat: berapa kali dipanggil (callCount) dan argumen terakhir (lastArgs)
  3. Punya method mockReturnValue(val) untuk mengatur return value
  4. Punya method mockImplementation(fn) untuk mengganti implementasi
const mock = createMock();
mock.mockReturnValue(42);
mock(); // 42
mock(1, 2); // 42
console.log(mock.callCount); // 2
console.log(mock.lastArgs); // [1, 2]

Hint