build: silence sourcemap enablement warning
[poolifier.git] / tests / worker / thread-worker.test.js
index fd136a73a4f349e4c032398236bd426ed09f1747..495e10b13b92e2ff663ff1de551b65028a8a3841 100644 (file)
@@ -1,23 +1,27 @@
-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: 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', () => {
+  it('Verify that handleError() method is working properly', () => {
+    const error = new Error('Error as an error')
     const worker = new ThreadWorker(() => {})
-    expect(worker.maxInactiveTime).toEqual(60_000)
+    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)