CodeVetter · Repo Unpack · Testing signals
solidjs/solid
Tests and CI were inspected, not executed; test existence supplies coverage intent rather than a passing result. Vitest separates jsdom client tests from Node server tests, with additional TypeScript checks and Node assertion/import checks. This inventory is bounded: inspected tests substantiate specific contracts, while coverage configuration and script selection identify limits without establishing exhaustive repository coverage.
- The client Vitest configuration uses jsdom, global test APIs, one fork worker, and isolate:false; it excludes test/server and resolves browser/development implementations.
- Server Vitest uses the Node environment, includes test/server/**/*.spec.ts, and aliases solid-js and solid-js/web to server source entrypoints.
- The solid-js test script runs both client and server Vitest configurations; its separate test-types script invokes tsc against tsconfig.test.json.
- Resource tests assert initial pending/loading state, out-of-order promise handling, and conversion of rejection values into Error objects.
- Store tests assert blocked direct mutation, reactive getters, key setters, and partial merges; prototype-guard tests cover __proto__, constructor.prototype traversal, unsafe merge keys, and permitted constructor/prototype leaf keys.
- Modifier tests check removal of omitted properties by reconcile and rejection of unsafe object keys while preserving safe data.
- External-source regressions cover normal tracking versus untrack, recreating transition-scoped sources after disposal, and retaining external updates after a memo is created during a transition.
- Server lazy tests assert stream termination and ErrorBoundary output on rejected imports, asynchronous string rendering, successful imports, and retry on a subsequent request.
- DOM Index tests inspect actual innerHTML after removals, swaps, rotations, reversal, replacement, and disposal; the transition regression checks committed memo values during pending resource work.
- Type tests use @ts-expect-error to specify invalid API combinations; the package type-check configuration includes core/web/store tests but excludes test/server.
- The Babel preset test is a Node assert comparison against one compiled JSX string; integration import checks intentionally suppress errors other than selected module-resolution/module-syntax failures.
- Downloaded integration tests pack packages, fetch aminya/solid-simple-table, install local tarballs, and run its test command; the package's default test selects test:imports rather than test:integrations.
- Inspected main CI installs, builds, runs tests and coverage, and uploads Coveralls data; V8 coverage targets client core/store/web sources and excludes server implementations, so that report does not measure those excluded paths.
- The inspected dependency-audit workflow runs on main pushes, main pull requests, and a weekly schedule, then uploads SARIF with continue-on-error; no audit result was obtained in this investigation.