import { expect } from 'expect'
-import { CircularArray } from '../../../lib/circular-array.cjs'
+import { CircularBuffer } from '../../../lib/circular-buffer.cjs'
import {
DynamicClusterPool,
DynamicThreadPool,
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
workerChoiceStrategy
- ).workerNodeVirtualTaskRunTime
+ ).workerNodeVirtualTaskExecutionTime
).toBe(0)
} else if (
workerChoiceStrategy ===
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
workerChoiceStrategy
- ).workerNodeVirtualTaskRunTime
+ ).workerNodeVirtualTaskExecutionTime
).toBe(0)
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
failed: 0
},
runTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
waitTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
failed: 0
},
runTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
waitTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
failed: 0
},
runTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
waitTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
failed: 0
},
runTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
waitTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
waitTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
waitTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
failed: 0
},
runTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
waitTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
elu: expect.objectContaining({
idle: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
active: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
})
})
})
failed: 0
},
runTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
waitTime: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
elu: expect.objectContaining({
idle: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
active: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
})
})
})
median: false
},
waitTime: {
- aggregate: false,
- average: false,
+ aggregate: true,
+ average: true,
median: false
},
elu: {
median: false
},
waitTime: {
- aggregate: false,
- average: false,
+ aggregate: true,
+ average: true,
median: false
},
elu: {
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: expect.objectContaining({
idle: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
active: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
})
})
})
} else {
expect(workerNode.usage.runTime.average).toBeGreaterThan(0)
}
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.average == null) {
+ expect(workerNode.usage.waitTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.average).toBeGreaterThan(0)
+ }
if (workerNode.usage.elu.active.aggregate == null) {
expect(workerNode.usage.elu.active.aggregate).toBeUndefined()
} else {
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: expect.objectContaining({
idle: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
active: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
})
})
})
} else {
expect(workerNode.usage.runTime.average).toBeGreaterThan(0)
}
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.average == null) {
+ expect(workerNode.usage.waitTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.average).toBeGreaterThan(0)
+ }
if (workerNode.usage.elu.active.aggregate == null) {
expect(workerNode.usage.elu.active.aggregate).toBeUndefined()
} else {
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: expect.objectContaining({
idle: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
}),
active: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
})
})
})
} else {
expect(workerNode.usage.runTime.median).toBeGreaterThan(0)
}
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.median == null) {
+ expect(workerNode.usage.waitTime.median).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.median).toBeGreaterThan(0)
+ }
if (workerNode.usage.elu.active.aggregate == null) {
expect(workerNode.usage.elu.active.aggregate).toBeUndefined()
} else {
median: false
},
waitTime: {
- aggregate: false,
- average: false,
+ aggregate: true,
+ average: true,
median: false
},
elu: {
median: false
},
waitTime: {
- aggregate: false,
- average: false,
+ aggregate: true,
+ average: true,
median: false
},
elu: {
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
} else {
expect(workerNode.usage.runTime.average).toBeGreaterThan(0)
}
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.average == null) {
+ expect(workerNode.usage.waitTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.average).toBeGreaterThan(0)
+ }
}
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
pool.workerChoiceStrategiesContext.defaultWorkerChoiceStrategy
- ).workerNodeVirtualTaskRunTime
+ ).workerNodeVirtualTaskExecutionTime
).toBeGreaterThanOrEqual(0)
// We need to clean up the resources after our test
await pool.destroy()
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
} else {
expect(workerNode.usage.runTime.average).toBeGreaterThan(0)
}
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.average == null) {
+ expect(workerNode.usage.waitTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.average).toBeGreaterThan(0)
+ }
}
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
pool.workerChoiceStrategiesContext.defaultWorkerChoiceStrategy
- ).workerNodeVirtualTaskRunTime
+ ).workerNodeVirtualTaskExecutionTime
).toBeGreaterThanOrEqual(0)
// We need to clean up the resources after our test
await pool.destroy()
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
} else {
expect(workerNode.usage.runTime.median).toBeGreaterThan(0)
}
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.median == null) {
+ expect(workerNode.usage.waitTime.median).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.median).toBeGreaterThan(0)
+ }
}
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
pool.workerChoiceStrategiesContext.defaultWorkerChoiceStrategy
- ).workerNodeVirtualTaskRunTime
+ ).workerNodeVirtualTaskExecutionTime
).toBeGreaterThanOrEqual(0)
// We need to clean up the resources after our test
await pool.destroy()
median: false
},
waitTime: {
- aggregate: false,
- average: false,
+ aggregate: true,
+ average: true,
median: false
},
elu: {
median: false
},
waitTime: {
- aggregate: false,
- average: false,
+ aggregate: true,
+ average: true,
median: false
},
elu: {
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
expect(workerNode.usage.tasks.executed).toBeLessThanOrEqual(
max * maxMultiplier
)
+ if (workerNode.usage.runTime.aggregate == null) {
+ expect(workerNode.usage.runTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.runTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.runTime.average == null) {
+ expect(workerNode.usage.runTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.runTime.average).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.average == null) {
+ expect(workerNode.usage.waitTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.average).toBeGreaterThan(0)
+ }
}
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
failed: 0
},
runTime: expect.objectContaining({
- history: expect.any(CircularArray)
+ history: expect.any(CircularBuffer)
+ }),
+ waitTime: expect.objectContaining({
+ history: expect.any(CircularBuffer)
}),
- waitTime: {
- history: new CircularArray()
- },
elu: {
idle: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
},
active: {
- history: new CircularArray()
+ history: expect.any(CircularBuffer)
}
}
})
expect(workerNode.usage.tasks.executed).toBeLessThanOrEqual(
max * maxMultiplier
)
+ if (workerNode.usage.runTime.aggregate == null) {
+ expect(workerNode.usage.runTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.runTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.runTime.average == null) {
+ expect(workerNode.usage.runTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.runTime.average).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.aggregate == null) {
+ expect(workerNode.usage.waitTime.aggregate).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.aggregate).toBeGreaterThan(0)
+ }
+ if (workerNode.usage.waitTime.average == null) {
+ expect(workerNode.usage.waitTime.average).toBeUndefined()
+ } else {
+ expect(workerNode.usage.waitTime.average).toBeGreaterThan(0)
+ }
}
expect(
pool.workerChoiceStrategiesContext.workerChoiceStrategies.get(
await pool.destroy()
})
- it("Verify INTERLEAVED_WEIGHTED_ROUND_ROBIN strategy internals aren't resets after setting it", async () => {
+ it("Verify INTERLEAVED_WEIGHTED_ROUND_ROBIN strategy internals aren't reset after setting it", async () => {
const workerChoiceStrategy =
WorkerChoiceStrategies.INTERLEAVED_WEIGHTED_ROUND_ROBIN
let pool = new FixedThreadPool(