diff options
author | Marvin Hagemeister <marvin@deno.com> | 2024-08-26 11:19:58 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-26 11:19:58 +0200 |
commit | 1dad29aa044967db5f16568dc2591ba2976699b0 (patch) | |
tree | c2f1d5324b87652ec6b7d1f90d9c985c1b96926b /tests/unit_node/cluster_test.ts | |
parent | aebe8947ae602d22734498b1ef3a771afe7a9adc (diff) |
fix(node/cluster): improve stubs to make log4js work (#25146)
- Add missing exports to `node:cluster`
- Fix default export not being an instance of `EventEmitter`
- Fix aliasing of properties
- Fix `disconnected` -> `disconnect` export naming
This makes `log4js` work in Deno. `karma` starts too, but somehow the
server isn't responding. That looks like a different issue.
Fixes https://github.com/denoland/deno/issues/24858
Diffstat (limited to 'tests/unit_node/cluster_test.ts')
-rw-r--r-- | tests/unit_node/cluster_test.ts | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/unit_node/cluster_test.ts b/tests/unit_node/cluster_test.ts new file mode 100644 index 000000000..d9a59ae63 --- /dev/null +++ b/tests/unit_node/cluster_test.ts @@ -0,0 +1,43 @@ +// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. +import { assertEquals } from "@std/assert"; +import cluster from "node:cluster"; +import * as clusterNamed from "node:cluster"; + +Deno.test("[node/cluster] has all node exports", () => { + assertEquals(cluster.isPrimary, true); + assertEquals(cluster.isMaster, true); + assertEquals(cluster.isWorker, false); + assertEquals(typeof cluster.disconnect, "function"); + assertEquals(typeof cluster.on, "function"); + assertEquals(cluster.workers, {}); + assertEquals(cluster.settings, {}); + assertEquals(cluster.SCHED_NONE, 1); + assertEquals(cluster.SCHED_RR, 2); + assertEquals(typeof cluster.fork, "function"); + assertEquals(typeof cluster.disconnect, "function"); + assertEquals(typeof cluster.setupPrimary, "function"); + assertEquals(cluster.setupPrimary, cluster.setupMaster); + + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.setupPrimary, clusterNamed.setupPrimary); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.setupMaster, clusterNamed.setupMaster); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.workers, clusterNamed.workers); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.settings, clusterNamed.settings); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.fork, clusterNamed.fork); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.disconnect, clusterNamed.disconnect); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.SCHED_NONE, clusterNamed.SCHED_NONE); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.SCHED_RR, clusterNamed.SCHED_RR); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.isWorker, clusterNamed.isWorker); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.isPrimary, clusterNamed.isPrimary); + // @ts-ignore Our @types/node version is too old + assertEquals(cluster.isMaster, clusterNamed.isMaster); +}); |