X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=tests%2Fworker%2Fcluster-worker.test.mjs;h=3392d96cd1502ccdd90fd1f72a21381570d4976e;hb=b1d4f434444dd51c9006ab9b515d717c3d7f27a8;hp=8ceb403ddffbf13b2720be8c215fe73bb4c94903;hpb=f80125ca65716684805c2e70d304b42bb941d536;p=poolifier.git diff --git a/tests/worker/cluster-worker.test.mjs b/tests/worker/cluster-worker.test.mjs index 8ceb403d..3392d96c 100644 --- a/tests/worker/cluster-worker.test.mjs +++ b/tests/worker/cluster-worker.test.mjs @@ -1,16 +1,10 @@ import { expect } from 'expect' import { restore, stub } from 'sinon' -import { ClusterWorker } from '../../lib/index.js' -import { DEFAULT_TASK_NAME } from '../../lib/utils.js' -describe('Cluster worker test suite', () => { - const sendStub = stub().returns() - class SpyWorker extends ClusterWorker { - getMainWorker () { - return { send: sendStub } - } - } +import { ClusterWorker } from '../../lib/index.cjs' +import { DEFAULT_TASK_NAME } from '../../lib/utils.cjs' +describe('Cluster worker test suite', () => { afterEach(() => { restore() }) @@ -25,6 +19,7 @@ describe('Cluster worker test suite', () => { send: stub().returns() }) worker.handleKillMessage() + expect(worker.getMainWorker.calledTwice).toBe(true) expect(worker.getMainWorker().send.calledOnce).toBe(true) expect(worker.opts.killHandler.calledOnce).toBe(true) }) @@ -37,6 +32,10 @@ describe('Cluster worker test suite', () => { return 2 } const worker = new ClusterWorker({ fn1, fn2 }) + worker.getMainWorker = stub().returns({ + id: 1, + send: stub().returns() + }) expect(worker.removeTaskFunction(0, fn1)).toStrictEqual({ status: false, error: new TypeError('name parameter is not a string') @@ -45,10 +44,6 @@ describe('Cluster worker test suite', () => { status: false, error: new TypeError('name parameter is an empty string') }) - worker.getMainWorker = stub().returns({ - id: 1, - send: stub().returns() - }) expect(worker.taskFunctions.get(DEFAULT_TASK_NAME)).toBeInstanceOf(Function) expect(worker.taskFunctions.get('fn1')).toBeInstanceOf(Function) expect(worker.taskFunctions.get('fn2')).toBeInstanceOf(Function) @@ -73,6 +68,7 @@ describe('Cluster worker test suite', () => { expect(worker.taskFunctions.get('fn1')).toBeInstanceOf(Function) expect(worker.taskFunctions.get('fn2')).toBeUndefined() expect(worker.taskFunctions.size).toBe(2) + expect(worker.getMainWorker.calledTwice).toBe(true) expect(worker.getMainWorker().send.calledOnce).toBe(true) }) @@ -85,9 +81,13 @@ describe('Cluster worker test suite', () => { expect(worker.handleError(errorMessage)).toStrictEqual(errorMessage) }) - it('Verify worker invokes the getMainWorker() and send() methods', () => { - const worker = new SpyWorker(() => {}) + it('Verify that sendToMainWorker() method invokes the getMainWorker() and send() methods', () => { + const worker = new ClusterWorker(() => {}) + worker.getMainWorker = stub().returns({ + send: stub().returns() + }) worker.sendToMainWorker({ ok: 1 }) + expect(worker.getMainWorker.calledTwice).toBe(true) expect(worker.getMainWorker().send.calledOnce).toBe(true) }) })