interface RunResults

Outcome totals and failure bookkeeping accumulated across every group of a single run. Every field here is mutated in place — see RunState for why replacement is unsafe.

import * as RunState from './setup/run-state.ts';

const { results } = RunState.create();
results.counter.passed += 1; // mutate the shared object in place — never replace it

Properties

Running test-outcome counts, mutated in place as TAP events arrive.

failedFiles: Set<string>

Absolute paths of test files with ≥1 failure in the current run, attributed per-test via source maps. Every group adds into this one set; persisted to the failure cache at run end.

Per-test metadata for the current run's failures; accumulated alongside failedFiles.

Accumulator for per-source line coverage when coverage is enabled; null when it is off. Reassigned only by RunState.reset (a fresh Map per run), never by a group.

aborted: boolean

Whether the browser confirmed it dropped this run's remaining queue — qq, session.abort(), or an aborted signal. Lives here rather than on the group because groups share this object by reference, so one aborted group marks the whole run without any cross-group plumbing.

Load-bearing for the result: an aborted run and a red run both end with failures and exit 1, and nothing else distinguishes "I stopped it" from "it broke".

Usage

import { type RunResults } from "lib/types.ts";