UNPKG

@rbnx/webdriverio

Version:

webdriverio plugin for nx

48 lines 1.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.addProjectFiles = void 0; const devkit_1 = require("@nx/devkit"); const wdio_1 = require("../../../wdio"); function addProjectFiles(tree, options) { const { projectRoot } = options; const framework = options.framework ?? (0, wdio_1.readPropertyFromConfig)(tree, 'wdio.base.config.ts', 'framework').shift(); const services = [ ...new Set([ ...(options.services ?? []), ...(0, wdio_1.readPropertyFromConfig)(tree, 'wdio.base.config.ts', 'services'), ]), ]; const templateOptions = { options, framework, protocol: options.protocol ?? getProtocol(services), wdioFrameworkType: getFrameWorkTypePackage(framework), wdioServiceTypes: getServiceTypePackage(services), offsetFromRoot: (0, devkit_1.offsetFromRoot)(projectRoot), tmpl: '', }; if (options.browsers) { options.capabilities = (0, wdio_1.capabilitiesFilter)(options); } (0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, '..', 'files'), projectRoot, templateOptions); } exports.addProjectFiles = addProjectFiles; function getFrameWorkTypePackage(framework) { const frameworkTypePackages = new Map([ ['mocha', '@wdio/mocha-framework'], ['jasmine', '@wdio/jasmine-framework'], ['cucumber', '@wdio/cucumber-framework'], ]); return frameworkTypePackages.get(framework) ?? ''; } function getServiceTypePackage(services) { const serviceTypePackages = new Map([['devtools', '@wdio/devtools-service']]); return services .map((service) => serviceTypePackages.get(service)) .filter(Boolean); } function getProtocol(services) { return services.includes('devtools') ? 'devtools' : 'webdriver'; } //# sourceMappingURL=add-project-files.js.map