@browsermation/test 0.0.3 → 0.0.4
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/dist/bin/cli.js +10 -5
- package/dist/index.js +78 -2
- package/package.json +7 -5
package/dist/bin/cli.js
CHANGED
|
@@ -42626,6 +42626,9 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
|
|
|
42626
42626
|
if (env.TERM === "xterm-ghostty") {
|
|
42627
42627
|
return 3;
|
|
42628
42628
|
}
|
|
42629
|
+
if (env.TERM === "wezterm") {
|
|
42630
|
+
return 3;
|
|
42631
|
+
}
|
|
42629
42632
|
if ("TERM_PROGRAM" in env) {
|
|
42630
42633
|
const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
|
|
42631
42634
|
switch (env.TERM_PROGRAM) {
|
|
@@ -42869,12 +42872,11 @@ var {
|
|
|
42869
42872
|
// package.json
|
|
42870
42873
|
var package_default = {
|
|
42871
42874
|
name: "@browsermation/test",
|
|
42872
|
-
version: "0.0.
|
|
42875
|
+
version: "0.0.4",
|
|
42873
42876
|
description: "The testing platform for Playwright by Browsermation.",
|
|
42874
42877
|
main: "dist/index.js",
|
|
42875
42878
|
exports: {
|
|
42876
|
-
".": "./dist/index.js"
|
|
42877
|
-
"./package.json": "./package.json"
|
|
42879
|
+
".": "./dist/index.js"
|
|
42878
42880
|
},
|
|
42879
42881
|
bin: {
|
|
42880
42882
|
browsermation: "dist/bin/cli.js"
|
|
@@ -42884,8 +42886,8 @@ var package_default = {
|
|
|
42884
42886
|
],
|
|
42885
42887
|
publisher: "@browsermation",
|
|
42886
42888
|
scripts: {
|
|
42887
|
-
"build:cli": "esbuild src/bin/cli.ts --bundle --platform=node --target=node22 --outfile=dist/bin/cli.js ",
|
|
42888
|
-
"build:index": "esbuild src/index.ts --bundle --platform=node --target=node22 --outfile=dist/index.js ",
|
|
42889
|
+
"build:cli": "esbuild src/bin/cli.ts --bundle --platform=node --external:playwright --target=node22 --outfile=dist/bin/cli.js ",
|
|
42890
|
+
"build:index": "esbuild src/index.ts --bundle --platform=node --external:playwright --target=node22 --outfile=dist/index.js ",
|
|
42889
42891
|
build: "npm run build:cli && npm run build:index",
|
|
42890
42892
|
start: "node dist/bin/cli.js",
|
|
42891
42893
|
"build:start": "npm run build && npm start",
|
|
@@ -42914,6 +42916,9 @@ var package_default = {
|
|
|
42914
42916
|
ora: "^8.2.0",
|
|
42915
42917
|
"ts-morph": "^26.0.0",
|
|
42916
42918
|
"ts-node": "^10.9.2"
|
|
42919
|
+
},
|
|
42920
|
+
peerDependencies: {
|
|
42921
|
+
playwright: "^1.40.0"
|
|
42917
42922
|
}
|
|
42918
42923
|
};
|
|
42919
42924
|
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
}
|
|
18
18
|
return to;
|
|
19
19
|
};
|
|
20
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
20
21
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
22
|
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
23
|
// file that has been converted to a CommonJS file using a Babel-
|
|
@@ -30,7 +31,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
31
|
// src/index.ts
|
|
31
32
|
var index_exports = {};
|
|
32
33
|
__export(index_exports, {
|
|
33
|
-
defineConfig: () => defineConfig
|
|
34
|
+
defineConfig: () => defineConfig,
|
|
35
|
+
test: () => test
|
|
34
36
|
});
|
|
35
37
|
module.exports = __toCommonJS(index_exports);
|
|
36
38
|
|
|
@@ -66,7 +68,81 @@ async function defineConfig(config) {
|
|
|
66
68
|
}
|
|
67
69
|
};
|
|
68
70
|
}
|
|
71
|
+
|
|
72
|
+
// ../../node_modules/@playwright/test/index.mjs
|
|
73
|
+
var test_exports = {};
|
|
74
|
+
__export(test_exports, {
|
|
75
|
+
default: () => import_test.default
|
|
76
|
+
});
|
|
77
|
+
__reExport(test_exports, require("playwright/test"));
|
|
78
|
+
var import_test = __toESM(require("playwright/test"), 1);
|
|
79
|
+
|
|
80
|
+
// src/test.ts
|
|
81
|
+
var import_node_https2 = __toESM(require("node:https"));
|
|
82
|
+
async function fetchEndpoint2() {
|
|
83
|
+
console.log("fetching endpoint");
|
|
84
|
+
return new Promise((resolve, reject) => {
|
|
85
|
+
import_node_https2.default.get(process.env.SERVER_URL || "https://localhost:3000", (res) => {
|
|
86
|
+
res.on("data", (chunk) => {
|
|
87
|
+
const parsedData = JSON.parse(chunk.toString());
|
|
88
|
+
if (parsedData.type === "tunnel-domain") {
|
|
89
|
+
console.log(`Tunnel domain found: ${parsedData.tunnelDomain}`);
|
|
90
|
+
resolve(`https://${parsedData.tunnelDomain}`);
|
|
91
|
+
res.destroy();
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}).on("error", (err) => {
|
|
95
|
+
console.log("err", err);
|
|
96
|
+
reject(err);
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
var test = test_exports.test.extend({
|
|
101
|
+
page: async ({ page }, use) => {
|
|
102
|
+
const endpointUrl = await fetchEndpoint2();
|
|
103
|
+
let isConnected = false;
|
|
104
|
+
while (!isConnected) {
|
|
105
|
+
try {
|
|
106
|
+
const response = await fetch(endpointUrl);
|
|
107
|
+
if (response.ok && response.status === 200) {
|
|
108
|
+
isConnected = true;
|
|
109
|
+
break;
|
|
110
|
+
}
|
|
111
|
+
console.log("Waiting for browser to be ready...");
|
|
112
|
+
await new Promise((resolve) => setTimeout(resolve, 1e3));
|
|
113
|
+
} catch (error) {
|
|
114
|
+
console.error("Error connecting to browser:", error);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
console.log("Connected to browser:", endpointUrl);
|
|
118
|
+
const browser = await test_exports.chromium.connectOverCDP(endpointUrl, {});
|
|
119
|
+
const context = await browser.newContext(test.info().project.use);
|
|
120
|
+
const newPage = await context.newPage();
|
|
121
|
+
await use(newPage);
|
|
122
|
+
await newPage.close();
|
|
123
|
+
await browser.close();
|
|
124
|
+
},
|
|
125
|
+
browser: async ({}, use) => {
|
|
126
|
+
const endpointUrl = await fetchEndpoint2();
|
|
127
|
+
let isConnected = false;
|
|
128
|
+
while (!isConnected) {
|
|
129
|
+
try {
|
|
130
|
+
const response = await fetch(endpointUrl);
|
|
131
|
+
if (response.ok && response.status === 200) {
|
|
132
|
+
isConnected = true;
|
|
133
|
+
}
|
|
134
|
+
await new Promise((resolve) => setTimeout(resolve, 1e3));
|
|
135
|
+
} catch (error) {
|
|
136
|
+
console.error("Error connecting to browser:", error);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
const browser = await test_exports.chromium.connectOverCDP(endpointUrl);
|
|
140
|
+
await use(browser);
|
|
141
|
+
await browser.close();
|
|
142
|
+
}
|
|
143
|
+
});
|
|
69
144
|
// Annotate the CommonJS export names for ESM import in node:
|
|
70
145
|
0 && (module.exports = {
|
|
71
|
-
defineConfig
|
|
146
|
+
defineConfig,
|
|
147
|
+
test
|
|
72
148
|
});
|
package/package.json
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@browsermation/test",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"description": "The testing platform for Playwright by Browsermation.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"exports": {
|
|
7
|
-
".": "./dist/index.js"
|
|
8
|
-
"./package.json": "./package.json"
|
|
7
|
+
".": "./dist/index.js"
|
|
9
8
|
},
|
|
10
9
|
"bin": {
|
|
11
10
|
"browsermation": "dist/bin/cli.js"
|
|
@@ -15,8 +14,8 @@
|
|
|
15
14
|
],
|
|
16
15
|
"publisher": "@browsermation",
|
|
17
16
|
"scripts": {
|
|
18
|
-
"build:cli": "esbuild src/bin/cli.ts --bundle --platform=node --target=node22 --outfile=dist/bin/cli.js ",
|
|
19
|
-
"build:index": "esbuild src/index.ts --bundle --platform=node --target=node22 --outfile=dist/index.js ",
|
|
17
|
+
"build:cli": "esbuild src/bin/cli.ts --bundle --platform=node --external:playwright --target=node22 --outfile=dist/bin/cli.js ",
|
|
18
|
+
"build:index": "esbuild src/index.ts --bundle --platform=node --external:playwright --target=node22 --outfile=dist/index.js ",
|
|
20
19
|
"build": "npm run build:cli && npm run build:index",
|
|
21
20
|
"start": "node dist/bin/cli.js",
|
|
22
21
|
"build:start": "npm run build && npm start",
|
|
@@ -45,5 +44,8 @@
|
|
|
45
44
|
"ora": "^8.2.0",
|
|
46
45
|
"ts-morph": "^26.0.0",
|
|
47
46
|
"ts-node": "^10.9.2"
|
|
47
|
+
},
|
|
48
|
+
"peerDependencies": {
|
|
49
|
+
"playwright": "^1.40.0"
|
|
48
50
|
}
|
|
49
51
|
}
|