@zohodesk/testinglibrary 0.4.74-n18-experimental → 0.4.75-n18-experimental
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/core/playwright/builtInFixtures/page.js +1 -3
- package/build/core/playwright/helpers/auth/accountLogin.js +1 -4
- package/build/core/playwright/helpers/auth/loginSteps.js +1 -0
- package/build/core/playwright/runner/SpawnRunner.js +9 -1
- package/build/core/playwright/setup/config-creator.js +6 -6
- package/build/core/playwright/setup/config-utils.js +2 -1
- package/build/utils/fileUtils.js +1 -2
- package/npm-shrinkwrap.json +3231 -1291
- package/package.json +5 -6
- package/build/core/playwright/helpers/additionalProfiles.js +0 -18
- package/build/core/playwright/setup/qc-custom-reporter.js +0 -291
|
@@ -9,8 +9,6 @@ var _auth = require("../helpers/auth");
|
|
|
9
9
|
var _readConfigFile = require("../readConfigFile");
|
|
10
10
|
/* eslint-disable global-require */
|
|
11
11
|
|
|
12
|
-
//import { additionProfiles } from '../helpers/additionalProfiles';
|
|
13
|
-
|
|
14
12
|
function getTagInputFromSelectedTags(tags, inputString) {
|
|
15
13
|
const selectedTag = [...tags].reverse().find(tag => tag.startsWith(inputString));
|
|
16
14
|
let tagInput = null;
|
|
@@ -20,7 +18,7 @@ function getTagInputFromSelectedTags(tags, inputString) {
|
|
|
20
18
|
return tagInput;
|
|
21
19
|
}
|
|
22
20
|
function getCustomAccountDetails(tags) {
|
|
23
|
-
const tagsTobeFiltered = ['@profile', '@edition', '@beta', '@portal'
|
|
21
|
+
const tagsTobeFiltered = ['@profile', '@edition', '@beta', '@portal'];
|
|
24
22
|
const filteredTags = tags.filter(tag => tagsTobeFiltered.some(prefix => tag.startsWith(prefix)));
|
|
25
23
|
if (filteredTags && filteredTags.length > 0) {
|
|
26
24
|
const portalInfo = getTagInputFromSelectedTags(filteredTags, '@portal');
|
|
@@ -13,9 +13,6 @@ async function accountLogin(page, useremail, password) {
|
|
|
13
13
|
await page.locator('#nextbtn').click();
|
|
14
14
|
const domainUrlOrigin = (0, _getUrlOrigin.default)(process.env.domain);
|
|
15
15
|
await page.waitForNavigation();
|
|
16
|
-
|
|
17
|
-
await page.goto(domainUrlOrigin);
|
|
18
|
-
}
|
|
19
|
-
await page.waitForURL(`${domainUrlOrigin}/**`);
|
|
16
|
+
await Promise.race([page.waitForURL(`${domainUrlOrigin}/**`), page.waitForURL('**/announcement/**')]);
|
|
20
17
|
}
|
|
21
18
|
var _default = exports.default = accountLogin;
|
|
@@ -10,6 +10,7 @@ var _fileMutex = _interopRequireDefault(require("../fileMutex"));
|
|
|
10
10
|
var _fileMutexConfig = require("../../constants/fileMutexConfig");
|
|
11
11
|
var _checkAuthCookies = require("./checkAuthCookies");
|
|
12
12
|
var _checkAuthDirectory = require("../checkAuthDirectory");
|
|
13
|
+
var _fs = require("fs");
|
|
13
14
|
/* eslint-disable no-console */
|
|
14
15
|
|
|
15
16
|
async function performLoginSteps(testInfo, isLoggedIn, loginSteps) {
|
|
@@ -80,7 +80,7 @@ class SpawnRunner extends _Runner.default {
|
|
|
80
80
|
const args = ['test', '--config', require.resolve(configPath)].concat(playwrightArgs);
|
|
81
81
|
return new Promise((resolve, reject) => {
|
|
82
82
|
const childProcessForRunningPlaywright = (0, _child_process.spawn)(command, args, {
|
|
83
|
-
stdio: '
|
|
83
|
+
stdio: 'pipe',
|
|
84
84
|
env: {
|
|
85
85
|
...process.env
|
|
86
86
|
}
|
|
@@ -88,6 +88,14 @@ class SpawnRunner extends _Runner.default {
|
|
|
88
88
|
childProcessForRunningPlaywright.on('error', error => {
|
|
89
89
|
_logger.Logger.log(_logger.Logger.FAILURE_TYPE, error);
|
|
90
90
|
});
|
|
91
|
+
childProcessForRunningPlaywright.stdout.on('data', data => {
|
|
92
|
+
let stdoutData = data.toString();
|
|
93
|
+
if (stdoutData.includes('failed') && stdoutData.includes('smokeTest')) {
|
|
94
|
+
console.log(stdoutData);
|
|
95
|
+
console.log("Smoke test execution failed, so the main execution was skipped");
|
|
96
|
+
_logger.Logger.log(_logger.Logger.FAILURE_TYPE, 'Smoke Test Failed');
|
|
97
|
+
}
|
|
98
|
+
});
|
|
91
99
|
childProcessForRunningPlaywright.on('exit', (code, signal) => {
|
|
92
100
|
if (code !== 0) {
|
|
93
101
|
reject(`Child Process Exited with Code ${code} and Signal ${signal}`);
|
|
@@ -52,8 +52,8 @@ let reporter = [['html', {
|
|
|
52
52
|
outputFolder: reportPath,
|
|
53
53
|
open: openReportOn
|
|
54
54
|
}], ['list'], ['json', {
|
|
55
|
-
outputFile: _path.default.join(process.cwd(), 'uat', 'test-results', '
|
|
56
|
-
}], ['./custom-reporter.js']
|
|
55
|
+
outputFile: _path.default.join(process.cwd(), 'uat', 'test-results', 'test-results.json')
|
|
56
|
+
}], ['./custom-reporter.js']];
|
|
57
57
|
if (customReporter) {
|
|
58
58
|
reporter = [customReporter, ...reporter];
|
|
59
59
|
}
|
|
@@ -69,7 +69,7 @@ function getPlaywrightConfig() {
|
|
|
69
69
|
storageState: isAuthMode ? (0, _readConfigFile.getAuthFilePath)(_path.default.resolve(process.cwd(), authFilePath)) : {}
|
|
70
70
|
};
|
|
71
71
|
const dependencies = isAuthMode ? ['setup'] : [];
|
|
72
|
-
const smokeTestProject =
|
|
72
|
+
const smokeTestProject = {
|
|
73
73
|
name: 'smokeTest',
|
|
74
74
|
testMatch: /.*\.smokeTest\.js/,
|
|
75
75
|
testDir: _path.default.join(process.cwd(), 'uat'),
|
|
@@ -77,7 +77,7 @@ function getPlaywrightConfig() {
|
|
|
77
77
|
...commonConfig
|
|
78
78
|
},
|
|
79
79
|
dependencies: dependencies
|
|
80
|
-
}
|
|
80
|
+
};
|
|
81
81
|
const playwrightConfig = {
|
|
82
82
|
testDir,
|
|
83
83
|
globalTimeout: globalTimeout || 3600000,
|
|
@@ -94,11 +94,11 @@ function getPlaywrightConfig() {
|
|
|
94
94
|
testMatch: /.*\.setup\.js/,
|
|
95
95
|
testDir: _path.default.join(process.cwd(), 'uat'),
|
|
96
96
|
teardown: 'cleanup'
|
|
97
|
-
}, smokeTestProject, {
|
|
97
|
+
}, ...(isSmokeTest ? [smokeTestProject] : []), {
|
|
98
98
|
name: 'cleanup',
|
|
99
99
|
testMatch: /.*\.teardown\.js/,
|
|
100
100
|
testDir: _path.default.join(process.cwd(), 'uat')
|
|
101
|
-
}, ...projects] : [...projects, smokeTestProject],
|
|
101
|
+
}, ...projects] : [...projects, ...(isSmokeTest ? [smokeTestProject] : [])],
|
|
102
102
|
...uatConfig
|
|
103
103
|
};
|
|
104
104
|
return playwrightConfig;
|
|
@@ -35,7 +35,8 @@ function getBrowserConfig({
|
|
|
35
35
|
storageState: isAuthMode ? (0, _readConfigFile.getAuthFilePath)(_path.default.resolve(process.cwd(), authFilePath)) : {}
|
|
36
36
|
};
|
|
37
37
|
// Determine dependencies based on the mode and smoke test status
|
|
38
|
-
|
|
38
|
+
let dependencies = isAuthMode ? ['setup'] : [];
|
|
39
|
+
dependencies = isSmokeTest ? [...dependencies, 'smokeTest'] : dependencies;
|
|
39
40
|
if (browser === 'chrome') {
|
|
40
41
|
return {
|
|
41
42
|
name: _browserTypes.BROWSER_PROJECT_MAPPING.CHROME,
|
package/build/utils/fileUtils.js
CHANGED
|
@@ -14,8 +14,7 @@ var _fs = _interopRequireDefault(require("fs"));
|
|
|
14
14
|
var _path = _interopRequireDefault(require("path"));
|
|
15
15
|
var _logger = require("./logger");
|
|
16
16
|
var glob = _interopRequireWildcard(require("glob"));
|
|
17
|
-
function
|
|
18
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
19
18
|
function checkIfFileExists(file) {
|
|
20
19
|
try {
|
|
21
20
|
_fs.default.accessSync(file, _fs.default.constants.F_OK);
|