LibJS/Tests: Catch exceptions in describe() itself

Otherwise exceptions thrown in that state would simply terminate the
test.
This commit is contained in:
Ali Mohammad Pur 2021-06-04 03:23:33 +04:30 committed by Ali Mohammad Pur
commit 09cf1040ef
Notes: sideshowbarker 2024-07-18 16:54:42 +09:00

View file

@ -441,7 +441,15 @@ class ExpectationError extends Error {
describe = (message, callback) => {
suiteMessage = message;
callback();
if (!__TestResults__[suiteMessage]) __TestResults__[suiteMessage] = {};
try {
callback();
} catch (e) {
__TestResults__[suiteMessage][defaultSuiteMessage] = {
result: "fail",
details: String(e),
};
}
suiteMessage = defaultSuiteMessage;
};