const { expect } = require('expect')
const { FixedThreadPool, PoolEvents } = require('../../../lib')
const { WorkerFunctions } = require('../../test-types')
-const TestUtils = require('../../test-utils')
+const { waitWorkerEvents } = require('../../test-utils')
describe('Fixed thread pool test suite', () => {
const numberOfThreads = 6
expect(inError).toBeInstanceOf(Error)
expect(inError.message).toBeDefined()
expect(typeof inError.message === 'string').toBe(true)
- expect(inError.message).toContain(
- 'Error Message from ThreadWorker on worker'
- )
- expect(taskError.data).toStrictEqual(data)
+ expect(inError.message).toBe('Error Message from ThreadWorker')
+ expect(taskError).toStrictEqual({
+ workerId: expect.any(Number),
+ message: new Error('Error Message from ThreadWorker'),
+ data
+ })
expect(
errorPool.workerNodes.some(
workerNode => workerNode.usage.tasks.failed === 1
expect(inError).toBeInstanceOf(Error)
expect(inError.message).toBeDefined()
expect(typeof inError.message === 'string').toBe(true)
- expect(inError.message).toContain(
- 'Error Message from ThreadWorker:async on worker'
- )
- expect(taskError.data).toStrictEqual(data)
+ expect(inError.message).toBe('Error Message from ThreadWorker:async')
+ expect(taskError).toStrictEqual({
+ workerId: expect.any(Number),
+ message: new Error('Error Message from ThreadWorker:async'),
+ data
+ })
expect(
asyncErrorPool.workerNodes.some(
workerNode => workerNode.usage.tasks.failed === 1
})
it('Shutdown test', async () => {
- const exitPromise = TestUtils.waitWorkerEvents(
- pool,
- 'exit',
- numberOfThreads
- )
+ const exitPromise = waitWorkerEvents(pool, 'exit', numberOfThreads)
await pool.destroy()
const numberOfExitEvents = await exitPromise
expect(numberOfExitEvents).toBe(numberOfThreads)