testcafe
Version:
Automated browser testing for the modern web development stack.
29 lines • 3.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isArrayOfNodes = exports.castToArray = exports.isNodeCollection = void 0;
// @ts-ignore
const hammerhead_1 = require("../../../deps/hammerhead");
function isNodeCollection(obj) {
return obj instanceof hammerhead_1.nativeMethods.HTMLCollection || obj instanceof hammerhead_1.nativeMethods.NodeList;
}
exports.isNodeCollection = isNodeCollection;
function castToArray(list) {
const length = list.length;
const result = [];
for (let i = 0; i < length; i++)
result.push(list[i]);
return result;
}
exports.castToArray = castToArray;
function isArrayOfNodes(obj) {
if (!hammerhead_1.nativeMethods.isArray(obj))
return false;
for (let i = 0; i < obj.length; i++) {
// @ts-ignore
if (!(obj[i] instanceof hammerhead_1.nativeMethods.Node))
return false;
}
return true;
}
exports.isArrayOfNodes = isArrayOfNodes;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2xpZW50L2RyaXZlci9jb21tYW5kLWV4ZWN1dG9ycy9jbGllbnQtZnVuY3Rpb25zL3NlbGVjdG9yLWV4ZWN1dG9yL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGFBQWE7QUFDYix5REFBeUQ7QUFHekQsU0FBZ0IsZ0JBQWdCLENBQUUsR0FBWTtJQUMxQyxPQUFPLEdBQUcsWUFBWSwwQkFBYSxDQUFDLGNBQWMsSUFBSSxHQUFHLFlBQVksMEJBQWEsQ0FBQyxRQUFRLENBQUM7QUFDaEcsQ0FBQztBQUZELDRDQUVDO0FBRUQsU0FBZ0IsV0FBVyxDQUFFLElBQStCO0lBQ3hELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDM0IsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBRWxCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFO1FBQzNCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFekIsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQztBQVJELGtDQVFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFFLEdBQVk7SUFDeEMsSUFBSSxDQUFDLDBCQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUMzQixPQUFPLEtBQUssQ0FBQztJQUVqQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUksR0FBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUN6QyxhQUFhO1FBQ2IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZLDBCQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3ZDLE9BQU8sS0FBSyxDQUFDO0tBQ3BCO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQztBQVhELHdDQVdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0IHsgbmF0aXZlTWV0aG9kcyB9IGZyb20gJy4uLy4uLy4uL2RlcHMvaGFtbWVyaGVhZCc7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTm9kZUNvbGxlY3Rpb24gKG9iajogdW5rbm93bik6IG9iaiBpcyBIVE1MQ29sbGVjdGlvbiB8IE5vZGVMaXN0IHtcbiAgICByZXR1cm4gb2JqIGluc3RhbmNlb2YgbmF0aXZlTWV0aG9kcy5IVE1MQ29sbGVjdGlvbiB8fCBvYmogaW5zdGFuY2VvZiBuYXRpdmVNZXRob2RzLk5vZGVMaXN0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2FzdFRvQXJyYXkgKGxpc3Q6IEhUTUxDb2xsZWN0aW9uIHwgTm9kZUxpc3QpOiBOb2RlW10ge1xuICAgIGNvbnN0IGxlbmd0aCA9IGxpc3QubGVuZ3RoO1xuICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKylcbiAgICAgICAgcmVzdWx0LnB1c2gobGlzdFtpXSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBcnJheU9mTm9kZXMgKG9iajogdW5rbm93bik6IG9iaiBpcyBOb2RlW10ge1xuICAgIGlmICghbmF0aXZlTWV0aG9kcy5pc0FycmF5KG9iaikpXG4gICAgICAgIHJldHVybiBmYWxzZTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgKG9iaiBhcyBbXSkubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBpZiAoIShvYmpbaV0gaW5zdGFuY2VvZiBuYXRpdmVNZXRob2RzLk5vZGUpKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xufVxuIl19