@camunda/e2e-test-suite 0.0.404 → 0.0.406
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/pages/SM-8.10/ConnectorMarketplacePage.d.ts +2 -0
- package/dist/pages/SM-8.10/ConnectorMarketplacePage.js +21 -0
- package/dist/pages/SM-8.10/UtilitiesPage.js +1 -1
- package/dist/tests/8.10/test-setup.spec.js +3 -0
- package/dist/tests/8.7/test-setup.spec.js +3 -0
- package/dist/tests/8.8/test-setup.spec.js +3 -0
- package/dist/tests/8.9/test-setup.spec.js +3 -0
- package/dist/tests/SM-8.10/connectors-user-flows.spec.js +2 -2
- package/package.json +1 -1
|
@@ -5,12 +5,14 @@ declare class ConnectorMarketplacePage {
|
|
|
5
5
|
readonly downloadToProjectButton: Locator;
|
|
6
6
|
readonly replaceResourceButton: Locator;
|
|
7
7
|
readonly cancelButton: Locator;
|
|
8
|
+
readonly marketplaceErrorMessage: Locator;
|
|
8
9
|
constructor(page: Page);
|
|
9
10
|
clickSearchForConnectorTextbox(): Promise<void>;
|
|
10
11
|
fillSearchForConnectorTextbox(connectorName: string): Promise<void>;
|
|
11
12
|
clickDownloadToProjectButton(): Promise<void>;
|
|
12
13
|
clickCancelButton(): Promise<void>;
|
|
13
14
|
clickReplaceResourceButton(): Promise<void>;
|
|
15
|
+
waitForConnectorSearchResults(): Promise<void>;
|
|
14
16
|
downloadConnectorToProject(): Promise<void>;
|
|
15
17
|
}
|
|
16
18
|
export { ConnectorMarketplacePage };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConnectorMarketplacePage = void 0;
|
|
4
|
+
const test_1 = require("@playwright/test");
|
|
4
5
|
const sleep_1 = require("../../utils/sleep");
|
|
5
6
|
class ConnectorMarketplacePage {
|
|
6
7
|
page;
|
|
@@ -8,6 +9,7 @@ class ConnectorMarketplacePage {
|
|
|
8
9
|
downloadToProjectButton;
|
|
9
10
|
replaceResourceButton;
|
|
10
11
|
cancelButton;
|
|
12
|
+
marketplaceErrorMessage;
|
|
11
13
|
constructor(page) {
|
|
12
14
|
this.page = page;
|
|
13
15
|
this.searchForConnectorTextbox = page.getByPlaceholder('Search for a connector');
|
|
@@ -18,6 +20,7 @@ class ConnectorMarketplacePage {
|
|
|
18
20
|
this.replaceResourceButton = page.getByRole('button', {
|
|
19
21
|
name: 'Replace resource',
|
|
20
22
|
});
|
|
23
|
+
this.marketplaceErrorMessage = page.getByText('an error occurred, please try again later');
|
|
21
24
|
}
|
|
22
25
|
async clickSearchForConnectorTextbox() {
|
|
23
26
|
await this.searchForConnectorTextbox.click({ timeout: 60000 });
|
|
@@ -36,6 +39,24 @@ class ConnectorMarketplacePage {
|
|
|
36
39
|
async clickReplaceResourceButton() {
|
|
37
40
|
await this.replaceResourceButton.click({ timeout: 30000 });
|
|
38
41
|
}
|
|
42
|
+
async waitForConnectorSearchResults() {
|
|
43
|
+
const MAX_RETRIES = 3;
|
|
44
|
+
for (let attempt = 1; attempt <= MAX_RETRIES; attempt++) {
|
|
45
|
+
await (0, test_1.expect)(this.downloadToProjectButton.or(this.marketplaceErrorMessage)).toBeVisible({ timeout: 60000 });
|
|
46
|
+
if (await this.downloadToProjectButton.isVisible()) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
console.log(`Marketplace search attempt ${attempt} of ${MAX_RETRIES} returned an error. Retrying search...`);
|
|
50
|
+
if (attempt < MAX_RETRIES) {
|
|
51
|
+
const searchText = await this.searchForConnectorTextbox.inputValue();
|
|
52
|
+
await this.searchForConnectorTextbox.clear();
|
|
53
|
+
await (0, sleep_1.sleep)(2000);
|
|
54
|
+
await this.searchForConnectorTextbox.fill(searchText);
|
|
55
|
+
await (0, sleep_1.sleep)(2000);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
throw new Error('Marketplace connector search failed after retries due to persistent error');
|
|
59
|
+
}
|
|
39
60
|
async downloadConnectorToProject() {
|
|
40
61
|
await this.clickDownloadToProjectButton();
|
|
41
62
|
try {
|
|
@@ -173,7 +173,7 @@ async function modelRestConnector(modelerCreatePage, connectorSettingsPage, conn
|
|
|
173
173
|
await modelerCreatePage.clickMarketPlaceButton();
|
|
174
174
|
await connectorMarketplacePage.clickSearchForConnectorTextbox();
|
|
175
175
|
await connectorMarketplacePage.fillSearchForConnectorTextbox('REST Connector');
|
|
176
|
-
await
|
|
176
|
+
await connectorMarketplacePage.waitForConnectorSearchResults();
|
|
177
177
|
await connectorMarketplacePage.downloadConnectorToProject();
|
|
178
178
|
}
|
|
179
179
|
await modelerCreatePage.clickRestConnectorOption();
|
|
@@ -16,6 +16,9 @@ _8_10_1.test.describe('Cluster Setup Tests', () => {
|
|
|
16
16
|
if (process.env.IS_PROD === 'true') {
|
|
17
17
|
_8_10_1.test.skip(true, 'Skipping test because not required on PROD test org');
|
|
18
18
|
}
|
|
19
|
+
if (process.env.IS_AG === 'true') {
|
|
20
|
+
_8_10_1.test.skip(true, 'Skipping test because not required when IS_AG is true');
|
|
21
|
+
}
|
|
19
22
|
await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, users_1.testUsers.mainUser, (testInfo.workerIndex + 1) * 1000);
|
|
20
23
|
await homePage.clickOrganization();
|
|
21
24
|
await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(page, consoleOrganizationsPage.settingsTab, 'settings tab', 60000, false, 2);
|
|
@@ -16,6 +16,9 @@ _8_7_1.test.describe('Cluster Setup Tests', () => {
|
|
|
16
16
|
if (process.env.IS_PROD === 'true') {
|
|
17
17
|
_8_7_1.test.skip(true, 'Skipping test because not required on PROD test org');
|
|
18
18
|
}
|
|
19
|
+
if (process.env.IS_AG === 'true') {
|
|
20
|
+
_8_7_1.test.skip(true, 'Skipping test because not required when IS_AG is true');
|
|
21
|
+
}
|
|
19
22
|
await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, users_1.testUsers.mainUser, (testInfo.workerIndex + 1) * 1000);
|
|
20
23
|
await homePage.clickOrganization();
|
|
21
24
|
await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(page, consoleOrganizationsPage.settingsTab, 'settings tab', 60000, 2);
|
|
@@ -17,6 +17,9 @@ _8_8_1.test.describe('Cluster Setup Tests', () => {
|
|
|
17
17
|
if (process.env.IS_PROD === 'true') {
|
|
18
18
|
_8_8_1.test.skip(true, 'Skipping test because not required on PROD test org');
|
|
19
19
|
}
|
|
20
|
+
if (process.env.IS_AG === 'true') {
|
|
21
|
+
_8_8_1.test.skip(true, 'Skipping test because not required when IS_AG is true');
|
|
22
|
+
}
|
|
20
23
|
await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, users_1.testUsers.mainUser, (testInfo.workerIndex + 1) * 1000);
|
|
21
24
|
await homePage.clickOrganization();
|
|
22
25
|
await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(page, consoleOrganizationsPage.settingsTab, 'settings tab', 60000, false, 2);
|
|
@@ -17,6 +17,9 @@ _8_9_1.test.describe('Cluster Setup Tests', () => {
|
|
|
17
17
|
if (process.env.IS_PROD === 'true') {
|
|
18
18
|
_8_9_1.test.skip(true, 'Skipping test because not required on PROD test org');
|
|
19
19
|
}
|
|
20
|
+
if (process.env.IS_AG === 'true') {
|
|
21
|
+
_8_9_1.test.skip(true, 'Skipping test because not required when IS_AG is true');
|
|
22
|
+
}
|
|
20
23
|
await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, users_1.testUsers.mainUser, (testInfo.workerIndex + 1) * 1000);
|
|
21
24
|
await homePage.clickOrganization();
|
|
22
25
|
await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(page, consoleOrganizationsPage.settingsTab, 'settings tab', 60000, false, 2);
|
|
@@ -105,7 +105,7 @@ SM_8_10_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
105
105
|
await modelerCreatePage.clickMarketPlaceButton();
|
|
106
106
|
await connectorMarketplacePage.clickSearchForConnectorTextbox();
|
|
107
107
|
await connectorMarketplacePage.fillSearchForConnectorTextbox('Webhook Connector');
|
|
108
|
-
await
|
|
108
|
+
await connectorMarketplacePage.waitForConnectorSearchResults();
|
|
109
109
|
await connectorMarketplacePage.downloadConnectorToProject();
|
|
110
110
|
}
|
|
111
111
|
await modelerCreatePage.clickWebhookMessageStartEventConnectorOption();
|
|
@@ -193,7 +193,7 @@ SM_8_10_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
|
|
|
193
193
|
await modelerCreatePage.clickMarketPlaceButton();
|
|
194
194
|
await connectorMarketplacePage.clickSearchForConnectorTextbox();
|
|
195
195
|
await connectorMarketplacePage.fillSearchForConnectorTextbox('Webhook Connector');
|
|
196
|
-
await
|
|
196
|
+
await connectorMarketplacePage.waitForConnectorSearchResults();
|
|
197
197
|
await connectorMarketplacePage.downloadConnectorToProject();
|
|
198
198
|
}
|
|
199
199
|
await modelerCreatePage.clickIntermediateWebhookConnectorOption();
|