# Testing signals — testing-library/react-testing-library

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

# Testing signals — testing-library/react-testing-library

Scanned commit 20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800 (2026-08-27). 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 result or measured coverage is asserted. Jest suites in src/__tests__ exercise DOM behavior, scheduling, cleanup, hooks, and React-version branches, while types/test.tsx supplies declaration checks. The inspected inventory is bounded, and several tests or configuration branches explicitly limit what can be concluded.
- Jest configuration extends kcd-scripts/config, and tests/setup-env.js installs jest-dom assertions, console-call enforcement, TextEncoder, and a worker_threads MessageChannel. — [jest.config.js#L1-L19](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/jest.config.js#L1-L19) [tests/setup-env.js#L1-L9](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/tests/setup-env.js#L1-L9)
- Rendering tests assert portals, fragment snapshots, wrapper composition, StrictMode effects, repeated-container rendering, hydration interactivity, and version-gated legacy behavior. — [src/__tests__/render.js#L34-L90](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/render.js#L34-L90) [src/__tests__/render.js#L93-L160](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/render.js#L93-L160) [src/__tests__/render.js#L163-L219](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/render.js#L163-L219) [src/__tests__/render.js#L222-L263](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/render.js#L222-L263)
- Cleanup suites test automatic cleanup and its skip switch, effect teardown, detached containers, non-flushing of microtasks, and preservation of missing-act warnings. — [src/__tests__/auto-cleanup.js#L4-L13](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/auto-cleanup.js#L4-L13) [src/__tests__/auto-cleanup-skip.js#L3-L18](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/auto-cleanup-skip.js#L3-L18) [src/__tests__/cleanup.js#L25-L42](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/cleanup.js#L25-L42) [src/__tests__/cleanup.js#L58-L125](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/cleanup.js#L58-L125)
- Event tests generate React-handler and native-listener cases from an event table; a separate regression asserts nested eventWrapper behavior and absence of act warnings. — [src/__tests__/events.js#L147-L205](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/events.js#L147-L205) [src/__tests__/event-wrapper-nesting.js#L41-L54](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/event-wrapper-nesting.js#L41-L54)
- Async integration tests exercise waitForElementToBeRemoved, waitFor, and findBy across real, legacy fake, and modern fake timers, including long promise chains; their loaders simulate data rather than contacting a server. — [src/__tests__/end-to-end.js#L4-L27](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/end-to-end.js#L4-L27) [src/__tests__/end-to-end.js#L55-L74](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/end-to-end.js#L55-L74) [src/__tests__/end-to-end.js#L78-L124](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/end-to-end.js#L78-L124) [src/__tests__/end-to-end.js#L139-L162](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/end-to-end.js#L139-L162)
- Hook tests assert committed output, rerender props, providers, and version-gated legacy roots; renderHook's recoverable-error test accepts the option but contains a TODO instead of triggering recovery. — [src/__tests__/renderHook.js#L10-L68](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/renderHook.js#L10-L68) [src/__tests__/renderHook.js#L70-L113](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/renderHook.js#L70-L113) [src/__tests__/error-handlers.js#L170-L183](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/src/__tests__/error-handlers.js#L170-L183)
- types/test.tsx checks render/query/config/hook usage and container inference; root typecheck includes types with strict and exactOptionalPropertyTypes enabled, but onCaughtError's cross-version fixture uses @ts-ignore. — [types/test.tsx#L5-L49](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/types/test.tsx#L5-L49) [types/test.tsx#L215-L263](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/types/test.tsx#L215-L263) [types/test.tsx#L266-L289](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/types/test.tsx#L266-L289) [tsconfig.json#L21-L44](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/tsconfig.json#L21-L44)
- PR CI spans Node 18/24 and React 18.x/latest/canary/experimental, permits non-latest failures, and uploads coverage. Jest relaxes per-job core thresholds while Codecov specifies a 100% project target for selected flags. — [.github/workflows/validate.yml#L14-L22](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/.github/workflows/validate.yml#L14-L22) [.github/workflows/validate.yml#L53-L61](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/.github/workflows/validate.yml#L53-L61) [jest.config.js#L4-L17](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/jest.config.js#L4-L17) [codecov.yml#L1-L18](https://github.com/testing-library/react-testing-library/blob/20ce75f2907ca0e5c5a8ae595c0e9a4e368c7800/codecov.yml#L1-L18)

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)
