@stryker-mutator/core
Version:
The extendable JavaScript mutation testing framework
54 lines • 1.43 kB
JavaScript
import { commonTokens, tokens } from '@stryker-mutator/api/plugin';
export class Echo {
constructor(logger, options, fileDescriptions) {
this.logger = logger;
this.fileDescriptions = fileDescriptions;
this.testRunnerName = options.testRunner;
}
say(value) {
return `${this.testRunnerName}: ${value}`;
}
sayDelayed(value, delay) {
return new Promise((res) => {
setTimeout(() => {
res(this.say(`${value} (${delay} ms)`));
}, delay);
});
}
echoFiles() {
return this.fileDescriptions;
}
exit(code) {
process.exit(code);
}
warning() {
process.emitWarning('Foo warning');
}
cwd() {
return process.cwd();
}
debug(message) {
this.logger.debug(message);
}
trace(message) {
this.logger.trace(message);
}
reject(error) {
return Promise.reject(new Error(error));
}
stdout(...args) {
args.forEach((arg) => console.log(arg));
}
stderr(...args) {
args.forEach((arg) => console.error(arg));
}
memoryLeak() {
const arr = [];
// eslint-disable-next-line no-constant-condition
while (true) {
arr.push(1);
}
}
}
Echo.inject = tokens(commonTokens.logger, commonTokens.options, commonTokens.fileDescriptions);
//# sourceMappingURL=echo.js.map