Spaces:
Sleeping
Sleeping
; | |
Object.defineProperty(exports, '__esModule', { | |
value: true | |
}); | |
exports.makeEmptyAggregatedTestResult = | |
exports.createEmptyTestResult = | |
exports.buildFailureTestResult = | |
exports.addResult = | |
void 0; | |
/** | |
* Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. | |
* | |
* This source code is licensed under the MIT license found in the | |
* LICENSE file in the root directory of this source tree. | |
*/ | |
const makeEmptyAggregatedTestResult = () => ({ | |
numFailedTestSuites: 0, | |
numFailedTests: 0, | |
numPassedTestSuites: 0, | |
numPassedTests: 0, | |
numPendingTestSuites: 0, | |
numPendingTests: 0, | |
numRuntimeErrorTestSuites: 0, | |
numTodoTests: 0, | |
numTotalTestSuites: 0, | |
numTotalTests: 0, | |
openHandles: [], | |
snapshot: { | |
added: 0, | |
didUpdate: false, | |
// is set only after the full run | |
failure: false, | |
filesAdded: 0, | |
// combines individual test results + removed files after the full run | |
filesRemoved: 0, | |
filesRemovedList: [], | |
filesUnmatched: 0, | |
filesUpdated: 0, | |
matched: 0, | |
total: 0, | |
unchecked: 0, | |
uncheckedKeysByFile: [], | |
unmatched: 0, | |
updated: 0 | |
}, | |
startTime: 0, | |
success: true, | |
testResults: [], | |
wasInterrupted: false | |
}); | |
exports.makeEmptyAggregatedTestResult = makeEmptyAggregatedTestResult; | |
const buildFailureTestResult = (testPath, err) => ({ | |
console: undefined, | |
displayName: undefined, | |
failureMessage: null, | |
leaks: false, | |
numFailingTests: 0, | |
numPassingTests: 0, | |
numPendingTests: 0, | |
numTodoTests: 0, | |
openHandles: [], | |
perfStats: { | |
end: 0, | |
runtime: 0, | |
slow: false, | |
start: 0 | |
}, | |
skipped: false, | |
snapshot: { | |
added: 0, | |
fileDeleted: false, | |
matched: 0, | |
unchecked: 0, | |
uncheckedKeys: [], | |
unmatched: 0, | |
updated: 0 | |
}, | |
testExecError: err, | |
testFilePath: testPath, | |
testResults: [] | |
}); // Add individual test result to an aggregated test result | |
exports.buildFailureTestResult = buildFailureTestResult; | |
const addResult = (aggregatedResults, testResult) => { | |
// `todos` are new as of Jest 24, and not all runners return it. | |
// Set it to `0` to avoid `NaN` | |
if (!testResult.numTodoTests) { | |
testResult.numTodoTests = 0; | |
} | |
aggregatedResults.testResults.push(testResult); | |
aggregatedResults.numTotalTests += | |
testResult.numPassingTests + | |
testResult.numFailingTests + | |
testResult.numPendingTests + | |
testResult.numTodoTests; | |
aggregatedResults.numFailedTests += testResult.numFailingTests; | |
aggregatedResults.numPassedTests += testResult.numPassingTests; | |
aggregatedResults.numPendingTests += testResult.numPendingTests; | |
aggregatedResults.numTodoTests += testResult.numTodoTests; | |
if (testResult.testExecError) { | |
aggregatedResults.numRuntimeErrorTestSuites++; | |
} | |
if (testResult.skipped) { | |
aggregatedResults.numPendingTestSuites++; | |
} else if (testResult.numFailingTests > 0 || testResult.testExecError) { | |
aggregatedResults.numFailedTestSuites++; | |
} else { | |
aggregatedResults.numPassedTestSuites++; | |
} // Snapshot data | |
if (testResult.snapshot.added) { | |
aggregatedResults.snapshot.filesAdded++; | |
} | |
if (testResult.snapshot.fileDeleted) { | |
aggregatedResults.snapshot.filesRemoved++; | |
} | |
if (testResult.snapshot.unmatched) { | |
aggregatedResults.snapshot.filesUnmatched++; | |
} | |
if (testResult.snapshot.updated) { | |
aggregatedResults.snapshot.filesUpdated++; | |
} | |
aggregatedResults.snapshot.added += testResult.snapshot.added; | |
aggregatedResults.snapshot.matched += testResult.snapshot.matched; | |
aggregatedResults.snapshot.unchecked += testResult.snapshot.unchecked; | |
if ( | |
testResult.snapshot.uncheckedKeys && | |
testResult.snapshot.uncheckedKeys.length > 0 | |
) { | |
aggregatedResults.snapshot.uncheckedKeysByFile.push({ | |
filePath: testResult.testFilePath, | |
keys: testResult.snapshot.uncheckedKeys | |
}); | |
} | |
aggregatedResults.snapshot.unmatched += testResult.snapshot.unmatched; | |
aggregatedResults.snapshot.updated += testResult.snapshot.updated; | |
aggregatedResults.snapshot.total += | |
testResult.snapshot.added + | |
testResult.snapshot.matched + | |
testResult.snapshot.unmatched + | |
testResult.snapshot.updated; | |
}; | |
exports.addResult = addResult; | |
const createEmptyTestResult = () => ({ | |
leaks: false, | |
// That's legacy code, just adding it as needed for typing | |
numFailingTests: 0, | |
numPassingTests: 0, | |
numPendingTests: 0, | |
numTodoTests: 0, | |
openHandles: [], | |
perfStats: { | |
end: 0, | |
runtime: 0, | |
slow: false, | |
start: 0 | |
}, | |
skipped: false, | |
snapshot: { | |
added: 0, | |
fileDeleted: false, | |
matched: 0, | |
unchecked: 0, | |
uncheckedKeys: [], | |
unmatched: 0, | |
updated: 0 | |
}, | |
testFilePath: '', | |
testResults: [] | |
}); | |
exports.createEmptyTestResult = createEmptyTestResult; | |