X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=tests%2Fworker%2Fthread-worker.test.js;h=072617d35a4e47d3e1c7c0912b754e2afe4bb0cc;hb=5441aea6894a5031667db6447634fa5d97f69e36;hp=2bbb280fff2edefbd58ab8d6e3623695c83b3c38;hpb=90a9a10f90101fa6ad60683f4ce75bb422c8652d;p=poolifier.git diff --git a/tests/worker/thread-worker.test.js b/tests/worker/thread-worker.test.js index 2bbb280f..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 { 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(60_000) + 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)