testcafe
Version:
Automated browser testing for the modern web development stack.
44 lines • 5.15 kB
JavaScript
;
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const selector_builder_1 = __importDefault(require("../../../client-functions/selectors/selector-builder"));
const test_run_1 = require("../../../errors/test-run");
const runtime_1 = require("../../../errors/runtime");
const observation_1 = require("../observation");
const execute_js_expression_1 = __importDefault(require("../../execute-js-expression"));
const utils_1 = require("../utils");
function initUploadSelector(name, val, initOptions) {
initOptions.skipVisibilityCheck = true;
return initSelector(name, val, initOptions);
}
exports.initUploadSelector = initUploadSelector;
function initSelector(name, val, _a) {
var { testRun } = _a, options = __rest(_a, ["testRun"]);
if (val instanceof observation_1.ExecuteSelectorCommand)
return val;
try {
if (utils_1.isJSExpression(val))
val = execute_js_expression_1.default(val.value, testRun, options);
const { skipVisibilityCheck } = options, builderOptions = __rest(options, ["skipVisibilityCheck"]);
const builder = new selector_builder_1.default(val, Object.assign({ visibilityCheck: !skipVisibilityCheck }, builderOptions), { instantiation: 'Selector' });
return builder.getCommand([]);
}
catch (err) {
throw new test_run_1.ActionSelectorError(name, err, err instanceof runtime_1.APIError);
}
}
exports.initSelector = initSelector;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbGl6ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Rlc3QtcnVuL2NvbW1hbmRzL3ZhbGlkYXRpb25zL2luaXRpYWxpemVycy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNEdBQW1GO0FBQ25GLHVEQUErRDtBQUMvRCxxREFBbUQ7QUFDbkQsZ0RBQXdEO0FBQ3hELHdGQUE4RDtBQUM5RCxvQ0FBMEM7QUFFMUMsU0FBZ0Isa0JBQWtCLENBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxXQUFXO0lBQ3RELFdBQVcsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7SUFFdkMsT0FBTyxZQUFZLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztBQUNoRCxDQUFDO0FBSkQsZ0RBSUM7QUFFRCxTQUFnQixZQUFZLENBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUF1QjtRQUF2QixFQUFFLE9BQU8sT0FBYyxFQUFaLGlDQUFVO0lBQzFELElBQUksR0FBRyxZQUFZLG9DQUFzQjtRQUNyQyxPQUFPLEdBQUcsQ0FBQztJQUVmLElBQUk7UUFDQSxJQUFJLHNCQUFjLENBQUMsR0FBRyxDQUFDO1lBQ25CLEdBQUcsR0FBRywrQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUUzRCxNQUFNLEVBQUUsbUJBQW1CLEtBQXdCLE9BQU8sRUFBN0IseURBQTZCLENBQUM7UUFFM0QsTUFBTSxPQUFPLEdBQUcsSUFBSSwwQkFBZSxDQUFDLEdBQUcsa0JBQ25DLGVBQWUsRUFBRSxDQUFDLG1CQUFtQixJQUNsQyxjQUFjLEdBQ2xCLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFFbEMsT0FBTyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQ2pDO0lBQ0QsT0FBTyxHQUFHLEVBQUU7UUFDUixNQUFNLElBQUksOEJBQW1CLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLFlBQVksa0JBQVEsQ0FBQyxDQUFDO0tBQ3JFO0FBQ0wsQ0FBQztBQXBCRCxvQ0FvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU2VsZWN0b3JCdWlsZGVyIGZyb20gJy4uLy4uLy4uL2NsaWVudC1mdW5jdGlvbnMvc2VsZWN0b3JzL3NlbGVjdG9yLWJ1aWxkZXInO1xuaW1wb3J0IHsgQWN0aW9uU2VsZWN0b3JFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycy90ZXN0LXJ1bic7XG5pbXBvcnQgeyBBUElFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycy9ydW50aW1lJztcbmltcG9ydCB7IEV4ZWN1dGVTZWxlY3RvckNvbW1hbmQgfSBmcm9tICcuLi9vYnNlcnZhdGlvbic7XG5pbXBvcnQgZXhlY3V0ZUpzRXhwcmVzc2lvbiBmcm9tICcuLi8uLi9leGVjdXRlLWpzLWV4cHJlc3Npb24nO1xuaW1wb3J0IHsgaXNKU0V4cHJlc3Npb24gfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0VXBsb2FkU2VsZWN0b3IgKG5hbWUsIHZhbCwgaW5pdE9wdGlvbnMpIHtcbiAgICBpbml0T3B0aW9ucy5za2lwVmlzaWJpbGl0eUNoZWNrID0gdHJ1ZTtcblxuICAgIHJldHVybiBpbml0U2VsZWN0b3IobmFtZSwgdmFsLCBpbml0T3B0aW9ucyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0U2VsZWN0b3IgKG5hbWUsIHZhbCwgeyB0ZXN0UnVuLCAuLi5vcHRpb25zIH0pIHtcbiAgICBpZiAodmFsIGluc3RhbmNlb2YgRXhlY3V0ZVNlbGVjdG9yQ29tbWFuZClcbiAgICAgICAgcmV0dXJuIHZhbDtcblxuICAgIHRyeSB7XG4gICAgICAgIGlmIChpc0pTRXhwcmVzc2lvbih2YWwpKVxuICAgICAgICAgICAgdmFsID0gZXhlY3V0ZUpzRXhwcmVzc2lvbih2YWwudmFsdWUsIHRlc3RSdW4sIG9wdGlvbnMpO1xuXG4gICAgICAgIGNvbnN0IHsgc2tpcFZpc2liaWxpdHlDaGVjaywgLi4uYnVpbGRlck9wdGlvbnMgfSA9IG9wdGlvbnM7XG5cbiAgICAgICAgY29uc3QgYnVpbGRlciA9IG5ldyBTZWxlY3RvckJ1aWxkZXIodmFsLCB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5Q2hlY2s6ICFza2lwVmlzaWJpbGl0eUNoZWNrLFxuICAgICAgICAgICAgLi4uYnVpbGRlck9wdGlvbnNcbiAgICAgICAgfSwgeyBpbnN0YW50aWF0aW9uOiAnU2VsZWN0b3InIH0pO1xuXG4gICAgICAgIHJldHVybiBidWlsZGVyLmdldENvbW1hbmQoW10pO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHRocm93IG5ldyBBY3Rpb25TZWxlY3RvckVycm9yKG5hbWUsIGVyciwgZXJyIGluc3RhbmNlb2YgQVBJRXJyb3IpO1xuICAgIH1cbn1cbiJdfQ==