create-testplane
Version:
A tool for fast and simple Testplane configuration
67 lines • 3.01 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const lodash_1 = __importDefault(require("lodash"));
const plugins_1 = require("../constants/plugins");
const defaultTestplaneConfig_1 = require("../constants/defaultTestplaneConfig");
const utils_1 = require("../utils");
exports.default = {
name: plugins_1.TESTPLANE_SAFARI_COMMANDS,
fn: async (config) => {
const browserId = "safari";
const createInputPrompt = message => ({
type: "input",
message: "testplane-safari-commands: " + message,
});
const deviceName = await (0, utils_1.inquirerPrompt)(createInputPrompt("Enter device name (ex: iPhone 11):"));
const platformVersion = await (0, utils_1.inquirerPrompt)(createInputPrompt("Enter iOS version (ex: 13.3):"));
const version = await (0, utils_1.inquirerPrompt)(createInputPrompt("Enter safari version (ex: 13.0):"));
lodash_1.default.mergeWith(config, {
sets: {
"touch-phone": {
browsers: [browserId],
files: [`${defaultTestplaneConfig_1.defaultTestplaneTestsDir}/**/*.testplane.(t|j)s`],
},
},
browsers: {
[browserId]: {
sessionEnvFlags: { isW3C: false },
desiredCapabilities: {
platformName: "iOS",
platformVersion,
version,
deviceName,
browserName: "safari",
automationName: "XCUITest",
},
},
},
plugins: {
[plugins_1.TESTPLANE_SAFARI_COMMANDS]: {
__comment: "https://github.com/gemini-testing/testplane-safari-commands",
enabled: true,
browsers: Object.keys(config.browsers)
.filter(browser => browser.includes("safari"))
.reduce((browsers, browser) => {
browsers[browser] = {
commands: [
"url",
"click",
"screenshot",
"orientation",
"swipe",
"touch",
"dragAndDrop",
"deviceClickBack",
],
};
return browsers;
}, {}),
},
},
}, (objValue, srcValue) => (lodash_1.default.isArray(objValue) ? lodash_1.default.uniq(objValue.concat(srcValue)) : undefined));
},
};
//# sourceMappingURL=testplane-safari-commands.js.map