@camunda/e2e-test-suite 0.0.690 → 0.0.691
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.
|
@@ -881,7 +881,50 @@ class ModelerCreatePage {
|
|
|
881
881
|
await this.intermediateBoundaryEvent.click({ timeout: 60000 });
|
|
882
882
|
}
|
|
883
883
|
async clickIntermediateWebhookConnectorOption() {
|
|
884
|
-
|
|
884
|
+
const maxRetries = 4;
|
|
885
|
+
for (let retries = 0; retries < maxRetries; retries++) {
|
|
886
|
+
try {
|
|
887
|
+
if (retries === 0) {
|
|
888
|
+
// If the change type panel is not showing the connector (e.g. after
|
|
889
|
+
// visiting the marketplace), reopen it before waiting for the option.
|
|
890
|
+
const isAlreadyVisible = await this.intermediateWebhookConnectorOption.isVisible();
|
|
891
|
+
if (!isAlreadyVisible) {
|
|
892
|
+
await this.changeTypeButton.click({ force: true, timeout: 30000 });
|
|
893
|
+
}
|
|
894
|
+
}
|
|
895
|
+
else {
|
|
896
|
+
// Reload to pick up newly-downloaded connector templates, then
|
|
897
|
+
// re-select the intermediate event element and open the type picker.
|
|
898
|
+
await this.page.reload();
|
|
899
|
+
await this.page.waitForLoadState('domcontentloaded');
|
|
900
|
+
await this.secondElement.waitFor({
|
|
901
|
+
state: 'visible',
|
|
902
|
+
timeout: 30000,
|
|
903
|
+
});
|
|
904
|
+
await this.secondElement.click({ timeout: 30000 });
|
|
905
|
+
await this.changeTypeButton.click({ force: true, timeout: 30000 });
|
|
906
|
+
}
|
|
907
|
+
// Use a longer timeout to allow the connector to finish registering
|
|
908
|
+
// after a marketplace download before giving up.
|
|
909
|
+
await (0, test_1.expect)(this.intermediateWebhookConnectorOption).toBeVisible({
|
|
910
|
+
timeout: 60000,
|
|
911
|
+
});
|
|
912
|
+
await this.intermediateWebhookConnectorOption.scrollIntoViewIfNeeded();
|
|
913
|
+
// force: true bypasses context-pad overlays that can intercept clicks
|
|
914
|
+
await this.intermediateWebhookConnectorOption.click({
|
|
915
|
+
timeout: 60000,
|
|
916
|
+
force: true,
|
|
917
|
+
});
|
|
918
|
+
return;
|
|
919
|
+
}
|
|
920
|
+
catch (error) {
|
|
921
|
+
console.error(`Attempt ${retries + 1} failed to click intermediate webhook connector option: ${error}`);
|
|
922
|
+
if (retries < maxRetries - 1) {
|
|
923
|
+
await new Promise((resolve) => setTimeout(resolve, 5000));
|
|
924
|
+
}
|
|
925
|
+
}
|
|
926
|
+
}
|
|
927
|
+
throw new Error(`Failed to click intermediate webhook connector option after ${maxRetries} attempts.`);
|
|
885
928
|
}
|
|
886
929
|
async clickCorrelationKeyProcessInput() {
|
|
887
930
|
await this.correlationKeyProcessInput.click({ timeout: 60000 });
|