Files
bun.sh/test/js/node/process-binding.test.ts
2025-01-21 01:55:12 -08:00

33 lines
1.2 KiB
TypeScript

import { isWindows } from "harness";
describe("process.binding", () => {
test("process.binding('constants')", () => {
/* @ts-ignore */
const constants = process.binding("constants");
expect(constants).toBeDefined();
expect(constants).toHaveProperty("os");
expect(constants).toHaveProperty("crypto");
expect(constants).toHaveProperty("fs");
expect(constants).toHaveProperty("trace");
expect(constants).toHaveProperty("zlib");
});
test("process.binding('uv')", () => {
/* @ts-ignore */
const uv = process.binding("uv");
expect(uv).toBeDefined();
expect(uv).toHaveProperty("errname");
expect(uv).toHaveProperty("UV_EACCES");
expect(uv.errname(-4)).toBe(isWindows ? "Unknown system error: -4" : "EINTR");
// force the number to be represented as a double
expect(uv.errname(Number("-5.9") + 1.9)).toBe(isWindows ? "Unknown system error: -4" : "EINTR");
expect(uv.errname(-4)).toBe(isWindows ? "Unknown system error: -4" : "EINTR");
expect(uv.errname(5)).toBe("Unknown system error: 5");
const map = uv.getErrorMap();
expect(map).toBeDefined();
expect(map.get(uv.UV_EISCONN)).toEqual(["EISCONN", "socket is already connected"]);
});
});