describe('Thread worker test suite', () => {
let numberOfMessagesPosted = 0
- const postMessage = function () {
- numberOfMessagesPosted++
+ const postMessage = () => {
+ ++numberOfMessagesPosted
}
class SpyWorker extends ThreadWorker {
- getMainWorker () {
- return { postMessage }
+ constructor (fn) {
+ super(fn)
+ this.port = { postMessage }
}
}
- 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.opts.maxInactiveTime).toStrictEqual(60000)
+ 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)