UNPKG

@christian-bromann/webdriverio

Version:

A nodejs bindings implementation for selenium 2.0/webdriver

51 lines (43 loc) 1.32 kB
/** * * Clear a `<textarea>` or text `<input>` element’s value. * * <example> :clearElementAsync.js client .setValue('.input', 'test123') .clearElement('.input') .getValue('.input').then(function(value) { assert(value === ''); // true }); :clearElementSync.js it('should demonstrate the clearElement command', function () { browser .setValue('.input', 'test123') .clearElement('.input') var value = browser.getValue('.input') assert(value === ''); // true }); * </example> * * @alias browser.clearElement * @param {String} selector input element * @uses protocol/elements, protocol/elementIdClear * @type action * */ import { CommandError } from '../utils/ErrorHandler' let clearElement = function (selector) { return this.elements(selector).then((res) => { if (!res.value || res.value.length === 0) { // throw NoSuchElement error if no element was found throw new CommandError(7) } let elementIdClearCommands = [] for (let elem of res.value) { elementIdClearCommands.push(this.elementIdClear(elem.ELEMENT, 'value')) } return this.unify(elementIdClearCommands) }) } export default clearElement