Files
bun.sh/test/js/node/process-binding.test.ts
dave caruso 29b22175bf feat(runtime): add process.binding uv/natives/config + make global object properties lazy (#5355)
* binding uv

* we did that

* some more bindings

* fix doc

* fix uv

* yo

* static hash table nonsense <3

* huge refactor to the global object i am not ready for merge conflicts

* it works part 3

* lose

---------

Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
2023-09-15 08:22:06 -07:00

27 lines
898 B
TypeScript

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("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"]);
});
});