in src/view/output-view.js [35:59]
export function processJUnitResults(data, onTestPassed, onTestFailed) {
let result = "";
let totalTime = 0;
let passed = true;
if (isEmptyObject(data)) return NO_TEST_FOUND;
for (let testClass in data) {
let listOfResults = arrayFrom(data[testClass]);
result += listOfResults.reduce((previousTest, currentTest) => {
totalTime = totalTime + (currentTest.executionTime / 1000);
if (currentTest.status === TEST_STATUS.ERROR.value || currentTest.status === TEST_STATUS.FAIL.value) passed = false;
switch (currentTest.status) {
case TEST_STATUS.FAIL.value:
return previousTest + buildOutputTestLine(TEST_STATUS.FAIL.text, currentTest.methodName, currentTest.comparisonFailure.message);
case TEST_STATUS.ERROR.value:
return previousTest + buildOutputTestLine(TEST_STATUS.ERROR.text, currentTest.methodName, currentTest.exception.message);
case TEST_STATUS.PASSED.value:
return previousTest + buildOutputTestLine(TEST_STATUS.PASSED.text, currentTest.methodName, "");
}
}, "");
}
if (passed && onTestPassed) onTestPassed();
if (!passed && onTestFailed) onTestFailed();
let testTime = `<div class="test-time">Total test time: ${totalTime}s</div>`;
return testTime + result;
}