# Testing signals — parcel-bundler/parcel

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

# Testing signals — parcel-bundler/parcel

Scanned commit 59484858a1a0bcbb71f74088956bb437a2db6505 (2026-02-01). 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; test existence does not establish a passing result. The inspected JavaScript suites use Mocha with Node assertions, Sinon, shared filesystem utilities, and WebSocket clients. Rust includes ordinary #[test] cases, and CI configures cross-platform unit and integration runs plus type and formatting checks. This bounded inspection does not establish complete coverage, browser parity, or security-test completeness.
- Root Mocha discovery targets package tests outside integration-tests and loads Babel registration plus shared setup; test:unit chains Mocha with cargo test --workspace --exclude parcel-node-bindings. — [.mocharc.json#L1-6](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/.mocharc.json#L1-L6) [package.json#L30-33](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/package.json#L30-L33)
- Parcel.test.js checks rejection of an ending worker farm, owned-versus-supplied farm cleanup, shared-reference removal, and unstable transform/resolve APIs; its helper disables caching and uses a configuration without reporters, limiting that suite's persistence/server coverage. — [packages/core/core/test/Parcel.test.js#L21-74](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/core/test/Parcel.test.js#L21-L74) [packages/core/core/test/Parcel.test.js#L88-127](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/core/test/Parcel.test.js#L88-L127) [packages/core/core/test/Parcel.test.js#L131-141](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/core/test/Parcel.test.js#L131-L141)
- RequestTracker.test.js explicitly checks valid-result reuse, reruns after invalidation, parent invalidation through subrequests, failed requests, and removal of obsolete subrequests. — [packages/core/core/test/RequestTracker.test.js#L14-56](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/core/test/RequestTracker.test.js#L14-L56) [packages/core/core/test/RequestTracker.test.js#L59-107](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/core/test/RequestTracker.test.js#L59-L107) [packages/core/core/test/RequestTracker.test.js#L109-139](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/core/test/RequestTracker.test.js#L109-L139)
- Integration cache tests build, mutate inputs, and rebuild with caching enabled; the inspected cases assert changed execution results after a JS edit or new dependency and check that cache content omits project file paths. — [packages/core/integration-tests/test/cache.js#L47-58](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/test/cache.js#L47-L58) [packages/core/integration-tests/test/cache.js#L89-117](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/test/cache.js#L89-L117) [packages/core/integration-tests/test/cache.js#L133-158](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/test/cache.js#L133-L158)
- Server integration tests compare HTTP responses with output files, verify HEAD content length and empty bodies, and exercise source-file and sourcemap serving; HMR tests assert changed JS content and source-map/source-URL annotations over WebSockets. — [packages/core/integration-tests/test/server.js#L36-85](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/test/server.js#L36-L85) [packages/core/integration-tests/test/server.js#L88-139](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/test/server.js#L88-L139) [packages/core/integration-tests/test/hmr.js#L143-171](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/test/hmr.js#L143-L171)
- The Rust resolver's #[test] relative case exercises explicit extensions, omitted extensions, repeated separators, and tilde paths; its fixture root points into the JavaScript resolver fixture tree. — [crates/parcel-resolver/src/lib.rs#L1429-1446](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/crates/parcel-resolver/src/lib.rs#L1429-L1446) [crates/parcel-resolver/src/lib.rs#L1447-1478](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/crates/parcel-resolver/src/lib.rs#L1447-L1478)
- CI configures Node 20/22 across Linux, macOS, and Windows for unit and integration tests, builds native bindings first, and additionally builds JavaScript packages before integration tests; separate jobs run lint, Flow, and declaration checks. — [.github/workflows/ci.yml#L14-49](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/.github/workflows/ci.yml#L14-L49) [.github/workflows/ci.yml#L60-84](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/.github/workflows/ci.yml#L60-L84) [.github/workflows/ci.yml#L95-123](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/.github/workflows/ci.yml#L95-L123)
- Integration Mocha configuration allows 50-second tests and two retries, and CI disables fail-fast with a flakiness comment; HMR client helpers use a 100-ms sleep, so inspecting these tests does not prove deterministic real-browser behavior. — [packages/core/integration-tests/.mocharc.json#L1-8](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/.mocharc.json#L1-L8) [.github/workflows/ci.yml#L95-103](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/.github/workflows/ci.yml#L95-L103) [packages/core/integration-tests/test/hmr.js#L100-119](https://github.com/parcel-bundler/parcel/blob/59484858a1a0bcbb71f74088956bb437a2db6505/packages/core/integration-tests/test/hmr.js#L100-L119)

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)
