@testim/testim-cli
Version:
Command line interface for running Testing on you CI
74 lines (62 loc) • 4.37 kB
JavaScript
/**
*
* Clear a `<textarea>` or text `<input>` element’s value.
*
* <example>
:clearElement.js
client
.setValue('.input', 'test123')
.clearElement('.input')
.getValue('.input').then(function(value) {
assert(value === ''); // true
});
* </example>
*
* @param {String} selector input element
*
* @uses protocol/elements, protocol/elementIdClear
* @type action
*
*/
;
var _getIterator = require('babel-runtime/core-js/get-iterator')['default'];
Object.defineProperty(exports, '__esModule', {
value: true
});
var _utilsErrorHandler = require('../utils/ErrorHandler');
var clearElement = function clearElement(selector) {
var _this = this;
return this.elements(selector).then(function (res) {
if (!res.value || res.value.length === 0) {
// throw NoSuchElement error if no element was found
throw new _utilsErrorHandler.CommandError(7);
}
var elementIdClearCommands = [];
var _iteratorNormalCompletion = true;
var _didIteratorError = false;
var _iteratorError = undefined;
try {
for (var _iterator = _getIterator(res.value), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var elem = _step.value;
elementIdClearCommands.push(_this.elementIdClear(elem.ELEMENT, 'value'));
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator['return']) {
_iterator['return']();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
return _this.unify(elementIdClearCommands);
});
};
exports['default'] = clearElement;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9jb21tYW5kcy9jbGVhckVsZW1lbnQuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7aUNBcUI2Qix1QkFBdUI7O0FBRXBELElBQUksWUFBWSxHQUFHLFNBQWYsWUFBWSxDQUFhLFFBQVEsRUFBRTs7O0FBQ25DLFdBQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxHQUFHLEVBQUs7QUFDekMsWUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFOztBQUV0QyxrQkFBTSxvQ0FBaUIsQ0FBQyxDQUFDLENBQUE7U0FDNUI7O0FBRUQsWUFBSSxzQkFBc0IsR0FBRyxFQUFFLENBQUE7Ozs7OztBQUMvQiw4Q0FBaUIsR0FBRyxDQUFDLEtBQUssNEdBQUU7b0JBQW5CLElBQUk7O0FBQ1Qsc0NBQXNCLENBQUMsSUFBSSxDQUFDLE1BQUssY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQTthQUMxRTs7Ozs7Ozs7Ozs7Ozs7OztBQUVELGVBQU8sTUFBSyxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtLQUM1QyxDQUFDLENBQUE7Q0FDTCxDQUFBOztxQkFFYyxZQUFZIiwiZmlsZSI6ImNsZWFyRWxlbWVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICpcbiAqIENsZWFyIGEgYDx0ZXh0YXJlYT5gIG9yIHRleHQgYDxpbnB1dD5gIGVsZW1lbnTigJlzIHZhbHVlLlxuICpcbiAqIDxleGFtcGxlPlxuICAgIDpjbGVhckVsZW1lbnQuanNcbiAgICBjbGllbnRcbiAgICAgICAgLnNldFZhbHVlKCcuaW5wdXQnLCAndGVzdDEyMycpXG4gICAgICAgIC5jbGVhckVsZW1lbnQoJy5pbnB1dCcpXG4gICAgICAgIC5nZXRWYWx1ZSgnLmlucHV0JykudGhlbihmdW5jdGlvbih2YWx1ZSkge1xuICAgICAgICAgICAgYXNzZXJ0KHZhbHVlID09PSAnJyk7IC8vIHRydWVcbiAgICAgICAgfSk7XG4gKiA8L2V4YW1wbGU+XG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IHNlbGVjdG9yIGlucHV0IGVsZW1lbnRcbiAqXG4gKiBAdXNlcyBwcm90b2NvbC9lbGVtZW50cywgcHJvdG9jb2wvZWxlbWVudElkQ2xlYXJcbiAqIEB0eXBlIGFjdGlvblxuICpcbiAqL1xuXG5pbXBvcnQgeyBDb21tYW5kRXJyb3IgfSBmcm9tICcuLi91dGlscy9FcnJvckhhbmRsZXInXG5cbmxldCBjbGVhckVsZW1lbnQgPSBmdW5jdGlvbiAoc2VsZWN0b3IpIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50cyhzZWxlY3RvcikudGhlbigocmVzKSA9PiB7XG4gICAgICAgIGlmICghcmVzLnZhbHVlIHx8IHJlcy52YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIC8vIHRocm93IE5vU3VjaEVsZW1lbnQgZXJyb3IgaWYgbm8gZWxlbWVudCB3YXMgZm91bmRcbiAgICAgICAgICAgIHRocm93IG5ldyBDb21tYW5kRXJyb3IoNylcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBlbGVtZW50SWRDbGVhckNvbW1hbmRzID0gW11cbiAgICAgICAgZm9yIChsZXQgZWxlbSBvZiByZXMudmFsdWUpIHtcbiAgICAgICAgICAgIGVsZW1lbnRJZENsZWFyQ29tbWFuZHMucHVzaCh0aGlzLmVsZW1lbnRJZENsZWFyKGVsZW0uRUxFTUVOVCwgJ3ZhbHVlJykpXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy51bmlmeShlbGVtZW50SWRDbGVhckNvbW1hbmRzKVxuICAgIH0pXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsZWFyRWxlbWVudFxuIl19