UNPKG

@tapjs/run

Version:

Command-line interface for the node-tap runner

21 lines 838 B
import { createWriteStream } from 'fs'; import { mkdirpSync } from 'mkdirp'; import { dirname, resolve } from 'path'; // Always write to .tap/test-results, plus the config if set export const outputDir = (t, config) => { const outputDir = config.get('output-dir'); const resultsDir = resolve(config.projectRoot, '.tap/test-results'); t.on('spawn', subtest => pipes(subtest, resultsDir, outputDir)); }; const pipes = (subtest, resultsDir, outputDir) => { if (outputDir && outputDir !== resultsDir) { pipeToDir(subtest, outputDir); } pipeToDir(subtest, resultsDir); }; const pipeToDir = (subtest, dir) => { const out = resolve(dir, subtest.name + '.tap'); mkdirpSync(dirname(out)); subtest.on('process', proc => proc.stdout.pipe(createWriteStream(out))); }; //# sourceMappingURL=output-dir.js.map