Files
openstapps/coverage.mjs

18 lines
602 B
JavaScript
Executable File

#!/usr/bin/env node
import {promisify} from 'node:util';
import {glob} from 'glob';
import {exec} from 'node:child_process';
import {mergeFiles} from 'junit-report-merger';
const files = await glob('./*/*/coverage/cobertura-coverage.xml');
const args = files.map(it => `${it.split('/', 2)[1]}='${it}'`);
console.log(
'Collecting coverage...',
await promisify(exec)(`merge-cobertura -o ./coverage.xml ${args.join(' ')}`),
);
const reportFiles = await glob('./*/*/coverage/report-junit.xml');
console.log('Collecting reports...', reportFiles);
await mergeFiles('./report-junit.xml', reportFiles);