ReviewOS

home-lang/home

Port Bun cross-runner expect matcher matrix

#108
Closed chris opened this 10 days ago ·
10 days ago

Tracks a focused tranche of #66.

  • Run the byte-identical upstream js/bun/test/expect.test.js instead of rewriting it to a native TODO.
  • Port Bun-compatible deep equality for maps, sets, circular graphs, boxed primitives, typed arrays, shared buffers, symbols, array holes, and subset matching.
  • Port property paths, promise expectations, async asymmetric matchers, key/value collection matchers, snapshots, and thrown-value diagnostics.
  • Implement expect.assertions() / expect.hasAssertions() with async callback completion.
  • Add a permanent exact-count regression.

Validation before publication:

  • expect.test.js: 398 passed, 10 upstream TODO, 0 failed/unsupported
  • adjacent expect/mock/spy matrices: green
  • full home_test: 1,082 tests, 1 expected skip, 0 failures
10 days ago

Completed in 36e4289 (feat(test): port cross-runner expect matrix) and pushed directly to main.

Final validation:

  • byte-identical Bun expect.test.js: 398 passed, 10 upstream TODO, 0 failed/unsupported
  • expect-extend.test.js: 28/28
  • jest-extended.test.js: 57/57 with 1 upstream TODO
  • mock-fn.test.js: 54/54
  • spyMatchers.test.ts: 145/145 with 5 upstream TODOs
  • full home_test: 1,082 tests, 1 expected skip, 0 failures

Sign in to comment on this issue.