Files
bun.sh/test/js/node/util/bun-inspect.test.ts
dave caruso 6fd0043f6b Add util.inspect.custom support to util.inspect/Bun.inspect/console.log (#4194)
* start work on util.inspect.custom

* asdf

* finish util inspect custom inspect

* inspect

* fix tests

* revert

* tidy

* revert

* oops

* test

* fix issues
2023-08-17 20:56:52 -07:00

24 lines
841 B
TypeScript

import { describe, it, expect } from "bun:test";
describe("Bun.inspect", () => {
it("depth < 0 throws", () => {
expect(() => Bun.inspect({}, { depth: -1 })).toThrow();
expect(() => Bun.inspect({}, { depth: -13210 })).toThrow();
});
it("depth = Infinity works", () => {
function createRecursiveObject(n: number): any {
if (n === 0) return { hi: true };
return { a: createRecursiveObject(n - 1) };
}
const obj = createRecursiveObject(1000);
expect(Bun.inspect(obj, { depth: Infinity })).toContain("hi");
// this gets converted to u16, which if just truncating, will turn into 0
expect(Bun.inspect(obj, { depth: 0x0fff0000 })).toContain("hi");
});
it("depth = 0", () => {
expect(Bun.inspect({ a: { b: { c: { d: 1 } } } }, { depth: 0 })).toEqual("{\n a: [Object ...]\n}");
});
});