@camunda/e2e-test-suite 0.0.797 → 0.0.798
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.
|
@@ -314,15 +314,22 @@ class ClusterPage {
|
|
|
314
314
|
// bounded budget (maxCycles * tabs * perTabTimeout) rather than a single
|
|
315
315
|
// pass, giving a late-propagating generation multiple chances on any channel.
|
|
316
316
|
const maxCycles = 6;
|
|
317
|
-
|
|
317
|
+
// Increased from 12 s: search results can take longer to render, especially
|
|
318
|
+
// on first load or when the backend is slow.
|
|
319
|
+
const perTabTimeout = 30000;
|
|
318
320
|
for (let cycle = 0; cycle < maxCycles; cycle++) {
|
|
319
321
|
for (const clickTab of tabs) {
|
|
320
322
|
try {
|
|
321
323
|
await clickTab.call(this);
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
await this.generationSearchInput
|
|
324
|
+
// Some tabs (e.g. Stable, Alpha) show a flat list with no search box.
|
|
325
|
+
// Use a short isVisible() probe instead of a hard toBeVisible() assert
|
|
326
|
+
// so we still try clicking the option on those tabs.
|
|
327
|
+
const searchInputVisible = await this.generationSearchInput
|
|
328
|
+
.isVisible({ timeout: 3000 })
|
|
329
|
+
.catch(() => false);
|
|
330
|
+
if (searchInputVisible) {
|
|
331
|
+
await this.generationSearchInput.fill(`${process.env.CLUSTER_VERSION}`);
|
|
332
|
+
}
|
|
326
333
|
await this.clusterVersionOption.click({ timeout: perTabTimeout });
|
|
327
334
|
return;
|
|
328
335
|
}
|
|
@@ -326,12 +326,17 @@ class ClusterPage {
|
|
|
326
326
|
for (const clickTab of tabs) {
|
|
327
327
|
try {
|
|
328
328
|
await clickTab.call(this);
|
|
329
|
-
// Switching channels clears the search box
|
|
330
|
-
// generation name each time to filter it into the
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
await this.generationSearchInput
|
|
329
|
+
// Switching channels clears the search box so re-type the
|
|
330
|
+
// generation name each time to filter it into the list.
|
|
331
|
+
// Some tabs (e.g. Stable, Alpha) show a flat list with no search
|
|
332
|
+
// input — probe with isVisible() so we still try clicking the
|
|
333
|
+
// option on those tabs instead of catching and moving on.
|
|
334
|
+
const searchInputVisible87 = await this.generationSearchInput
|
|
335
|
+
.isVisible({ timeout: 3000 })
|
|
336
|
+
.catch(() => false);
|
|
337
|
+
if (searchInputVisible87) {
|
|
338
|
+
await this.generationSearchInput.fill(version);
|
|
339
|
+
}
|
|
335
340
|
await this.clusterVersionOption.click({ timeout: 30000 });
|
|
336
341
|
return;
|
|
337
342
|
}
|
|
@@ -345,12 +345,17 @@ class ClusterPage {
|
|
|
345
345
|
for (const clickTab of tabs) {
|
|
346
346
|
try {
|
|
347
347
|
await clickTab.call(this);
|
|
348
|
-
// Switching channels clears the search box
|
|
349
|
-
// generation name each time to filter it into the
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
await this.generationSearchInput
|
|
348
|
+
// Switching channels clears the search box so re-type the
|
|
349
|
+
// generation name each time to filter it into the list.
|
|
350
|
+
// Some tabs (e.g. Stable, Alpha) show a flat list with no search
|
|
351
|
+
// input — probe with isVisible() so we still try clicking the
|
|
352
|
+
// option on those tabs instead of catching and moving on.
|
|
353
|
+
const searchInputVisible88 = await this.generationSearchInput
|
|
354
|
+
.isVisible({ timeout: 3000 })
|
|
355
|
+
.catch(() => false);
|
|
356
|
+
if (searchInputVisible88) {
|
|
357
|
+
await this.generationSearchInput.fill(version);
|
|
358
|
+
}
|
|
354
359
|
await this.clusterVersionOption.click({ timeout: 30000 });
|
|
355
360
|
return;
|
|
356
361
|
}
|
|
@@ -315,15 +315,21 @@ class ClusterPage {
|
|
|
315
315
|
// bounded budget (maxCycles * tabs * perTabTimeout) rather than a single
|
|
316
316
|
// pass, giving a late-propagating generation multiple chances on any channel.
|
|
317
317
|
const maxCycles = 6;
|
|
318
|
-
|
|
318
|
+
// Increased from 12 s: search results can take longer to render.
|
|
319
|
+
const perTabTimeout = 30000;
|
|
319
320
|
for (let cycle = 0; cycle < maxCycles; cycle++) {
|
|
320
321
|
for (const clickTab of tabs) {
|
|
321
322
|
try {
|
|
322
323
|
await clickTab.call(this);
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
await this.generationSearchInput
|
|
324
|
+
// Some tabs (e.g. Stable, Alpha) show a flat list with no search box.
|
|
325
|
+
// Use a short isVisible() probe instead of a hard toBeVisible() assert
|
|
326
|
+
// so we still try clicking the option on those tabs.
|
|
327
|
+
const searchInputVisible = await this.generationSearchInput
|
|
328
|
+
.isVisible({ timeout: 3000 })
|
|
329
|
+
.catch(() => false);
|
|
330
|
+
if (searchInputVisible) {
|
|
331
|
+
await this.generationSearchInput.fill(`${process.env.CLUSTER_VERSION}`);
|
|
332
|
+
}
|
|
327
333
|
await this.clusterVersionOption.click({ timeout: perTabTimeout });
|
|
328
334
|
return;
|
|
329
335
|
}
|