#31 : Add unit tests

This commit is contained in:
Vadim
2021-07-03 23:29:37 +03:00
parent 293798c8c3
commit 4ada9137e1

View File

@@ -0,0 +1,30 @@
import {
setIntervalImmediate,
} from './interval.js'
describe('setIntervalImmediate', () => {
beforeEach(() => {
jest.useFakeTimers();
})
it('runs callback immediately and them each n ms', () => {
let interval
const durationMs = 1000
const callNumbersToStopTimer = 3
let calledTimes = 0
const callback = () => {
calledTimes++
if (calledTimes === callNumbersToStopTimer) {
clearInterval(interval)
}
}
interval = setIntervalImmediate(callback, durationMs)
jest.runAllTimers()
expect(calledTimes).toBe(callNumbersToStopTimer)
expect(setInterval).toHaveBeenCalledWith(expect.any(Function), durationMs)
expect(clearInterval).toHaveBeenCalledWith(interval)
})
})