File |
Mutation score |
# Killed |
# Survived |
# Timeout |
# No coverage |
# Errors |
Total detected |
Total undetected |
Total mutants |
|
---|---|---|---|---|---|---|---|---|---|---|
IsolatedTestRunnerAdapterWorker.js |
|
0/54 | 0 | 0 | 0 | 54 | 0 | 0 | 54 | 54 |
"use strict";
var test_runner_1 = require('stryker-api/test_runner');
var PluginLoader_1 = require('../PluginLoader');
var log4js = require('log4js');
var objectUtils_1 = require('../utils/objectUtils');
var log = log4js.getLogger('IsolatedTestRunnerAdapterWorker');
var IsolatedTestRunnerAdapterWorker = (function () 0{
}{
function IsolatedTestRunnerAdapterWorker() 1{
}{
this.listenToMessages();
}
IsolatedTestRunnerAdapterWorker.prototype.listenToMessages = function () 2{
}{
var _this = this;
process.on('message', function (serializedMessage) 3{
}{
var message = objectUtils_1.deserialize(serializedMessage);
switch (message.kind) {
case 'start':
_this.start(message);
break;
case 'run':
_this.run(message);
break;
case 'init':
_this.init();
break;
case 'dispose':
_this.dispose();
break;
default:
_this.logReceivedMessageWarning(message);
}
});
};
IsolatedTestRunnerAdapterWorker.prototype.logReceivedMessageWarning = function (message) 4{
}{
log.warn('Received unsupported message: {}', JSON.stringify(message));
};
IsolatedTestRunnerAdapterWorker.prototype.start = function (message) 5{
}{
this.loadPlugins(message.runnerOptions.strykerOptions.plugins);
this.underlyingTestRunner = test_runner_1.TestRunnerFactory.instance().create(message.runnerName, message.runnerOptions);
};
IsolatedTestRunnerAdapterWorker.prototype.init = function () 6{
}{
var initPromise = void 0;
if (7false8truethis.underlyingTestRunner.init) 9{
}{
initPromise = this.underlyingTestRunner.init();
}
if (10false11trueobjectUtils_1.isPromise(initPromise)) 12{
}{
initPromise.then(this.sendInitDone);
}
else 13{
}{
this.sendInitDone();
}
};
IsolatedTestRunnerAdapterWorker.prototype.sendInitDone = function () 14{
}{
var message = { kind: 'initDone' };
process.send(message);
};
IsolatedTestRunnerAdapterWorker.prototype.dispose = function () 15{
}{
var disposePromise = void 0;
if (16false17truethis.underlyingTestRunner.dispose) 18{
}{
disposePromise = this.underlyingTestRunner.dispose();
}
if (19false20trueobjectUtils_1.isPromise(disposePromise)) 21{
}{
disposePromise.then(this.sendDisposeDone);
}
else 22{
}{
this.sendDisposeDone();
}
};
IsolatedTestRunnerAdapterWorker.prototype.sendDisposeDone = function () 23{
}{
this.send({ kind: 'disposeDone' });
};
IsolatedTestRunnerAdapterWorker.prototype.run = function (body) 24{
}{
var _this = this;
this.underlyingTestRunner.run(body.runOptions).then(function (res) 25{
}{ return _this.reportResult(res); }, function (error) 26{
}{ return _this.reportErrorResult(error); });
};
IsolatedTestRunnerAdapterWorker.prototype.send = function (message) 27{
}{
process.send(message);
};
IsolatedTestRunnerAdapterWorker.prototype.loadPlugins = function (plugins) 28{
}{
new PluginLoader_1.default(plugins).load();
};
IsolatedTestRunnerAdapterWorker.prototype.reportResult = function (result) 29{
}{
// If the test runner didn't report on coverage, let's try to do it ourselves.
if (30false31true!result.coverage) 32{
}{
result.coverage = (Function('return this'))().__coverage__;
}
if (33false34trueresult.errorMessages) 35{
}{
// errorMessages should be a string[]
// Just in case the test runner implementer forgot to convert `Error`s to string, we will do it here
// https://github.com/stryker-mutator/stryker/issues/141
result.errorMessages = result.errorMessages.map(function (error) 36{
}{
if (37false38trueerror instanceof Error) 39{
}{
return 40error.name + ': ' + error.message + '\n' - error.stack.toString()41error.name + ': ' + error.message - '\n'42error.name + ': ' - error.message43error.name - ': 'error.name + ": " + error.message + "\n" + error.stack.toString();
}
else 44{
}{
return error.toString();
}
});
}
this.send({
kind: 'result',
result: result
});
};
IsolatedTestRunnerAdapterWorker.prototype.reportErrorResult = function (error) 45{
}{
var runResult = {
tests: [],
status: test_runner_1.RunStatus.Error,
};
if (46false47trueerror) 48{
}{
if (49false50trueArray.isArray(error)) 51{
}{
runResult.errorMessages = error.map(function (e) 52{
}{ return e; });
}
else 53{
}{
runResult.errorMessages = [error];
}
}
this.reportResult(runResult);
};
return IsolatedTestRunnerAdapterWorker;
}());
new IsolatedTestRunnerAdapterWorker();
//# sourceMappingURL=IsolatedTestRunnerAdapterWorker.js.map