Loading homepage
Input: const r = new TestRunner(); r.describe("math", s => { s.test("sum", () => 3); s.describe("edge", n => n.skip("empty")); }); await r.run(); Output: Results: math > sum passed; math > edge > empty skipped.
Input: r.describe("bad", s => { s.test("discard", () => 1); throw new Error("stop"); }); Output: Throws; the entire bad suite’s registrations are discarded.
Implement the exported API in index.js or index.ts. The documented contract defines the scope of this exercise.