@camunda/e2e-test-suite 0.0.987 → 0.0.989
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/FormJsPage.d.ts +1 -0
- package/dist/pages/SM-8.10/FormJsPage.js +5 -0
- package/dist/pages/SM-8.10/ModelerCreatePage.js +4 -14
- package/dist/tests/8.10/access-user-role-management.spec.js +1 -2
- package/dist/utils/modelerCluster.d.ts +9 -0
- package/dist/utils/modelerCluster.js +30 -0
- package/package.json +1 -1
|
@@ -11,6 +11,7 @@ declare class FormJsPage {
|
|
|
11
11
|
readonly uploadMultipleFilesToggle: Locator;
|
|
12
12
|
readonly documentReferenceInput: Locator;
|
|
13
13
|
readonly documentPreview: Locator;
|
|
14
|
+
readonly deployDialog: Locator;
|
|
14
15
|
readonly deployFormButton: Locator;
|
|
15
16
|
readonly deployModalSubmitButton: Locator;
|
|
16
17
|
readonly deploySuccessNotification: Locator;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FormJsPage = void 0;
|
|
4
4
|
const test_1 = require("@playwright/test");
|
|
5
|
+
const modelerCluster_1 = require("../../utils/modelerCluster");
|
|
5
6
|
class FormJsPage {
|
|
6
7
|
page;
|
|
7
8
|
aiFormGeneratorButton;
|
|
@@ -14,6 +15,7 @@ class FormJsPage {
|
|
|
14
15
|
uploadMultipleFilesToggle;
|
|
15
16
|
documentReferenceInput;
|
|
16
17
|
documentPreview;
|
|
18
|
+
deployDialog;
|
|
17
19
|
deployFormButton;
|
|
18
20
|
deployModalSubmitButton;
|
|
19
21
|
deploySuccessNotification;
|
|
@@ -33,6 +35,7 @@ class FormJsPage {
|
|
|
33
35
|
name: 'document reference',
|
|
34
36
|
});
|
|
35
37
|
this.documentPreview = page.locator('button[data-field-type="documentPreview"]');
|
|
38
|
+
this.deployDialog = page.getByRole('dialog');
|
|
36
39
|
this.deployFormButton = page.locator('button.cds--btn--primary', {
|
|
37
40
|
hasText: 'Deploy',
|
|
38
41
|
});
|
|
@@ -78,6 +81,8 @@ class FormJsPage {
|
|
|
78
81
|
}
|
|
79
82
|
async deployForm() {
|
|
80
83
|
await this.clickDeployFormButton();
|
|
84
|
+
await (0, test_1.expect)(this.deployDialog).toBeVisible({ timeout: 30000 });
|
|
85
|
+
await (0, modelerCluster_1.selectModelerCluster)(this.deployDialog);
|
|
81
86
|
await this.clickDeployModalSubmitButton();
|
|
82
87
|
await (0, test_1.expect)(this.deploySuccessNotification).toBeVisible({ timeout: 30000 });
|
|
83
88
|
}
|
|
@@ -4,6 +4,7 @@ exports.ModelerCreatePage = void 0;
|
|
|
4
4
|
const test_1 = require("@playwright/test");
|
|
5
5
|
const ConnectorMarketplacePage_1 = require("./ConnectorMarketplacePage");
|
|
6
6
|
const sleep_1 = require("../../utils/sleep");
|
|
7
|
+
const modelerCluster_1 = require("../../utils/modelerCluster");
|
|
7
8
|
class ModelerCreatePage {
|
|
8
9
|
page;
|
|
9
10
|
generalPanel;
|
|
@@ -281,6 +282,8 @@ class ModelerCreatePage {
|
|
|
281
282
|
}
|
|
282
283
|
async deployProcessInstance(tenant = '') {
|
|
283
284
|
await this.clickDeployButton();
|
|
285
|
+
await (0, test_1.expect)(this.dialog).toBeVisible({ timeout: 30000 });
|
|
286
|
+
await (0, modelerCluster_1.selectModelerCluster)(this.dialog);
|
|
284
287
|
if (tenant.length > 0) {
|
|
285
288
|
await this.clickTenantIdInput();
|
|
286
289
|
await this.fillTenantIdInput(tenant);
|
|
@@ -376,20 +379,7 @@ class ModelerCreatePage {
|
|
|
376
379
|
await (0, test_1.expect)(this.dialog).toBeVisible({
|
|
377
380
|
timeout: 30000,
|
|
378
381
|
});
|
|
379
|
-
|
|
380
|
-
if (modelerClusterName) {
|
|
381
|
-
const clusterSelect = this.dialog.getByRole('combobox', {
|
|
382
|
-
name: 'Select a cluster',
|
|
383
|
-
});
|
|
384
|
-
await clusterSelect.click();
|
|
385
|
-
const escapedClusterName = modelerClusterName.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
386
|
-
await this.dialog
|
|
387
|
-
.getByRole('option', {
|
|
388
|
-
name: new RegExp(`^${escapedClusterName}(?: \\(|$)`),
|
|
389
|
-
})
|
|
390
|
-
.click();
|
|
391
|
-
await (0, test_1.expect)(clusterSelect).toContainText(modelerClusterName);
|
|
392
|
-
}
|
|
382
|
+
await (0, modelerCluster_1.selectModelerCluster)(this.dialog);
|
|
393
383
|
if (variables.length > 0) {
|
|
394
384
|
await (0, test_1.expect)(this.variableInput).toBeVisible({
|
|
395
385
|
timeout: 60000,
|
|
@@ -129,8 +129,7 @@ _8_10_1.test.describe('User Roles User Flow', () => {
|
|
|
129
129
|
await modelerCreatePage.clickCloseButton();
|
|
130
130
|
});
|
|
131
131
|
});
|
|
132
|
-
|
|
133
|
-
_8_10_1.test.skip('Analyst Role User Flow', async ({ page, modelerHomePage, appsPage, homePage, clusterPage, clusterDetailsPage, browser, consoleOrganizationsPage, settingsPage, operateHomePage, ocIdentityHomePage, taskPanelPage, optimizeHomePage, modelerCreatePage, }) => {
|
|
132
|
+
(0, _8_10_1.test)('Analyst Role User Flow', async ({ page, modelerHomePage, appsPage, homePage, clusterPage, clusterDetailsPage, browser, consoleOrganizationsPage, settingsPage, operateHomePage, ocIdentityHomePage, taskPanelPage, optimizeHomePage, modelerCreatePage, }) => {
|
|
134
133
|
_8_10_1.test.slow();
|
|
135
134
|
const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
|
|
136
135
|
const processName = 'User Roles User Flow' + randomString;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Locator } from '@playwright/test';
|
|
2
|
+
/**
|
|
3
|
+
* Selects the cluster named by MODELER_CLUSTER_NAME in a Web Modeler deploy dialog.
|
|
4
|
+
*
|
|
5
|
+
* No-op when the variable is unset, which is every single-cluster environment. In a topology one
|
|
6
|
+
* Hub Web Modeler serves several orchestration clusters and preselects one of them, so a test that
|
|
7
|
+
* does not choose deploys somewhere other than the release under test.
|
|
8
|
+
*/
|
|
9
|
+
export declare function selectModelerCluster(dialog: Locator): Promise<void>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.selectModelerCluster = void 0;
|
|
4
|
+
const test_1 = require("@playwright/test");
|
|
5
|
+
/**
|
|
6
|
+
* Selects the cluster named by MODELER_CLUSTER_NAME in a Web Modeler deploy dialog.
|
|
7
|
+
*
|
|
8
|
+
* No-op when the variable is unset, which is every single-cluster environment. In a topology one
|
|
9
|
+
* Hub Web Modeler serves several orchestration clusters and preselects one of them, so a test that
|
|
10
|
+
* does not choose deploys somewhere other than the release under test.
|
|
11
|
+
*/
|
|
12
|
+
async function selectModelerCluster(dialog) {
|
|
13
|
+
const modelerClusterName = process.env.MODELER_CLUSTER_NAME;
|
|
14
|
+
if (!modelerClusterName) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const clusterSelect = dialog.getByRole('combobox', {
|
|
18
|
+
name: 'Select a cluster',
|
|
19
|
+
});
|
|
20
|
+
await clusterSelect.click();
|
|
21
|
+
const escapedClusterName = modelerClusterName.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
22
|
+
// The option label carries a trailing " (<status>)", so anchor the name and allow that suffix.
|
|
23
|
+
await dialog
|
|
24
|
+
.getByRole('option', {
|
|
25
|
+
name: new RegExp(`^${escapedClusterName}(?: \\(|$)`),
|
|
26
|
+
})
|
|
27
|
+
.click();
|
|
28
|
+
await (0, test_1.expect)(clusterSelect).toContainText(modelerClusterName);
|
|
29
|
+
}
|
|
30
|
+
exports.selectModelerCluster = selectModelerCluster;
|