UNPKG

webdriver-js-extender

Version:

A plugin which adds additional commands to selenium's javascript implementation of the webdriver client side API

35 lines 1.17 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /* * Wraps a promised {@link Executor}, ensuring no commands are executed until * the wrapped executor has been fully resolved. * * selenium-webdriver uses this internally, and we overwrite it to give it the * defineCommand() function * * Based off of * https://github.com/SeleniumHQ/selenium/blob/master/javascript/node/selenium-webdriver/lib/command.js#L240 * * @implements {Executor} */ class DeferredExecutor { /** * @param {!Promise<Executor>} delegate The promised delegate, which * may be provided by any promise-like thenable object. */ constructor(delegate) { /** @override */ this.execute = function (command) { return delegate.then((executor) => { return executor.execute(command); }); }; this.defineCommand = function (name, method, path) { delegate.then((executor) => { executor.defineCommand(name, method, path); }); }; } } exports.DeferredExecutor = DeferredExecutor; //# sourceMappingURL=deferred_executor.js.map