sefiutils 1.0.56 → 1.0.58
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/lib/globalSetup.d.ts.map +1 -1
- package/lib/globalSetup.js +9 -3
- package/lib/globalSetup.js.map +1 -1
- package/package.json +2 -2
- package/src/globalSetup.ts +9 -3
package/lib/globalSetup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"globalSetup.d.ts","sourceRoot":"","sources":["../src/globalSetup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"globalSetup.d.ts","sourceRoot":"","sources":["../src/globalSetup.ts"],"names":[],"mappings":"AAWA,OAAO,CAAC,MAAM,CAAC;IACX,IAAI,MAAM,EAAE,GAAG,CAAC;CAEnB;AACD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAA8B,gBAAgB,kBAY7C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,oBAAoB,oBA4BzC"}
|
package/lib/globalSetup.js
CHANGED
|
@@ -45,6 +45,7 @@ const os_1 = require("os");
|
|
|
45
45
|
const path_1 = __importDefault(require("path"));
|
|
46
46
|
const log_1 = require("./log");
|
|
47
47
|
const seUtils_1 = require("./seUtils");
|
|
48
|
+
const geckodriver_1 = require("geckodriver");
|
|
48
49
|
/**
|
|
49
50
|
* This function is called by Jest once before all tests are executed.
|
|
50
51
|
* In order to get called, it must be referenced in the jest configuration file:
|
|
@@ -130,8 +131,9 @@ function setUpSeleniumServer() {
|
|
|
130
131
|
(0, log_1.verbose)("`Server killed before starting again");
|
|
131
132
|
}
|
|
132
133
|
const { port } = (0, seUtils_1.getRemoteAddressAndPort)();
|
|
133
|
-
(0, log_1.debug)(() => `Start selenium server at
|
|
134
|
+
(0, log_1.debug)(() => `Start selenium server at 127.0.0.1:${port} with SE_NODE_MAX_SESSIONS=4, SE_NODE_OVERRIDE_MAX_SESSIONS=true`);
|
|
134
135
|
const s = new remote.SeleniumServer(jarPath, {
|
|
136
|
+
loopback: true,
|
|
135
137
|
port: port,
|
|
136
138
|
env: Object.assign(Object.assign({}, process.env), { "SE_NODE_MAX_SESSIONS": "4", "SE_NODE_OVERRIDE_MAX_SESSIONS": "true" })
|
|
137
139
|
});
|
|
@@ -144,15 +146,19 @@ function setUpSeleniumServer() {
|
|
|
144
146
|
(0, log_1.debug)(() => `Selenium server started at: ${actualAddress}`);
|
|
145
147
|
}
|
|
146
148
|
catch (err) {
|
|
149
|
+
console.error(`Error starting selenium server: ${err}`);
|
|
147
150
|
try {
|
|
148
151
|
const geckoPath = require.resolve("geckodriver");
|
|
152
|
+
console.error(`Hint: geckodriver found at ${geckoPath}`);
|
|
153
|
+
const pathToBinary = yield (0, geckodriver_1.download)();
|
|
154
|
+
console.error(`Hint: geckodriver binary found at ${pathToBinary}`);
|
|
149
155
|
yield (0, promises_1.stat)(geckoPath);
|
|
150
156
|
if (!geckoPath.startsWith(process.cwd())) {
|
|
151
|
-
console.error(`geckodriver
|
|
157
|
+
console.error(`Hint: geckodriver not in project directory`); // , check your firewall rules`);
|
|
152
158
|
}
|
|
153
159
|
}
|
|
154
160
|
catch (err) {
|
|
155
|
-
console.error("geckodriver not found, please install it with 'npm i -D geckodriver'");
|
|
161
|
+
console.error("Hint: geckodriver not found, please install it with 'npm i -D geckodriver'");
|
|
156
162
|
}
|
|
157
163
|
throw err;
|
|
158
164
|
}
|
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/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sefiutils",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "Utilities (and Jest tests) for Selenium Webdriver Tests and some React tools as well",
|
|
3
|
+
"version": "1.0.58",
|
|
4
|
+
"description": "Utilities (and Jest/Vitest tests) for Selenium Webdriver Tests and some React tools as well",
|
|
5
5
|
"author": "Jens von Pilgrim <jens.vonpilgrim@bht-berlin.de>",
|
|
6
6
|
"license": "EPL-2.0",
|
|
7
7
|
"homepage": "https://gitlab.bht-berlin.de/nodepackages/sefiutils",
|
package/src/globalSetup.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { homedir } from "os";
|
|
|
7
7
|
import path from "path";
|
|
8
8
|
import { debug, verbose } from "./log";
|
|
9
9
|
import { getRemoteAddressAndPort } from "./seUtils";
|
|
10
|
+
import { download } from "geckodriver";
|
|
10
11
|
|
|
11
12
|
declare global {
|
|
12
13
|
var server: any; // only loaded in remote case; this global variable is only visible in globalTeardown.ts
|
|
@@ -98,8 +99,9 @@ async function setUpSeleniumServer() {
|
|
|
98
99
|
|
|
99
100
|
const { port } = getRemoteAddressAndPort();
|
|
100
101
|
|
|
101
|
-
debug(() => `Start selenium server at
|
|
102
|
+
debug(() => `Start selenium server at 127.0.0.1:${port} with SE_NODE_MAX_SESSIONS=4, SE_NODE_OVERRIDE_MAX_SESSIONS=true`);
|
|
102
103
|
const s = new remote.SeleniumServer(jarPath, {
|
|
104
|
+
loopback: true,
|
|
103
105
|
port: port,
|
|
104
106
|
env: {
|
|
105
107
|
...process.env,
|
|
@@ -117,14 +119,18 @@ async function setUpSeleniumServer() {
|
|
|
117
119
|
// const address = await globalThis.server.address()
|
|
118
120
|
debug(() => `Selenium server started at: ${actualAddress}`);
|
|
119
121
|
} catch (err) {
|
|
122
|
+
console.error(`Error starting selenium server: ${err}`);
|
|
120
123
|
try {
|
|
121
124
|
const geckoPath = require.resolve("geckodriver");
|
|
125
|
+
console.error(`Hint: geckodriver found at ${geckoPath}`);
|
|
126
|
+
const pathToBinary = await download();
|
|
127
|
+
console.error(`Hint: geckodriver binary found at ${pathToBinary}`);
|
|
122
128
|
await stat(geckoPath);
|
|
123
129
|
if (! geckoPath.startsWith(process.cwd())) {
|
|
124
|
-
console.error(`geckodriver
|
|
130
|
+
console.error(`Hint: geckodriver not in project directory`); // , check your firewall rules`);
|
|
125
131
|
}
|
|
126
132
|
} catch (err) {
|
|
127
|
-
console.error("geckodriver not found, please install it with 'npm i -D geckodriver'");
|
|
133
|
+
console.error("Hint: geckodriver not found, please install it with 'npm i -D geckodriver'");
|
|
128
134
|
}
|
|
129
135
|
|
|
130
136
|
throw err;
|