diff --git a/lib/core/treenode.js b/lib/core/treenode.js index f81922368c..ce4f53c2f6 100644 --- a/lib/core/treenode.js +++ b/lib/core/treenode.js @@ -1,5 +1,6 @@ const EventEmitter = require('events'); const Utils = require('../utils'); +const Debuggability = require('../utils/debuggability.js'); class TreeNode { get command() { @@ -114,6 +115,11 @@ class TreeNode { handleError(err) { err.abortOnFailure = err.abortOnFailure || err.abortOnFailure === undefined; + + // Set abortOnFailure to false when command is being executed in debugMode + if (Debuggability.debugMode) { + err.abortOnFailure = false; + } let errorName = err.name !== 'Error' ? `[${err.name}] ` : ''; let originalError = `${errorName}${err.message}`; diff --git a/lib/utils/debuggability.js b/lib/utils/debuggability.js index 437f3455cf..909ee3c4d5 100644 --- a/lib/utils/debuggability.js +++ b/lib/utils/debuggability.js @@ -6,7 +6,15 @@ class Debuggability { static set stepOverAndPause(value) { this._stepOverAndPause = value; } - + + static get debugMode() { + return this._debugMode; + } + + static set debugMode(value) { + this._debugMode = value; + } + static reset() { this._stepOverAndPause = false; }