X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=tests%2Fworker%2Fthread-worker.test.js;h=072617d35a4e47d3e1c7c0912b754e2afe4bb0cc;hb=999ef664722a6ef639e3b3a90542e3ed2f38288c;hp=4cf2c045d7f6ab43adf17196777b1162e5dee381;hpb=a61a07243eee5cc54e7cf0d8e231202781f73f30;p=poolifier.git diff --git a/tests/worker/thread-worker.test.js b/tests/worker/thread-worker.test.js index 4cf2c045..072617d3 100644 --- a/tests/worker/thread-worker.test.js +++ b/tests/worker/thread-worker.test.js @@ -1,23 +1,32 @@ const { expect } = require('expect') const { ThreadWorker } = require('../../lib') -let numberOfMessagesPosted = 0 -const postMessage = function () { - numberOfMessagesPosted++ -} -class SpyWorker extends ThreadWorker { - getMainWorker () { - return { postMessage } +describe('Thread worker test suite', () => { + let numberOfMessagesPosted = 0 + const postMessage = () => { + ++numberOfMessagesPosted + } + class SpyWorker extends ThreadWorker { + constructor (fn) { + super(fn) + this.port = { postMessage } + } } -} -describe('Thread worker test suite', () => { it('Verify worker has default maxInactiveTime', () => { const worker = new ThreadWorker(() => {}) - expect(worker.opts.maxInactiveTime).toEqual(60000) + expect(worker.opts.maxInactiveTime).toStrictEqual(60000) + }) + + it('Verify that handleError() method is working properly', () => { + const error = new Error('Error as an error') + const worker = new ThreadWorker(() => {}) + expect(worker.handleError(error)).toStrictEqual(error) + const errorMessage = 'Error as a string' + expect(worker.handleError(errorMessage)).toStrictEqual(errorMessage) }) - it('Verify worker invoke the getMainWorker and postMessage methods', () => { + it('Verify worker invokes the postMessage() method on port property', () => { const worker = new SpyWorker(() => {}) worker.sendToMainWorker({ ok: 1 }) expect(numberOfMessagesPosted).toBe(1)