Files
bun.sh/test/js/node/process-binding.test.ts

34 lines
1.1 KiB
TypeScript

describe("process.binding", () => {
test("process.binding() with unsupported module property access", () => {
/* @ts-ignore */
const unsupported = process.binding("buffer");
expect(() => unsupported.kMaxLength).toThrow();
});
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("EINTR");
expect(uv.errname(5)).toBe("Unknown system error 5");
const map = uv.getErrorMap();
expect(map).toBeDefined();
expect(map.get(-56)).toEqual(["EISCONN", "socket is already connected"]);
});
});