repositories
/
poolifier.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix: fix worker choice strategy retries mechanism on some edge cases
[poolifier.git]
/
tests
/
pools
/
abstract
/
abstract-pool.test.js
diff --git
a/tests/pools/abstract/abstract-pool.test.js
b/tests/pools/abstract/abstract-pool.test.js
index 4fd76d03585bd7f76966591ff0f54bfc2300594f..03bcce050f35a2f8907f0974ddf8c1c8c828937d 100644
(file)
--- a/
tests/pools/abstract/abstract-pool.test.js
+++ b/
tests/pools/abstract/abstract-pool.test.js
@@
-1,4
+1,5
@@
const { expect } = require('expect')
const { expect } = require('expect')
+const sinon = require('sinon')
const {
DynamicClusterPool,
DynamicThreadPool,
const {
DynamicClusterPool,
DynamicThreadPool,
@@
-900,14
+901,20
@@
describe('Abstract pool test suite', () => {
})
it.skip("Verify that pool event emitter 'backPressure' event can register a callback", async () => {
})
it.skip("Verify that pool event emitter 'backPressure' event can register a callback", async () => {
- const pool = new DynamicThreadPool(
- Math.floor(numberOfWorkers / 2),
+ const pool = new FixedThreadPool(
numberOfWorkers,
'./tests/worker-files/thread/testWorker.js',
{
enableTasksQueue: true
}
)
numberOfWorkers,
'./tests/worker-files/thread/testWorker.js',
{
enableTasksQueue: true
}
)
+ for (const workerNode of pool.workerNodes) {
+ workerNode.hasBackPressure = sinon
+ .stub()
+ .onFirstCall()
+ .returns(true)
+ .returns(false)
+ }
const promises = new Set()
let poolBackPressure = 0
let poolInfo
const promises = new Set()
let poolBackPressure = 0
let poolInfo
@@
-915,10
+922,12
@@
describe('Abstract pool test suite', () => {
++poolBackPressure
poolInfo = info
})
++poolBackPressure
poolInfo = info
})
- for (let i = 0; i <
Math.pow(numberOfWorkers, 2)
; i++) {
+ for (let i = 0; i <
numberOfWorkers * 2
; i++) {
promises.add(pool.execute())
}
promises.add(pool.execute())
}
+ // console.log(pool.info.backPressure)
await Promise.all(promises)
await Promise.all(promises)
+ // console.log(pool.info.backPressure)
expect(poolBackPressure).toBe(1)
expect(poolInfo).toStrictEqual({
version,
expect(poolBackPressure).toBe(1)
expect(poolInfo).toStrictEqual({
version,