UNPKG

@testim/testim-cli

Version:

Command line interface for running Testing on you CI

72 lines (59 loc) 5.02 kB
/** * * Get source code of specified DOM element by selector. * * <example> :index.html <div id="test"> <span>Lorem ipsum dolor amet</span> </div> :getHTML.js client .getHTML('#test', function(err, html) { console.log(html); // outputs the following: // "<div id="test"><span>Lorem ipsum dolor amet</span></div>" }) .getHTML('#test', false, function(err, html) { console.log(html); // outputs the following: // "<span>Lorem ipsum dolor amet</span>" }); * </example> * * @param {String} selector element to get the current DOM structure from * @param {Boolean=} includeSelectorTag if true it includes the selector element tag (default: true) * * @uses action/selectorExecute * @type property * */ 'use strict'; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; Object.defineProperty(exports, '__esModule', { value: true }); var _utilsErrorHandler = require('../utils/ErrorHandler'); var _scriptsGetHTML = require('../scripts/getHTML'); var _scriptsGetHTML2 = _interopRequireDefault(_scriptsGetHTML); var getHTML = function getHTML(selector) { var includeSelectorTag = arguments.length <= 1 || arguments[1] === undefined ? true : arguments[1]; /*! * parameter check */ if (typeof selector !== 'string') { throw new _utilsErrorHandler.CommandError('number or type of arguments don\'t agree with getHTML command'); } return this.selectorExecute(selector, _scriptsGetHTML2['default'], includeSelectorTag).then(function (html) { /** * throw NoSuchElement error if no element was found */ if (!html) { throw new _utilsErrorHandler.CommandError(7); } return html && html.length === 1 ? html[0] : html; }); }; exports['default'] = getHTML; module.exports = exports['default']; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9jb21tYW5kcy9nZXRIVE1MLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7aUNBZ0M2Qix1QkFBdUI7OzhCQUMxQixvQkFBb0I7Ozs7QUFFOUMsSUFBSSxPQUFPLEdBQUcsU0FBVixPQUFPLENBQWEsUUFBUSxFQUE2QjtRQUEzQixrQkFBa0IseURBQUcsSUFBSTs7Ozs7QUFJdkQsUUFBSSxPQUFPLFFBQVEsS0FBSyxRQUFRLEVBQUU7QUFDOUIsY0FBTSxvQ0FBaUIsK0RBQStELENBQUMsQ0FBQTtLQUMxRjs7QUFFRCxXQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSwrQkFBaUIsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxJQUFJLEVBQUs7Ozs7QUFJcEYsWUFBSSxDQUFDLElBQUksRUFBRTtBQUNQLGtCQUFNLG9DQUFpQixDQUFDLENBQUMsQ0FBQTtTQUM1Qjs7QUFFRCxlQUFPLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFBO0tBQ3BELENBQUMsQ0FBQTtDQUNMLENBQUE7O3FCQUVjLE9BQU8iLCJmaWxlIjoiZ2V0SFRNTC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICpcbiAqIEdldCBzb3VyY2UgY29kZSBvZiBzcGVjaWZpZWQgRE9NIGVsZW1lbnQgYnkgc2VsZWN0b3IuXG4gKlxuICogPGV4YW1wbGU+XG4gICAgOmluZGV4Lmh0bWxcbiAgICA8ZGl2IGlkPVwidGVzdFwiPlxuICAgICAgICA8c3Bhbj5Mb3JlbSBpcHN1bSBkb2xvciBhbWV0PC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgOmdldEhUTUwuanNcbiAgICBjbGllbnRcbiAgICAgICAgLmdldEhUTUwoJyN0ZXN0JywgZnVuY3Rpb24oZXJyLCBodG1sKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhodG1sKTtcbiAgICAgICAgICAgIC8vIG91dHB1dHMgdGhlIGZvbGxvd2luZzpcbiAgICAgICAgICAgIC8vIFwiPGRpdiBpZD1cInRlc3RcIj48c3Bhbj5Mb3JlbSBpcHN1bSBkb2xvciBhbWV0PC9zcGFuPjwvZGl2PlwiXG4gICAgICAgIH0pXG4gICAgICAgIC5nZXRIVE1MKCcjdGVzdCcsIGZhbHNlLCBmdW5jdGlvbihlcnIsIGh0bWwpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGh0bWwpO1xuICAgICAgICAgICAgLy8gb3V0cHV0cyB0aGUgZm9sbG93aW5nOlxuICAgICAgICAgICAgLy8gXCI8c3Bhbj5Mb3JlbSBpcHN1bSBkb2xvciBhbWV0PC9zcGFuPlwiXG4gICAgICAgIH0pO1xuICogPC9leGFtcGxlPlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSAgIHNlbGVjdG9yICAgICAgICAgICBlbGVtZW50IHRvIGdldCB0aGUgY3VycmVudCBET00gc3RydWN0dXJlIGZyb21cbiAqIEBwYXJhbSB7Qm9vbGVhbj19IGluY2x1ZGVTZWxlY3RvclRhZyBpZiB0cnVlIGl0IGluY2x1ZGVzIHRoZSBzZWxlY3RvciBlbGVtZW50IHRhZyAoZGVmYXVsdDogdHJ1ZSlcbiAqXG4gKiBAdXNlcyBhY3Rpb24vc2VsZWN0b3JFeGVjdXRlXG4gKiBAdHlwZSBwcm9wZXJ0eVxuICpcbiAqL1xuXG5pbXBvcnQgeyBDb21tYW5kRXJyb3IgfSBmcm9tICcuLi91dGlscy9FcnJvckhhbmRsZXInXG5pbXBvcnQgZ2V0SFRNTEhlbHBlciBmcm9tICcuLi9zY3JpcHRzL2dldEhUTUwnXG5cbmxldCBnZXRIVE1MID0gZnVuY3Rpb24gKHNlbGVjdG9yLCBpbmNsdWRlU2VsZWN0b3JUYWcgPSB0cnVlKSB7XG4gICAgLyohXG4gICAgICogcGFyYW1ldGVyIGNoZWNrXG4gICAgICovXG4gICAgaWYgKHR5cGVvZiBzZWxlY3RvciAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1hbmRFcnJvcignbnVtYmVyIG9yIHR5cGUgb2YgYXJndW1lbnRzIGRvblxcJ3QgYWdyZWUgd2l0aCBnZXRIVE1MIGNvbW1hbmQnKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnNlbGVjdG9yRXhlY3V0ZShzZWxlY3RvciwgZ2V0SFRNTEhlbHBlciwgaW5jbHVkZVNlbGVjdG9yVGFnKS50aGVuKChodG1sKSA9PiB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiB0aHJvdyBOb1N1Y2hFbGVtZW50IGVycm9yIGlmIG5vIGVsZW1lbnQgd2FzIGZvdW5kXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoIWh0bWwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBDb21tYW5kRXJyb3IoNylcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBodG1sICYmIGh0bWwubGVuZ3RoID09PSAxID8gaHRtbFswXSA6IGh0bWxcbiAgICB9KVxufVxuXG5leHBvcnQgZGVmYXVsdCBnZXRIVE1MXG4iXX0=