X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=tests%2Fpools%2Fabstract%2Fabstract-pool.test.js;h=45371a31325e6cea532e87edd9b0c9c0fccd78dd;hb=ce3bdc7fa682f86fdb6f4cd57fe0ac3afe3af0de;hp=dbda7af72301be5e29ecc1125a691839ada6f85f;hpb=da77fb8b29c82e7be0336481eae8b239f04f6bc6;p=poolifier.git diff --git a/tests/pools/abstract/abstract-pool.test.js b/tests/pools/abstract/abstract-pool.test.js index dbda7af7..45371a31 100644 --- a/tests/pools/abstract/abstract-pool.test.js +++ b/tests/pools/abstract/abstract-pool.test.js @@ -193,7 +193,9 @@ describe('Abstract pool test suite', () => { medWaitTime: false }) } - expect(pool.workerChoiceStrategyContext.getTaskStatistics()).toStrictEqual({ + expect( + pool.workerChoiceStrategyContext.getTaskStatisticsRequirements() + ).toStrictEqual({ runTime: true, avgRunTime: true, medRunTime: false, @@ -210,7 +212,9 @@ describe('Abstract pool test suite', () => { .workerChoiceStrategies) { expect(workerChoiceStrategy.opts).toStrictEqual({ medRunTime: true }) } - expect(pool.workerChoiceStrategyContext.getTaskStatistics()).toStrictEqual({ + expect( + pool.workerChoiceStrategyContext.getTaskStatisticsRequirements() + ).toStrictEqual({ runTime: true, avgRunTime: false, medRunTime: true, @@ -227,7 +231,9 @@ describe('Abstract pool test suite', () => { .workerChoiceStrategies) { expect(workerChoiceStrategy.opts).toStrictEqual({ medRunTime: false }) } - expect(pool.workerChoiceStrategyContext.getTaskStatistics()).toStrictEqual({ + expect( + pool.workerChoiceStrategyContext.getTaskStatisticsRequirements() + ).toStrictEqual({ runTime: true, avgRunTime: true, medRunTime: false, @@ -286,9 +292,11 @@ describe('Abstract pool test suite', () => { workerNodes: numberOfWorkers, idleWorkerNodes: numberOfWorkers, busyWorkerNodes: 0, - runningTasks: 0, + executedTasks: 0, + executingTasks: 0, queuedTasks: 0, - maxQueuedTasks: 0 + maxQueuedTasks: 0, + failedTasks: 0 }) await pool.destroy() pool = new DynamicClusterPool( @@ -304,9 +312,11 @@ describe('Abstract pool test suite', () => { workerNodes: numberOfWorkers, idleWorkerNodes: numberOfWorkers, busyWorkerNodes: 0, - runningTasks: 0, + executedTasks: 0, + executingTasks: 0, queuedTasks: 0, - maxQueuedTasks: 0 + maxQueuedTasks: 0, + failedTasks: 0 }) await pool.destroy() }) @@ -332,18 +342,25 @@ describe('Abstract pool test suite', () => { './tests/worker-files/cluster/testWorker.js' ) for (const workerNode of pool.workerNodes) { - expect(workerNode.tasksUsage).toStrictEqual({ - ran: 0, - running: 0, - runTime: 0, - runTimeHistory: expect.any(CircularArray), - avgRunTime: 0, - medRunTime: 0, - waitTime: 0, - waitTimeHistory: expect.any(CircularArray), - avgWaitTime: 0, - medWaitTime: 0, - error: 0, + expect(workerNode.workerUsage).toStrictEqual({ + tasks: { + executed: 0, + executing: 0, + queued: 0, + failed: 0 + }, + runTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, + waitTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, elu: undefined }) } @@ -374,35 +391,49 @@ describe('Abstract pool test suite', () => { promises.add(pool.execute()) } for (const workerNode of pool.workerNodes) { - expect(workerNode.tasksUsage).toStrictEqual({ - ran: 0, - running: maxMultiplier, - runTime: 0, - runTimeHistory: expect.any(CircularArray), - avgRunTime: 0, - medRunTime: 0, - waitTime: 0, - waitTimeHistory: expect.any(CircularArray), - avgWaitTime: 0, - medWaitTime: 0, - error: 0, + expect(workerNode.workerUsage).toStrictEqual({ + tasks: { + executed: 0, + executing: maxMultiplier, + queued: 0, + failed: 0 + }, + runTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, + waitTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, elu: undefined }) } await Promise.all(promises) for (const workerNode of pool.workerNodes) { - expect(workerNode.tasksUsage).toStrictEqual({ - ran: maxMultiplier, - running: 0, - runTime: 0, - runTimeHistory: expect.any(CircularArray), - avgRunTime: 0, - medRunTime: 0, - waitTime: 0, - waitTimeHistory: expect.any(CircularArray), - avgWaitTime: 0, - medWaitTime: 0, - error: 0, + expect(workerNode.workerUsage).toStrictEqual({ + tasks: { + executed: maxMultiplier, + executing: 0, + queued: 0, + failed: 0 + }, + runTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, + waitTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, elu: undefined }) } @@ -422,41 +453,57 @@ describe('Abstract pool test suite', () => { } await Promise.all(promises) for (const workerNode of pool.workerNodes) { - expect(workerNode.tasksUsage).toStrictEqual({ - ran: expect.any(Number), - running: 0, - runTime: 0, - runTimeHistory: expect.any(CircularArray), - avgRunTime: 0, - medRunTime: 0, - waitTime: 0, - waitTimeHistory: expect.any(CircularArray), - avgWaitTime: 0, - medWaitTime: 0, - error: 0, + expect(workerNode.workerUsage).toStrictEqual({ + tasks: { + executed: expect.any(Number), + executing: 0, + queued: 0, + failed: 0 + }, + runTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, + waitTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, elu: undefined }) - expect(workerNode.tasksUsage.ran).toBeGreaterThan(0) - expect(workerNode.tasksUsage.ran).toBeLessThanOrEqual(maxMultiplier) + expect(workerNode.workerUsage.tasks.executed).toBeGreaterThan(0) + expect(workerNode.workerUsage.tasks.executed).toBeLessThanOrEqual( + maxMultiplier + ) } pool.setWorkerChoiceStrategy(WorkerChoiceStrategies.FAIR_SHARE) for (const workerNode of pool.workerNodes) { - expect(workerNode.tasksUsage).toStrictEqual({ - ran: 0, - running: 0, - runTime: 0, - runTimeHistory: expect.any(CircularArray), - avgRunTime: 0, - medRunTime: 0, - waitTime: 0, - waitTimeHistory: expect.any(CircularArray), - avgWaitTime: 0, - medWaitTime: 0, - error: 0, + expect(workerNode.workerUsage).toStrictEqual({ + tasks: { + executed: 0, + executing: 0, + queued: 0, + failed: 0 + }, + runTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, + waitTime: { + aggregation: 0, + average: 0, + median: 0, + history: expect.any(CircularArray) + }, elu: undefined }) - expect(workerNode.tasksUsage.runTimeHistory.length).toBe(0) - expect(workerNode.tasksUsage.waitTimeHistory.length).toBe(0) + expect(workerNode.workerUsage.runTime.history.length).toBe(0) + expect(workerNode.workerUsage.waitTime.history.length).toBe(0) } await pool.destroy() }) @@ -489,9 +536,11 @@ describe('Abstract pool test suite', () => { workerNodes: expect.any(Number), idleWorkerNodes: expect.any(Number), busyWorkerNodes: expect.any(Number), - runningTasks: expect.any(Number), + executedTasks: expect.any(Number), + executingTasks: expect.any(Number), queuedTasks: expect.any(Number), - maxQueuedTasks: expect.any(Number) + maxQueuedTasks: expect.any(Number), + failedTasks: expect.any(Number) }) await pool.destroy() }) @@ -523,9 +572,11 @@ describe('Abstract pool test suite', () => { workerNodes: expect.any(Number), idleWorkerNodes: expect.any(Number), busyWorkerNodes: expect.any(Number), - runningTasks: expect.any(Number), + executedTasks: expect.any(Number), + executingTasks: expect.any(Number), queuedTasks: expect.any(Number), - maxQueuedTasks: expect.any(Number) + maxQueuedTasks: expect.any(Number), + failedTasks: expect.any(Number) }) await pool.destroy() })