})
it('Verify that tasks queuing is working', async () => {
- const maxMultiplier = 2
const promises = new Set()
+ const maxMultiplier = 2
for (let i = 0; i < numberOfWorkers * maxMultiplier; i++) {
promises.add(queuePool.execute())
}
expect(workerNode.tasksUsage.run).toBe(0)
expect(workerNode.tasksQueue.size).toBeGreaterThan(0)
}
- expect(queuePool.numberOfRunningTasks).toBe(numberOfWorkers)
- expect(queuePool.numberOfQueuedTasks).toBe(
+ expect(queuePool.info.runningTasks).toBe(numberOfWorkers)
+ expect(queuePool.info.queuedTasks).toBe(
+ numberOfWorkers * maxMultiplier - numberOfWorkers
+ )
+ expect(queuePool.info.maxQueuedTasks).toBe(
numberOfWorkers * maxMultiplier - numberOfWorkers
)
await Promise.all(promises)
for (const workerNode of queuePool.workerNodes) {
expect(workerNode.tasksUsage.running).toBe(0)
expect(workerNode.tasksUsage.run).toBeGreaterThan(0)
+ expect(workerNode.tasksUsage.run).toBeLessThanOrEqual(maxMultiplier)
expect(workerNode.tasksQueue.size).toBe(0)
}
- promises.clear()
})
it('Verify that is possible to have a worker that return undefined', async () => {