X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=tests%2Futils.test.mjs;h=ac544f89c5a2f504a6c768c212461e30a8467ee9;hb=4511441a7858ae4871037148b3c9505ac422f4f2;hp=74c53a1629b7f3ef7738bdbc50e3f908216457dd;hpb=a074ffee1b46f43d0dcfba58128748c7492104dd;p=poolifier.git diff --git a/tests/utils.test.mjs b/tests/utils.test.mjs index 74c53a16..ac544f89 100644 --- a/tests/utils.test.mjs +++ b/tests/utils.test.mjs @@ -19,6 +19,7 @@ import { max, median, min, + once, round, secureRandom, sleep @@ -66,13 +67,15 @@ describe('Utils test suite', () => { it('Verify getWorkerType() behavior', () => { expect( - getWorkerType(new Worker('./tests/worker-files/thread/testWorker.js')) + getWorkerType(new Worker('./tests/worker-files/thread/testWorker.mjs')) ).toBe(WorkerTypes.thread) expect(getWorkerType(cluster.fork())).toBe(WorkerTypes.cluster) }) it('Verify getWorkerId() behavior', () => { - const threadWorker = new Worker('./tests/worker-files/thread/testWorker.js') + const threadWorker = new Worker( + './tests/worker-files/thread/testWorker.mjs' + ) const clusterWorker = cluster.fork() expect(getWorkerId(threadWorker)).toBe(threadWorker.threadId) expect(getWorkerId(clusterWorker)).toBe(clusterWorker.id) @@ -235,4 +238,19 @@ describe('Utils test suite', () => { expect(max(2, 1)).toBe(2) expect(max(1, 1)).toBe(1) }) + + it('Verify once()', () => { + let called = 0 + const fn = () => ++called + const onceFn = once(fn, this) + const result1 = onceFn() + expect(called).toBe(1) + expect(result1).toBe(1) + const result2 = onceFn() + expect(called).toBe(1) + expect(result2).toBe(1) + const result3 = onceFn() + expect(called).toBe(1) + expect(result3).toBe(1) + }) })