@camunda/e2e-test-suite 0.0.402 → 0.0.403
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.7/ConnectorMarketplacePage.d.ts +6 -5
- package/dist/pages/SM-8.7/ConnectorMarketplacePage.js +24 -23
- package/dist/pages/SM-8.7/ModelerCreatePage.js +0 -1
- package/dist/pages/SM-8.7/UtlitiesPage.js +8 -13
- package/dist/tests/SM-8.7/connectors-user-flows.spec.js +6 -3
- package/dist/tests/SM-8.7/smoke-tests.spec.js +2 -1
- package/package.json +1 -1
|
@@ -2,14 +2,15 @@ import { Page, Locator } from '@playwright/test';
|
|
|
2
2
|
declare class ConnectorMarketplacePage {
|
|
3
3
|
private page;
|
|
4
4
|
readonly searchForConnectorTextbox: Locator;
|
|
5
|
-
readonly
|
|
6
|
-
readonly
|
|
5
|
+
readonly downloadToProjectButton: Locator;
|
|
6
|
+
readonly replaceResourceButton: Locator;
|
|
7
|
+
readonly cancelButton: Locator;
|
|
7
8
|
constructor(page: Page);
|
|
8
9
|
clickSearchForConnectorTextbox(): Promise<void>;
|
|
9
10
|
fillSearchForConnectorTextbox(connectorName: string): Promise<void>;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
clickDownloadToProjectButton(): Promise<void>;
|
|
12
|
+
clickCancelButton(): Promise<void>;
|
|
13
|
+
clickReplaceResourceButton(): Promise<void>;
|
|
13
14
|
downloadConnectorToProject(): Promise<void>;
|
|
14
15
|
}
|
|
15
16
|
export { ConnectorMarketplacePage };
|
|
@@ -1,50 +1,51 @@
|
|
|
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");
|
|
5
|
-
const loggingUtils_1 = require("../../utils/loggingUtils");
|
|
6
4
|
const sleep_1 = require("../../utils/sleep");
|
|
7
5
|
class ConnectorMarketplacePage {
|
|
8
6
|
page;
|
|
9
7
|
searchForConnectorTextbox;
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
downloadToProjectButton;
|
|
9
|
+
replaceResourceButton;
|
|
10
|
+
cancelButton;
|
|
12
11
|
constructor(page) {
|
|
13
12
|
this.page = page;
|
|
14
13
|
this.searchForConnectorTextbox = page.getByPlaceholder('Search for a connector');
|
|
15
|
-
this.
|
|
16
|
-
|
|
14
|
+
this.downloadToProjectButton = page
|
|
15
|
+
.getByRole('button', { name: 'Download to project' })
|
|
16
|
+
.first();
|
|
17
|
+
this.cancelButton = page.getByRole('button', { name: 'Cancel' });
|
|
18
|
+
this.replaceResourceButton = page.getByRole('button', {
|
|
19
|
+
name: 'Replace resource',
|
|
20
|
+
});
|
|
17
21
|
}
|
|
18
22
|
async clickSearchForConnectorTextbox() {
|
|
19
23
|
await this.searchForConnectorTextbox.click({ timeout: 60000 });
|
|
24
|
+
await (0, sleep_1.sleep)(2000);
|
|
20
25
|
}
|
|
21
26
|
async fillSearchForConnectorTextbox(connectorName) {
|
|
22
27
|
await this.searchForConnectorTextbox.fill(connectorName, { timeout: 60000 });
|
|
28
|
+
await (0, sleep_1.sleep)(2000);
|
|
23
29
|
}
|
|
24
30
|
async clickDownloadToProjectButton() {
|
|
25
|
-
await
|
|
26
|
-
const downloadButton = this.page
|
|
27
|
-
.getByRole('button', { name: 'Download to project' })
|
|
28
|
-
.first();
|
|
29
|
-
await downloadButton.click({ timeout: 60000 });
|
|
30
|
-
(0, loggingUtils_1.logWithElapsed)('downloadButton clicked');
|
|
31
|
+
await this.downloadToProjectButton.click({ timeout: 60000 });
|
|
31
32
|
}
|
|
32
|
-
async
|
|
33
|
-
await this.
|
|
33
|
+
async clickCancelButton() {
|
|
34
|
+
await this.cancelButton.click({ timeout: 30000 });
|
|
34
35
|
}
|
|
35
|
-
async
|
|
36
|
-
await this.
|
|
36
|
+
async clickReplaceResourceButton() {
|
|
37
|
+
await this.replaceResourceButton.click({ timeout: 30000 });
|
|
37
38
|
}
|
|
38
39
|
async downloadConnectorToProject() {
|
|
40
|
+
await this.clickDownloadToProjectButton();
|
|
39
41
|
try {
|
|
40
|
-
await
|
|
41
|
-
|
|
42
|
-
timeout:
|
|
43
|
-
|
|
44
|
-
await this.clickSnackbar();
|
|
42
|
+
await Promise.race([
|
|
43
|
+
this.replaceResourceButton.click({ timeout: 20000 }),
|
|
44
|
+
this.cancelButton.click({ timeout: 20000 }),
|
|
45
|
+
]);
|
|
45
46
|
}
|
|
46
|
-
catch {
|
|
47
|
-
|
|
47
|
+
catch (e) {
|
|
48
|
+
return;
|
|
48
49
|
}
|
|
49
50
|
}
|
|
50
51
|
}
|
|
@@ -579,7 +579,6 @@ class ModelerCreatePage {
|
|
|
579
579
|
await (0, sleep_1.sleep)(5000);
|
|
580
580
|
await connectorMarketplacePage.fillSearchForConnectorTextbox('REST Connector');
|
|
581
581
|
await connectorMarketplacePage.downloadConnectorToProject();
|
|
582
|
-
await this.clickChangeTypeButton();
|
|
583
582
|
await this.restConnectorOption.click({ timeout: 120000 });
|
|
584
583
|
}
|
|
585
584
|
return;
|
|
@@ -74,24 +74,17 @@ async function modelRestConnector(modelerCreatePage, connectorSettingsPage, conn
|
|
|
74
74
|
await modelerCreatePage.clickAppendElementButton();
|
|
75
75
|
await modelerCreatePage.clickAppendTaskButton();
|
|
76
76
|
await modelerCreatePage.clickChangeTypeButton();
|
|
77
|
-
|
|
78
|
-
modelerCreatePage.restConnectorOption
|
|
79
|
-
.waitFor({
|
|
80
|
-
timeout: 15000,
|
|
81
|
-
})
|
|
82
|
-
.then(() => 'restConnectorOption'),
|
|
83
|
-
modelerCreatePage.marketPlaceButton
|
|
84
|
-
.waitFor({
|
|
77
|
+
try {
|
|
78
|
+
await (0, test_1.expect)(modelerCreatePage.restConnectorOption).toBeVisible({
|
|
85
79
|
timeout: 15000,
|
|
86
|
-
})
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if (result == 'marketPlaceButton') {
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
90
83
|
await modelerCreatePage.clickMarketPlaceButton();
|
|
91
84
|
await connectorMarketplacePage.clickSearchForConnectorTextbox();
|
|
92
85
|
await connectorMarketplacePage.fillSearchForConnectorTextbox('REST Connector');
|
|
86
|
+
await (0, sleep_1.sleep)(10000);
|
|
93
87
|
await connectorMarketplacePage.downloadConnectorToProject();
|
|
94
|
-
await modelerCreatePage.clickChangeTypeButton();
|
|
95
88
|
}
|
|
96
89
|
await modelerCreatePage.clickRestConnectorOption();
|
|
97
90
|
if (auth == 'bearer') {
|
|
@@ -167,6 +160,7 @@ async function modelIntermediateWebhookConnector(modelerCreatePage, connectorMar
|
|
|
167
160
|
await modelerCreatePage.clickMarketPlaceButton();
|
|
168
161
|
await connectorMarketplacePage.clickSearchForConnectorTextbox();
|
|
169
162
|
await connectorMarketplacePage.fillSearchForConnectorTextbox('Webhook Connector');
|
|
163
|
+
await (0, sleep_1.sleep)(10000);
|
|
170
164
|
await connectorMarketplacePage.downloadConnectorToProject();
|
|
171
165
|
await modelerCreatePage.clickChangeTypeButton();
|
|
172
166
|
}
|
|
@@ -212,6 +206,7 @@ async function modelWebhookConnector(modelerCreatePage, connectorMarketplacePage
|
|
|
212
206
|
await modelerCreatePage.clickMarketPlaceButton();
|
|
213
207
|
await connectorMarketplacePage.clickSearchForConnectorTextbox();
|
|
214
208
|
await connectorMarketplacePage.fillSearchForConnectorTextbox('Webhook Connector');
|
|
209
|
+
await (0, sleep_1.sleep)(10000);
|
|
215
210
|
await connectorMarketplacePage.downloadConnectorToProject();
|
|
216
211
|
await modelerCreatePage.clickChangeTypeButton();
|
|
217
212
|
}
|
|
@@ -17,7 +17,8 @@ SM_8_7_1.test.describe.parallel('Connectors User Flow Tests', () => {
|
|
|
17
17
|
await (0, _setup_1.captureScreenshot)(page, testInfo);
|
|
18
18
|
await (0, _setup_1.captureFailureVideo)(page, testInfo);
|
|
19
19
|
});
|
|
20
|
-
|
|
20
|
+
// Skipped due to 320: https://github.com/camunda/marketplace-api/issues/320
|
|
21
|
+
SM_8_7_1.test.skip('REST Connector No Auth User Flow', async ({ page, operateHomePage, modelerHomePage, operateProcessInstancePage, modelerCreatePage, connectorSettingsPage, operateProcessesPage, connectorMarketplacePage, navigationPage, context, }) => {
|
|
21
22
|
SM_8_7_1.test.slow();
|
|
22
23
|
const processName = 'REST_Connector_No_Auth_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
|
|
23
24
|
await SM_8_7_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
|
|
@@ -48,7 +49,8 @@ SM_8_7_1.test.describe.parallel('Connectors User Flow Tests', () => {
|
|
|
48
49
|
});
|
|
49
50
|
});
|
|
50
51
|
});
|
|
51
|
-
|
|
52
|
+
// Skipped due to 320: https://github.com/camunda/marketplace-api/issues/320
|
|
53
|
+
SM_8_7_1.test.skip('REST Connector Bearer Token Auth User Flow', async ({ page, operateHomePage, modelerHomePage, modelerCreatePage, connectorSettingsPage, navigationPage, operateProcessInstancePage, operateProcessesPage, connectorMarketplacePage, context, }) => {
|
|
52
54
|
SM_8_7_1.test.slow();
|
|
53
55
|
const processName = 'REST_Connector_Bearer_Auth_Process' +
|
|
54
56
|
(await (0, _setup_1.generateRandomStringAsync)(3));
|
|
@@ -120,7 +122,8 @@ SM_8_7_1.test.describe.parallel('Connectors User Flow Tests', () => {
|
|
|
120
122
|
(0, test_1.expect)(result).toBe('completed');
|
|
121
123
|
});
|
|
122
124
|
});
|
|
123
|
-
|
|
125
|
+
// Skipped due to 320: https://github.com/camunda/marketplace-api/issues/320
|
|
126
|
+
SM_8_7_1.test.skip('Connector Secrets User Flow', async ({ page, operateHomePage, modelerHomePage, navigationPage, modelerCreatePage, connectorSettingsPage, operateProcessInstancePage, operateProcessesPage, connectorMarketplacePage, context, }) => {
|
|
124
127
|
SM_8_7_1.test.slow();
|
|
125
128
|
const processName = 'REST_Connector_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
|
|
126
129
|
await SM_8_7_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
|
|
@@ -152,7 +152,8 @@ SM_8_7_1.test.describe.parallel('Smoke Tests', () => {
|
|
|
152
152
|
});
|
|
153
153
|
console.log(`[${testInfo.title}] Test end: timeout = ${testInfo.timeout}`);
|
|
154
154
|
});
|
|
155
|
-
|
|
155
|
+
// Skipped due to 320: https://github.com/camunda/marketplace-api/issues/320
|
|
156
|
+
SM_8_7_1.test.skip('Most Common REST Connector User Flow', async ({ page, context, operateHomePage, modelerHomePage, modelerCreatePage, connectorSettingsPage, navigationPage, operateProcessesPage, operateProcessInstancePage, connectorMarketplacePage, identityPage, identityUsersPage, }, testInfo) => {
|
|
156
157
|
console.log(`[${testInfo.title}] Test start: timeout = ${testInfo.timeout}`);
|
|
157
158
|
const processName = 'REST_Connector_Basic_Auth_Process' +
|
|
158
159
|
(await (0, _setup_1.generateRandomStringAsync)(3));
|