MCPcopy
hub / github.com/qawolf/cli / buildRunReporter

Function buildRunReporter

src/commands/flows/buildRunReporter.ts:25–45  ·  view source on GitHub ↗
(
  flags: { junit?: string | boolean; outputDir: string },
  deps: BuildRunReporterDeps,
)

Source from the content-addressed store, hash-verified

23 * file is a disk artifact, independent of stdout output mode (--json/--agent).
24 */
25export function buildRunReporter(
26 flags: { junit?: string | boolean; outputDir: string },
27 deps: BuildRunReporterDeps,
28): Reporter {
29 const stdout = deps.stdout ?? process.stdout;
30 const stderr = deps.stderr ?? process.stderr;
31 const console = createConsoleReporter({ stdout, stderr });
32 // `undefined` means the flag was absent; an empty string (`--junit=`) still
33 // enables it and resolves to the default path.
34 if (flags.junit === undefined) return console;
35
36 const junit = createJUnitReporter({
37 outputPath: resolveJUnitOutputPath(flags.junit, flags.outputDir),
38 writeFile: (path, content) => {
39 deps.fs.mkdirSync(dirname(path), { recursive: true });
40 deps.fs.writeFileSync(path, content);
41 },
42 stderr,
43 });
44 return createCompositeReporter([console, junit]);
45}

Callers 2

buildFlowsRunDepsFunction · 0.85

Calls 4

createConsoleReporterFunction · 0.85
createJUnitReporterFunction · 0.85
resolveJUnitOutputPathFunction · 0.85
createCompositeReporterFunction · 0.85

Tested by

no test coverage detected