--- a/testing/marionette/error.js
+++ b/testing/marionette/error.js
@@ -394,16 +394,31 @@ UnknownError.prototype = Object.create(W
this.UnsupportedOperationError = function (msg) {
WebDriverError.call(this, msg);
this.name = "UnsupportedOperationError";
this.status = "unsupported operation";
};
UnsupportedOperationError.prototype = Object.create(WebDriverError.prototype);
-const nameLookup = new Map();
-const statusLookup = new Map();
-for (let s of ERRORS) {
- let cls = this[s];
- let inst = new cls();
- nameLookup.set(inst.name, cls);
- statusLookup.set(inst.status, cls);
-};
+const STATUSES = new Map([
+ ["element not accessible", ElementNotAccessibleError],
+ ["element not visible", ElementNotVisibleError],
+ ["insecure certificate", InsecureCertificateError],
+ ["invalid argument", InvalidArgumentError],
+ ["invalid element state", InvalidElementStateError],
+ ["invalid selector", InvalidSelectorError],
+ ["invalid session id", InvalidSessionIDError],
+ ["javascript error", JavaScriptError],
+ ["no alert open", NoAlertOpenError],
+ ["no such element", NoSuchElementError],
+ ["no such frame", NoSuchFrameError],
+ ["no such window", NoSuchWindowError],
+ ["script timeout", ScriptTimeoutError],
+ ["session not created", SessionNotCreatedError],
+ ["stale element reference", StaleElementReferenceError],
+ ["timeout", TimeoutError],
+ ["unable to set cookie", UnableToSetCookieError],
+ ["unknown command", UnknownCommandError],
+ ["unknown error", UnknownError],
+ ["unsupported operation", UnsupportedOperationError],
+ ["webdriver error", WebDriverError],
+]);