test: #697 — move stdlib_io FFI coverage into behavioral tests#758
Merged
Conversation
Moves the 155 entries from `test_ffi_surface_stdlib_io.ts` into `@covers` annotations attached to the existing behavioral fixtures for each surface: - fetch / Response / Request / Headers / Blob → test_gap_fetch_response.ts - node:stream/web → test_parity_stream_web.ts - node:http / node:https → test_parity_http.ts - node:net + TLS upgrade → test_net_socket.ts - node:readline → test_parity_readline.ts - node:worker_threads → test_parity_worker_threads.ts - WebSocket upgrade → test_node_http_ws_upgrade.ts - framework (multipart, request, response, server) → test_fastify_integration.ts Regenerated via `./test-coverage/regen_ts_surface_inventory.py`: `test_ffi_surface_stdlib_io.ts` shrinks from 155 unique FFI names to 0. `./test-coverage/audit.sh --markdown` still reports 100% TypeScript and combined FFI coverage (1790/1790).
Maintainer-side bump folded in at merge time per CLAUDE.md external-PR workflow. Pure metadata + Cargo.lock workspace-version refresh; no behavioral change.
638535a to
7b149e9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to #694, addresses #697.
Moves the 155 inventory entries from
test_ffi_surface_stdlib_io.tsinto
@coversannotations attached to the existing behavioral fixturesfor each surface. The inventory entry per FFI name is preserved (so the
audit still sees full coverage) but it now lives next to a real
behavioral test exercising that surface, rather than in a bare inventory
file.
Mapping:
fetch.rs(40 names)test_gap_fetch_response.tsstreams.rs(37 names)test_parity_stream_web.tshttp.rs(13 names)test_parity_http.tsnet/mod.rs(10 names)test_net_socket.tsreadline.rs(5 names)test_parity_readline.tsworker_threads.rs(6 names)test_parity_worker_threads.tsws.rs(11 names)test_node_http_ws_upgrade.tsframework/{multipart,request,response,server}.rs(28 names)test_fastify_integration.tsEach receiving fixture already exercises real behavior on its surface
(local loopback servers / deterministic in-memory probes / Headers +
Blob + Response API roundtrips) — no external services are added.
Verification
./test-coverage/regen_ts_surface_inventory.py—test_ffi_surface_stdlib_io.tsshrinks from 155 → 0 unique FFI names../test-coverage/audit.sh --markdown— still reports TypeScript 1790/1790 (100%) and Combined 1790/1790 (100%)../run_parity_tests.sh --filter test_gap_fetch_response— PASS../run_parity_tests.sh --filter test_net_socket— PASS.test_parity_stream_web/test_parity_http/test_parity_worker_threads/test_parity_readline_promisesstill fail with the same signatures onmain(verified by stashing this PR and re-running) — pre-existing, unrelated to the@coversblock additions.The runtime_core inventory file picked up unrelated drift (new FFI added since last regen + names now referenced via the moved entries). That's a side-effect of running the regen, not a hand edit.
Notes
CHANGELOG.md, noCLAUDE.mdedits.Checklist
Test plan
./test-coverage/regen_ts_surface_inventory.py./test-coverage/audit.sh --markdown./run_parity_tests.sh --filter test_gap_fetch_response./run_parity_tests.sh --filter test_net_socketmain