@spscommerce/e2e-core 2.2.2 → 2.2.3
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/README.md +1 -1
- package/lib/globalSetup.js +34 -4
- package/lib/globalSetup.js.map +1 -1
- package/lib/globalTeardown.js +1 -0
- package/lib/globalTeardown.js.map +1 -1
- package/lib/loggerSetup.js +1 -1
- package/lib/loggerSetup.js.map +1 -1
- package/package.json +2 -1
- package/playwright.config.js +4 -3
- package/src/globalSetup.ts +12 -4
- package/src/globalTeardown.ts +1 -0
- package/src/loggerSetup.ts +1 -1
package/README.md
CHANGED
|
@@ -39,7 +39,7 @@ HEADLESS=false BROWSER=chromium npm run test
|
|
|
39
39
|
| ------------------: | -------------------------------------------------- | ------------------------------ | ------------------------------------ |
|
|
40
40
|
| HEADLESS | launch browser in headless/headful mode | true | true, false |
|
|
41
41
|
| BROWSER | use + as a separator, e.g edge+firefox | chromium | chromium, firefox, webkit, edge |
|
|
42
|
-
|
|
|
42
|
+
| ENV | auth state is invoked for the defined env | test | test, prod etc. |
|
|
43
43
|
| SLOWMO | slow down an execution for debugging | 0 | [number_in_ms] |
|
|
44
44
|
| TIMEOUT | global timeout for each test | 30000 | [number_in_ms] |
|
|
45
45
|
| WORKERS | number of workers (test threads) | number of CPUs minus 1 | [number] |
|
package/lib/globalSetup.js
CHANGED
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
27
|
};
|
|
@@ -6,6 +29,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
29
|
const fs_1 = __importDefault(require("fs"));
|
|
7
30
|
const path_1 = __importDefault(require("path"));
|
|
8
31
|
const test_1 = require("@playwright/test");
|
|
32
|
+
const domain = 'commerce.spscommerce.com';
|
|
33
|
+
const baseUrl = process.env.ENV && process.env.ENV === 'prod' ? 'https://' + domain : 'https://test.' + domain;
|
|
9
34
|
async function globalSetup() {
|
|
10
35
|
// Remove custom sub-folders for test artifacts
|
|
11
36
|
const resultsFolder = path_1.default.join(process.cwd(), 'results-e2e/');
|
|
@@ -25,7 +50,7 @@ async function globalSetup() {
|
|
|
25
50
|
await context.tracing.start({ screenshots: true, snapshots: true });
|
|
26
51
|
const page = await context.newPage();
|
|
27
52
|
try {
|
|
28
|
-
await page.goto(
|
|
53
|
+
await page.goto(baseUrl);
|
|
29
54
|
await page.waitForURL(/https:\/\/auth.*/);
|
|
30
55
|
await page.fill('input[type="email"]', process.env.USER_EMAIL);
|
|
31
56
|
await page.click('button#btn-next');
|
|
@@ -41,10 +66,15 @@ async function globalSetup() {
|
|
|
41
66
|
}
|
|
42
67
|
await browser.close();
|
|
43
68
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
69
|
+
if (process.env.SETUP_PATH) {
|
|
70
|
+
if (fs_1.default.existsSync(process.env.SETUP_PATH)) {
|
|
71
|
+
await Promise.resolve().then(() => __importStar(require(process.env.SETUP_PATH)));
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
throw new Error(`${process.env.SETUP_PATH} not found.`);
|
|
75
|
+
}
|
|
47
76
|
}
|
|
77
|
+
return;
|
|
48
78
|
}
|
|
49
79
|
exports.default = globalSetup;
|
|
50
80
|
//# sourceMappingURL=globalSetup.js.map
|
package/lib/globalSetup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"globalSetup.js","sourceRoot":"","sources":["../src/globalSetup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"globalSetup.js","sourceRoot":"","sources":["../src/globalSetup.ts"],"names":[],"mappings":"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"}
|
package/lib/globalTeardown.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"globalTeardown.js","sourceRoot":"","sources":["../src/globalTeardown.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,KAAK,UAAU,cAAc;IACzB,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,0BAA0B,CAAC,CAAC;IACvE,YAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,IAAI,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC1B,KAAK,MAAM,YAAY,IAAI,YAAE,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YAClD,KAAK,MAAM,OAAO,IAAI,YAAE,CAAC,WAAW,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,EAAE;gBACtE,MAAM,WAAW,GAAG,GAAG,SAAS,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;gBAC9D,MAAM,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACpI,MAAM,WAAW,GAAG,GAAG,SAAS,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC1E,YAAE,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;aAC7C;SACJ;KACJ;
|
|
1
|
+
{"version":3,"file":"globalTeardown.js","sourceRoot":"","sources":["../src/globalTeardown.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,KAAK,UAAU,cAAc;IACzB,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,0BAA0B,CAAC,CAAC;IACvE,YAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,IAAI,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC1B,KAAK,MAAM,YAAY,IAAI,YAAE,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YAClD,KAAK,MAAM,OAAO,IAAI,YAAE,CAAC,WAAW,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,EAAE;gBACtE,MAAM,WAAW,GAAG,GAAG,SAAS,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;gBAC9D,MAAM,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACpI,MAAM,WAAW,GAAG,GAAG,SAAS,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC1E,YAAE,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;aAC7C;SACJ;KACJ;IACD,OAAO;AACX,CAAC;AAED,kBAAe,cAAc,CAAC"}
|
package/lib/loggerSetup.js
CHANGED
|
@@ -26,7 +26,7 @@ async function enableLogger(file, page) {
|
|
|
26
26
|
process.stdout.write = process.stderr.write = access.write.bind(access);
|
|
27
27
|
// Write the GitHub link of the currently running test to the beginning of each log file
|
|
28
28
|
console.log(`
|
|
29
|
-
https://github.com/SPSCommerce/${process.env.
|
|
29
|
+
https://github.com/SPSCommerce/${process.env.REPO_NAME}/search?q=${test}`);
|
|
30
30
|
// Listen for errors
|
|
31
31
|
page
|
|
32
32
|
.on('console', async (message) => {
|
package/lib/loggerSetup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loggerSetup.js","sourceRoot":"","sources":["../src/loggerSetup.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAGxB,IAAI,MAAW,CAAC;AAET,KAAK,UAAU,YAAY,CAAC,IAAc,EAAE,IAAU;IACzD,QAAQ;IACR,IAAI;IACJ,8CAA8C;IAC9C,0CAA0C;IAC1C,yBAAyB;IACzB,4DAA4D;IAC5D,IAAI;IACJ,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,IAAI,EAAE,CAAC;IACpC,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAErE,2CAA2C;IAC3C,YAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,kDAAkD;IAClD,MAAM,GAAG,YAAE,CAAC,iBAAiB,CAAC,GAAG,eAAe,IAAI,QAAQ,MAAM,CAAC,CAAA;IACnE,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAExE,wFAAwF;IACxF,OAAO,CAAC,GAAG,CAAC;qCACqB,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"loggerSetup.js","sourceRoot":"","sources":["../src/loggerSetup.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAGxB,IAAI,MAAW,CAAC;AAET,KAAK,UAAU,YAAY,CAAC,IAAc,EAAE,IAAU;IACzD,QAAQ;IACR,IAAI;IACJ,8CAA8C;IAC9C,0CAA0C;IAC1C,yBAAyB;IACzB,4DAA4D;IAC5D,IAAI;IACJ,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,IAAI,EAAE,CAAC;IACpC,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAErE,2CAA2C;IAC3C,YAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,kDAAkD;IAClD,MAAM,GAAG,YAAE,CAAC,iBAAiB,CAAC,GAAG,eAAe,IAAI,QAAQ,MAAM,CAAC,CAAA;IACnE,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAExE,wFAAwF;IACxF,OAAO,CAAC,GAAG,CAAC;qCACqB,OAAO,CAAC,GAAG,CAAC,SAAS,aAAa,IAAI,EAAE,CAAC,CAAC;IAE3E,oBAAoB;IACpB,IAAI;SACC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAC,OAAO,EAAC,EAAE;QAC3B,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE;YAC5B,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,gBAAgB,EAAE;gBACrC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE;oBAC5B,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;aAC1C;YACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SACtE;IACL,CAAC,CAAC;SACD,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC,EAAE,CAC3B,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,CAAC,OAAO,EAAE,CAAC,SAAS,KAAK,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;SACrF,EAAE,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE;QACrB,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IAC/C,CAAC,CAAC;SACD,EAAE,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;QACzB,IAAI,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE;YAC1B,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,KAAK,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;SAC9E;IACL,CAAC,CAAC,CAAA;IACN,OAAO;AACX,CAAC;AA9CD,oCA8CC;AAEM,KAAK,UAAU,aAAa;IAC/B,uBAAuB;IACvB,MAAM,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO;AACX,CAAC;AAJD,sCAIC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spscommerce/e2e-core",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.3",
|
|
4
4
|
"description": "An automation test framework which is based on Playwright.",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
"@playwright/test": "^1.22.0-alpha-apr-10-2022",
|
|
29
29
|
"@typescript-eslint/eslint-plugin": "^4.33.0",
|
|
30
30
|
"@typescript-eslint/parser": "^4.33.0",
|
|
31
|
+
"dotenv": "^16.0.0",
|
|
31
32
|
"eslint": "^7.32.0",
|
|
32
33
|
"jest-extended": "^1.2.0",
|
|
33
34
|
"typescript": "^4.4.4"
|
package/playwright.config.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
const path = require('path');
|
|
2
2
|
|
|
3
|
+
if (process.env.CONFIG_PATH) {
|
|
4
|
+
require('dotenv').config({ path: process.env.CONFIG_PATH });
|
|
5
|
+
}
|
|
6
|
+
|
|
3
7
|
const reportName = process.env.SUITE ? `${process.env.SUITE}.xml` : `TEST-result.xml`;
|
|
4
8
|
|
|
5
9
|
let browserProject = [];
|
|
@@ -33,9 +37,6 @@ switch (process.env.BROWSER) {
|
|
|
33
37
|
break;
|
|
34
38
|
}
|
|
35
39
|
|
|
36
|
-
const domain = 'commerce.spscommerce.com';
|
|
37
|
-
process.env.BASEURL = process.env.URL && process.env.URL === 'prod' ? 'https://' + domain : 'https://test.' + domain;
|
|
38
|
-
|
|
39
40
|
/**
|
|
40
41
|
* See https://playwright.dev/docs/test-configuration.
|
|
41
42
|
*/
|
package/src/globalSetup.ts
CHANGED
|
@@ -2,6 +2,9 @@ import fs from 'fs';
|
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import { chromium } from '@playwright/test';
|
|
4
4
|
|
|
5
|
+
const domain = 'commerce.spscommerce.com';
|
|
6
|
+
const baseUrl = process.env.ENV && process.env.ENV === 'prod' ? 'https://' + domain : 'https://test.' + domain;
|
|
7
|
+
|
|
5
8
|
async function globalSetup() {
|
|
6
9
|
// Remove custom sub-folders for test artifacts
|
|
7
10
|
const resultsFolder = path.join(process.cwd(), 'results-e2e/');
|
|
@@ -19,7 +22,7 @@ async function globalSetup() {
|
|
|
19
22
|
await context.tracing.start({ screenshots: true, snapshots: true });
|
|
20
23
|
const page = await context.newPage();
|
|
21
24
|
try {
|
|
22
|
-
await page.goto(
|
|
25
|
+
await page.goto(baseUrl);
|
|
23
26
|
await page.waitForURL(/https:\/\/auth.*/);
|
|
24
27
|
await page.fill('input[type="email"]', process.env.USER_EMAIL);
|
|
25
28
|
await page.click('button#btn-next');
|
|
@@ -33,10 +36,15 @@ async function globalSetup() {
|
|
|
33
36
|
throw new Error('Error occurred while running globalSetup.ts file.');
|
|
34
37
|
}
|
|
35
38
|
await browser.close();
|
|
36
|
-
} else {
|
|
37
|
-
const stat = fs.statSync(storageFile);
|
|
38
|
-
console.log(stat);
|
|
39
39
|
}
|
|
40
|
+
if (process.env.SETUP_PATH) {
|
|
41
|
+
if (fs.existsSync(process.env.SETUP_PATH)) {
|
|
42
|
+
await import(process.env.SETUP_PATH);
|
|
43
|
+
} else {
|
|
44
|
+
throw new Error(`${process.env.SETUP_PATH} not found.`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return;
|
|
40
48
|
}
|
|
41
49
|
|
|
42
50
|
export default globalSetup;
|
package/src/globalTeardown.ts
CHANGED
package/src/loggerSetup.ts
CHANGED
|
@@ -26,7 +26,7 @@ export async function enableLogger(file: string[], page: Page): Promise<void> {
|
|
|
26
26
|
|
|
27
27
|
// Write the GitHub link of the currently running test to the beginning of each log file
|
|
28
28
|
console.log(`
|
|
29
|
-
https://github.com/SPSCommerce/${process.env.
|
|
29
|
+
https://github.com/SPSCommerce/${process.env.REPO_NAME}/search?q=${test}`);
|
|
30
30
|
|
|
31
31
|
// Listen for errors
|
|
32
32
|
page
|