import { randomInt } from 'node:crypto'
+
import { expect } from 'expect'
+
import { FixedThreadPool } from '../../../lib/index.cjs'
import { InterleavedWeightedRoundRobinWorkerChoiceStrategy } from '../../../lib/pools/selection-strategies/interleaved-weighted-round-robin-worker-choice-strategy.cjs'
import { WeightedRoundRobinWorkerChoiceStrategy } from '../../../lib/pools/selection-strategies/weighted-round-robin-worker-choice-strategy.cjs'
it('Verify that WRR reset() resets internals', () => {
const strategy = new WeightedRoundRobinWorkerChoiceStrategy(pool)
- strategy.nextWorkerNodeKey = randomInt(1, 281474976710655)
- strategy.previousWorkerNodeKey = randomInt(1, 281474976710655)
- strategy.workerNodeVirtualTaskRunTime = randomInt(1, 281474976710655)
+ strategy.nextWorkerNodeKey = randomInt(1, 281474976710656)
+ strategy.previousWorkerNodeKey = randomInt(1, 281474976710656)
+ strategy.workerNodeVirtualTaskRunTime = randomInt(1, 281474976710656)
expect(strategy.nextWorkerNodeKey).toBeGreaterThan(0)
expect(strategy.previousWorkerNodeKey).toBeGreaterThan(0)
expect(strategy.workerNodeVirtualTaskRunTime).toBeGreaterThan(0)
expect(strategy.reset()).toBe(true)
expect(strategy.nextWorkerNodeKey).toBe(0)
expect(strategy.previousWorkerNodeKey).toBe(0)
- expect(strategy.workerNodeVirtualTaskRunTime).toBe(0)
+ expect(strategy.workerNodeVirtualTaskExecutionTime).toBe(0)
})
it('Verify that IWRR reset() resets internals', () => {
expect(strategy.previousWorkerNodeKey).toBe(0)
expect(strategy.roundId).toBe(0)
expect(strategy.workerNodeId).toBe(0)
- expect(strategy.workerNodeVirtualTaskRunTime).toBe(0)
+ expect(strategy.workerNodeVirtualTaskExecutionTime).toBe(0)
})
})