fix: properly handle dynamic pool with zero minimum size
[poolifier.git] / tests / pools / cluster / dynamic.test.mjs
index 8c9196d1e9976db770a21865853187a862d34a00..870a5f4df9aa0f3bc997b4463f67746d3e7d8c42 100644 (file)
@@ -152,4 +152,23 @@ describe('Dynamic cluster pool test suite', () => {
     // We need to clean up the resources after our test
     await pool.destroy()
   })
+
+  it.skip('Verify that a pool with zero worker works', async () => {
+    const pool = new DynamicClusterPool(
+      0,
+      max,
+      './tests/worker-files/thread/testWorker.mjs'
+    )
+    expect(pool.starting).toBe(false)
+    expect(pool.workerNodes.length).toBe(pool.info.minSize)
+    const maxMultiplier = 10000
+    const promises = new Set()
+    for (let i = 0; i < max * maxMultiplier; i++) {
+      promises.add(pool.execute())
+    }
+    await Promise.all(promises)
+    expect(pool.workerNodes.length).toBe(max)
+    // We need to clean up the resources after our test
+    await pool.destroy()
+  })
 })