Better reporting of unhandled promise rejections with truthy but non-Error reasons on Node

[#179227413]
This commit is contained in:
Steve Gravrock
2021-08-14 14:01:15 -07:00
parent e72d161fab
commit dd8a65cb60
3 changed files with 120 additions and 74 deletions

View File

@@ -4333,16 +4333,22 @@ getJasmineRequireObj().GlobalErrors = function(j$) {
function taggedOnError(error) {
var substituteMsg;
if (error) {
if (j$.isError_(error)) {
error.jasmineMessage = jasmineMessage + ': ' + error;
} else {
substituteMsg = jasmineMessage + ' with no error or message';
if (error) {
substituteMsg = jasmineMessage + ': ' + error;
} else {
substituteMsg = jasmineMessage + ' with no error or message';
}
if (errorType === 'unhandledRejection') {
substituteMsg +=
'\n' +
'(Tip: to get a useful stack trace, use ' +
'Promise.reject(new Error(...)) instead of Promise.reject().)';
'Promise.reject(new Error(...)) instead of Promise.reject(' +
(error ? '...' : '') +
').)';
}
error = new Error(substituteMsg);