testplane 8.37.1 → 8.37.2
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/package.json
CHANGED
|
@@ -39,6 +39,25 @@ const makeOpenAndWaitCommand = (config, session) => async function openAndWait(u
|
|
|
39
39
|
const isChrome = config.desiredCapabilities?.browserName === "chrome";
|
|
40
40
|
const isCDP = config.automationProtocol === "devtools";
|
|
41
41
|
waitNetworkIdle &&= isChrome || isCDP;
|
|
42
|
+
const originalPageLoadTimeout = config.pageLoadTimeout;
|
|
43
|
+
const shouldUpdateTimeout = timeout && timeout !== originalPageLoadTimeout;
|
|
44
|
+
const setPageLoadTimeout = async (value) => {
|
|
45
|
+
if (!value) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
try {
|
|
49
|
+
await session.setTimeout({ pageLoad: value });
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
/* */
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
const restorePageLoadTimeout = () => {
|
|
56
|
+
if (shouldUpdateTimeout && originalPageLoadTimeout) {
|
|
57
|
+
// No await because session might be stuck on url() command
|
|
58
|
+
setPageLoadTimeout(originalPageLoadTimeout).catch(() => { });
|
|
59
|
+
}
|
|
60
|
+
};
|
|
42
61
|
if (!uri || uri === emptyPageUrl) {
|
|
43
62
|
return new Promise(resolve => {
|
|
44
63
|
session.url(uri).then(() => resolve());
|
|
@@ -55,7 +74,21 @@ const makeOpenAndWaitCommand = (config, session) => async function openAndWait(u
|
|
|
55
74
|
let selectorsResolved = !selectors.length;
|
|
56
75
|
let predicateResolved = !predicate;
|
|
57
76
|
let networkResolved = !waitNetworkIdle;
|
|
58
|
-
|
|
77
|
+
if (shouldUpdateTimeout) {
|
|
78
|
+
await setPageLoadTimeout(timeout);
|
|
79
|
+
}
|
|
80
|
+
// Create hard timeout promise to guarantee timeout is respected
|
|
81
|
+
// This is needed because WebDriver pageLoad timeout only affects the browser's
|
|
82
|
+
// page load event, not the HTTP connection/response time
|
|
83
|
+
let hardTimeoutId;
|
|
84
|
+
const hardTimeoutPromise = timeout
|
|
85
|
+
? new Promise((_, reject) => {
|
|
86
|
+
hardTimeoutId = setTimeout(() => {
|
|
87
|
+
reject(new Error(`openAndWait timed out after ${timeout}ms`));
|
|
88
|
+
}, timeout);
|
|
89
|
+
})
|
|
90
|
+
: null;
|
|
91
|
+
const loadPromise = new Promise((resolve, reject) => {
|
|
59
92
|
const handleError = (err) => {
|
|
60
93
|
reject(new Error(`url: ${err.message}`));
|
|
61
94
|
};
|
|
@@ -65,7 +98,7 @@ const makeOpenAndWaitCommand = (config, session) => async function openAndWait(u
|
|
|
65
98
|
}
|
|
66
99
|
};
|
|
67
100
|
const goToPage = async () => {
|
|
68
|
-
await session.url(uri);
|
|
101
|
+
await session.url(uri, { timeout });
|
|
69
102
|
};
|
|
70
103
|
pageLoader.on("pageLoadError", handleError);
|
|
71
104
|
pageLoader.on("selectorsError", handleError);
|
|
@@ -92,7 +125,19 @@ const makeOpenAndWaitCommand = (config, session) => async function openAndWait(u
|
|
|
92
125
|
checkLoaded();
|
|
93
126
|
});
|
|
94
127
|
pageLoader.load(goToPage).then(checkLoaded);
|
|
95
|
-
})
|
|
128
|
+
});
|
|
129
|
+
const racePromises = [loadPromise];
|
|
130
|
+
if (hardTimeoutPromise) {
|
|
131
|
+
racePromises.push(hardTimeoutPromise);
|
|
132
|
+
}
|
|
133
|
+
return Promise.race(racePromises).finally(() => {
|
|
134
|
+
if (hardTimeoutId) {
|
|
135
|
+
clearTimeout(hardTimeoutId);
|
|
136
|
+
}
|
|
137
|
+
// No await, because session might be stuck on url() command
|
|
138
|
+
pageLoader.unsubscribe();
|
|
139
|
+
restorePageLoadTimeout();
|
|
140
|
+
});
|
|
96
141
|
};
|
|
97
142
|
exports.default = (browser) => {
|
|
98
143
|
const { publicAPI: session, config } = browser;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openAndWait.js","sourceRoot":"","sources":["../../../../src/browser/commands/openAndWait.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAuB;AAgBvB,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC,MAAM,EAAE,GAAgD;IACpD,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC;IACxD,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC;IAChE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxG,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;CAChF,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,MAAqB,EAAE,OAA4B,EAAE,EAAE,CACnF,KAAK,UAAU,WAAW,CAEtB,GAAW,EACX,EACI,QAAQ,GAAG,EAAE,EACb,SAAS,EACT,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,eAAe,EACzD,sBAAsB,GAAG,MAAM,CAAC,eAAe,EAAE,sBAAsB,EACvE,kBAAkB,GAAG,MAAM,CAAC,eAAe,EAAE,kBAAkB,EAC/D,gBAAgB,GAAG,uBAAuB,EAC1C,2BAA2B,GAAG,MAAM,CAAC,eAAe,EAAE,2BAA2B,EACjF,OAAO,GAAG,MAAM,CAAC,eAAe,EAAE,OAAO,IAAI,MAAM,EAAE,eAAe,IAAI,CAAC,MAC/D,EAAE;IAEhB,MAAM,UAAU,GAAG,MAAM,kDAAO,yBAAyB,IAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,MAAM,CAAC,mBAAmB,EAAE,WAAW,KAAK,QAAQ,CAAC;IACtE,MAAM,KAAK,GAAG,MAAM,CAAC,kBAAkB,KAAK,UAAU,CAAC;IAEvD,eAAe,KAAK,QAAQ,IAAI,KAAK,CAAC;IAEtC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;QAC/B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YACzB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACP,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEvE,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE;QACvC,SAAS;QACT,SAAS;QACT,OAAO;QACP,eAAe;QACf,sBAAsB;KACzB,CAAC,CAAC;IAEH,IAAI,iBAAiB,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC;IAC1C,IAAI,iBAAiB,GAAG,CAAC,SAAS,CAAC;IACnC,IAAI,eAAe,GAAG,CAAC,eAAe,CAAC;IAEvC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"openAndWait.js","sourceRoot":"","sources":["../../../../src/browser/commands/openAndWait.ts"],"names":[],"mappings":"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"}
|