# Testing signals — avajs/ava

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

# Testing signals — avajs/ava

Scanned commit bbfd946322fdeca2b547a691d947fb4e18c0c67f (2026-05-17). 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; no passing results or measured coverage are asserted. AVA uses @ava/test for runtime integration tests, TAP for internal suites, and TypeScript compilation for declaration cases. Inspected coverage includes configuration, worker selection, snapshots, scheduling, watch interactions, and shared-worker lifecycle. The inventory is bounded, and CI contains explicit platform and concurrency accommodations.
- The inspected npm test script runs XO, tsc --noEmit, @ava/test's test-ava command, TAP, and c8 reporting; these commands were read but not executed. — [scripts/test.sh#L1-L8](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/scripts/test.sh#L1-L8) [package.json#L118-L132](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/package.json#L118-L132)
- ava.config.js selects test files while excluding fixtures/helpers; .taprc separately includes TAP unit, reporter, and integration files with a 300-second timeout. — [ava.config.js#L3-L12](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/ava.config.js#L3-L12) [.taprc#L1-L8](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/.taprc#L1-L8)
- Integration helpers launch the real CLI through execaNode, set TEST_AVA and TEST_AVA_IMPORT_FROM, capture output, and consume IPC results; worker tests cover default threads and both child-process selection mechanisms. — [test/helpers/exec.js#L79-L118](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test/helpers/exec.js#L79-L118) [test/worker-threads/test.js#L1-L18](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test/worker-threads/test.js#L1-L18)
- Configuration tests exercise package settings, explicit overrides, conflicts, factory returns, defaults, and wrapped errors; TAP Runner cases exercise synchronous declarations and emitted events. — [test/config/loader.js#L50-L110](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test/config/loader.js#L50-L110) [test-tap/runner.js#L17-L77](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test-tap/runner.js#L17-L77)
- Snapshot selection tests specify preservation of skipped snapshots/tests and targeted updates by title or lines; scheduler tests specify failure-first ordering and disabled-cache behavior. — [test/snapshot-workflow/selection.js#L7-L65](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test/snapshot-workflow/selection.js#L7-L65) [test/scheduler/test.js#L15-L48](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test/scheduler/test.js#L15-L48)
- Watch tests exercise instructions, SIGINT, reruns, and snapshot updates, with a Windows output-capture fallback; shared-worker lifecycle tests check availability and teardown output. — [test/watch-mode/basic-functionality.js#L5-L82](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test/watch-mode/basic-functionality.js#L5-L82) [test/shared-workers/lifecycle/test.js#L5-L12](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test/shared-workers/lifecycle/test.js#L5-L12)
- CI defines Node 22/24/26 jobs across Linux, Windows, and macOS, TypeScript 5.9/6.0 checks, lint and lockfile jobs; scripts/ci.sh runs watch tests serially and excludes two reporter suites outside Linux. — [.github/workflows/ci.yml#L15-L61](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/.github/workflows/ci.yml#L15-L61) [.github/workflows/ci.yml#L63-L105](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/.github/workflows/ci.yml#L63-L105) [scripts/ci.sh#L4-L17](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/scripts/ci.sh#L4-L17)
- Coverage configuration excludes entrypoints, examples, declarations, and tests; type cases are compile inputs, and shared-worker source explicitly identifies delayed messages after deregistration as difficult to test. — [.c8rc.json#L1-L14](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/.c8rc.json#L1-L14) [tsconfig.json#L9-L12](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/tsconfig.json#L9-L12) [test-types/module/conditional-chains.ts#L1-L14](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/test-types/module/conditional-chains.ts#L1-L14) [lib/plugin-support/shared-worker-loader.js#L99-L106](https://github.com/avajs/ava/blob/bbfd946322fdeca2b547a691d947fb4e18c0c67f/lib/plugin-support/shared-worker-loader.js#L99-L106)

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)
