@villedemontreal/scripting
Version:
Scripting core utilities
40 lines • 1.33 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ShowCoverageScript = void 0;
const core_1 = require("@caporal/core");
const path = require("path");
const src_1 = require("../src");
const configs_1 = require("../src/config/configs");
class ShowCoverageScript extends src_1.ScriptBase {
get name() {
return 'show-coverage';
}
get description() {
return `Open the tests coverage report.`;
}
get requiredDependencies() {
return ['nyc'];
}
async configure(command) {
command.option(`--report <path>`, `The relative path to the coverage report directory.`, {
default: `output/coverage`,
validator: core_1.program.STRING,
});
}
async main() {
if (configs_1.configs.isWindows) {
await this.invokeShellCommand('start', ['', this.getReportDir()], {
useShellOption: true,
});
}
else {
await this.invokeShellCommand('open', [this.getReportDir()]);
}
}
getReportDir() {
const reportDir = path.resolve(configs_1.configs.projectRoot, this.options.report, 'lcov-report/index.html');
return reportDir;
}
}
exports.ShowCoverageScript = ShowCoverageScript;
//# sourceMappingURL=showCoverage.js.map