diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-04-20 03:09:25 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-04-24 16:14:29 +0200 |
commit | 82f2b76e25a4a67e01ec67e5ebe39d14ad771ea8 (patch) | |
tree | 965f6eb89b84d65a62b49008fd972c004832ccd1 /node_modules/selenium-webdriver/lib/error.js | |
parent | e6e0cbc387c2a77b48e4065c229daa65bf1aa0fa (diff) |
Reorganize module loading.
We now use webpack instead of SystemJS, effectively bundling modules
into one file (plus commons chunks) for every entry point. This results
in a much smaller extension size (almost half). Furthermore we use
yarn/npm even for extension run-time dependencies. This relieves us
from manually vendoring and building dependencies. It's also easier to
understand for new developers familiar with node.
Diffstat (limited to 'node_modules/selenium-webdriver/lib/error.js')
-rw-r--r-- | node_modules/selenium-webdriver/lib/error.js | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/node_modules/selenium-webdriver/lib/error.js b/node_modules/selenium-webdriver/lib/error.js index 555e5cbc5..82f81b07c 100644 --- a/node_modules/selenium-webdriver/lib/error.js +++ b/node_modules/selenium-webdriver/lib/error.js @@ -311,7 +311,7 @@ class UnknownMethodError extends WebDriverError { /** - * Reports an unsupport operation. + * Reports an unsupported operation. */ class UnsupportedOperationError extends WebDriverError { /** @param {string=} opt_error the error message, if any. */ @@ -462,17 +462,29 @@ function checkResponse(data) { return data; } +/** + * Tests if the given value is a valid error response object according to the + * W3C WebDriver spec. + * + * @param {?} data The value to test. + * @return {boolean} Whether the given value data object is a valid error + * response. + * @see https://w3c.github.io/webdriver/webdriver-spec.html#protocol + */ +function isErrorResponse(data) { + return data && typeof data === 'object' && typeof data.error === 'string'; +} /** * Throws an error coded from the W3C protocol. A generic error will be thrown - * if the privded `data` is not a valid encoded error. + * if the provided `data` is not a valid encoded error. * * @param {{error: string, message: string}} data The error data to decode. * @throws {WebDriverError} the decoded error. * @see https://w3c.github.io/webdriver/webdriver-spec.html#protocol */ function throwDecodedError(data) { - if (data && typeof data === 'object' && typeof data.error === 'string') { + if (isErrorResponse(data)) { let ctor = ERROR_CODE_TO_TYPE.get(data.error) || WebDriverError; throw new ctor(data.message); } @@ -551,5 +563,6 @@ module.exports = { checkResponse: checkResponse, checkLegacyResponse: checkLegacyResponse, encodeError: encodeError, + isErrorResponse: isErrorResponse, throwDecodedError: throwDecodedError, }; |