# Testing signals — mswjs/msw

> Canonical page: https://codevetter.com/unpack/msw/testing-signals

# Testing signals — mswjs/msw

Scanned commit 6d6aef1640ace2ce2bd90252c71bdbc53262efd3 (2026-09-30). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

Tests and CI were inspected, not executed; their existence does not establish a passing result. Vitest separates unit, Node, browser, memory, typings, and CLI suites, while Playwright handles page lifecycle and multi-tab scenarios. Read assertions cover several important persistence, isolation, streaming, and teardown branches. This is a bounded inspection, and configured browser coverage is Chromium rather than evidence of cross-browser parity.
- Vitest selects adjacent src unit tests and separate Node, memory, browser, types, and e2e projects; inspected configuration establishes suite routing, but no project was executed during this investigation. — [vitest.config.ts#L48-L108](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/vitest.config.ts#L48-L108) [vitest.config.ts#L139-L198](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/vitest.config.ts#L139-L198)
- Shared integration tests run in Node and browser unless filename suffixes exclude them; startNetwork creates the actual setupServer/setupWorker API, and its fixture defaults unhandled traffic to bypass unless options override it. — [test/README.md#L13-L21](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/README.md#L13-L21) [test/setup/network.ts#L26-L57](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/setup/network.ts#L26-L57) [vitest.config.ts#L80-L86](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/vitest.config.ts#L80-L86) [vitest.config.ts#L145-L152](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/vitest.config.ts#L145-L152)
- Concurrent boundary tests assert initial/override/initial responses in separate async scopes; browser cookie tests assert document forwarding, hidden Set-Cookie headers, multiple cookies, and continued cookie inference after localStorage quota failure. — [test/msw-api/setup-server/boundary/boundary.concurrency.node.test.ts#L19-L51](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/msw-api/setup-server/boundary/boundary.concurrency.node.test.ts#L19-L51) [test/protocols/http/response/response-cookies.browser.test.ts#L43-L66](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/protocols/http/response/response-cookies.browser.test.ts#L43-L66) [test/protocols/http/response/response-cookies.browser.test.ts#L84-L109](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/protocols/http/response/response-cookies.browser.test.ts#L84-L109)
- Lifecycle assertions cover an in-flight mocked request surviving worker stop, later requests bypassing, finalize callbacks after abort including late registration, and simultaneous handler/source disposal rejection handling. — [test/msw-api/setup-worker/stop/in-flight-request.browser.test.ts#L22-L60](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/msw-api/setup-worker/stop/in-flight-request.browser.test.ts#L22-L60) [test/msw-api/finalize.node.test.ts#L135-L216](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/msw-api/finalize.node.test.ts#L135-L216) [src/core/experimental/define-network.test.ts#L126-L159](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/src/core/experimental/define-network.test.ts#L126-L159)
- The Node frame-retention test warms up 500 failing requests, measures 1,500 more with forced GC and heap snapshots, and allows frame growth below 5% of the measured request count; this is a regression threshold, not a measured result from this brief. — [test/memory/2792-frame-retention.memory.test.ts#L14-L16](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/memory/2792-frame-retention.memory.test.ts#L14-L16) [test/memory/2792-frame-retention.memory.test.ts#L94-L131](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/memory/2792-frame-retention.memory.test.ts#L94-L131) [vitest.config.ts#L98-L107](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/vitest.config.ts#L98-L107)
- Inspected protocol tests assert GraphQL subscription publication/completion, WebSocket extension decoding with unchanged upstream wire traffic, and SSE cessation of upstream reconnects after consumer close. — [test/protocols/graphql/subscription.browser.test.ts#L8-L46](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/protocols/graphql/subscription.browser.test.ts#L8-L46) [test/protocols/websocket/ws.extension.test.ts#L47-L80](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/protocols/websocket/ws.extension.test.ts#L47-L80) [test/protocols/sse/sse.signal.browser.test.ts#L4-L35](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/protocols/sse/sse.signal.browser.test.ts#L4-L35)
- Vite tests build and inspect production output for removal of DEV-guarded mocks and then inspect rendered application behavior; CLI tests assert copied worker files and saved paths, while typings tests expect errors for incompatible declared response bodies. — [src/vite/plugin.test.ts#L45-L137](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/src/vite/plugin.test.ts#L45-L137) [test/e2e/cli-init.node.test.ts#L54-L103](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/e2e/cli-init.node.test.ts#L54-L103) [test/typings/http.test-d.ts#L297-L311](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/typings/http.test-d.ts#L297-L311)
- CI specifies Node 22.23.2/24/26 with lint/build/Vitest/Playwright, compatibility jobs inspect package exports and TypeScript 5.9/6.0/7.0, and smoke automation tests external examples; browser configurations inspected here select Chromium, and no CI run status was retrieved. — [.github/workflows/ci.yml#L13-L50](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/.github/workflows/ci.yml#L13-L50) [.github/workflows/compat.yml#L36-L60](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/.github/workflows/compat.yml#L36-L60) [.github/workflows/smoke-test.yml#L3-L17](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/.github/workflows/smoke-test.yml#L3-L17) [test/playwright.config.ts#L4-L9](https://github.com/mswjs/msw/blob/6d6aef1640ace2ce2bd90252c71bdbc53262efd3/test/playwright.config.ts#L4-L9)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
