@camunda/e2e-test-suite 0.0.714 → 0.0.716
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/.github/c8_versions.json +0 -3
- package/README.md +0 -6
- package/dist/pages/8.9/ModelerCreatePage.d.ts +3 -1
- package/dist/pages/8.9/ModelerCreatePage.js +13 -3
- package/dist/tests/8.9/web-modeler-user-flows.spec.js +42 -37
- package/dist/utils/clusterVersions.d.ts +0 -1
- package/dist/utils/clusterVersions.js +0 -1
- package/package.json +1 -1
- package/dist/fixtures/8.6.d.ts +0 -63
- package/dist/fixtures/8.6.js +0 -162
- package/dist/fixtures/SM-8.6.d.ts +0 -63
- package/dist/fixtures/SM-8.6.js +0 -149
- package/dist/fixtures/c8Run-8.6.d.ts +0 -20
- package/dist/fixtures/c8Run-8.6.js +0 -56
- package/dist/pages/8.6/AppsPage.d.ts +0 -33
- package/dist/pages/8.6/AppsPage.js +0 -337
- package/dist/pages/8.6/ClientCredentialsDetailsPage.d.ts +0 -12
- package/dist/pages/8.6/ClientCredentialsDetailsPage.js +0 -36
- package/dist/pages/8.6/ClusterDetailsPage.d.ts +0 -75
- package/dist/pages/8.6/ClusterDetailsPage.js +0 -443
- package/dist/pages/8.6/ClusterPage.d.ts +0 -59
- package/dist/pages/8.6/ClusterPage.js +0 -320
- package/dist/pages/8.6/ClusterSecretsPage.d.ts +0 -28
- package/dist/pages/8.6/ClusterSecretsPage.js +0 -134
- package/dist/pages/8.6/ConnectorMarketplacePage.d.ts +0 -19
- package/dist/pages/8.6/ConnectorMarketplacePage.js +0 -60
- package/dist/pages/8.6/ConnectorSettingsPage.d.ts +0 -38
- package/dist/pages/8.6/ConnectorSettingsPage.js +0 -133
- package/dist/pages/8.6/ConnectorTemplatePage.d.ts +0 -11
- package/dist/pages/8.6/ConnectorTemplatePage.js +0 -34
- package/dist/pages/8.6/ConsoleOrganizationPage.d.ts +0 -87
- package/dist/pages/8.6/ConsoleOrganizationPage.js +0 -495
- package/dist/pages/8.6/FormJsPage.d.ts +0 -30
- package/dist/pages/8.6/FormJsPage.js +0 -112
- package/dist/pages/8.6/HomePage.d.ts +0 -27
- package/dist/pages/8.6/HomePage.js +0 -101
- package/dist/pages/8.6/LoginPage.d.ts +0 -30
- package/dist/pages/8.6/LoginPage.js +0 -85
- package/dist/pages/8.6/ModelerCreatePage.d.ts +0 -211
- package/dist/pages/8.6/ModelerCreatePage.js +0 -1125
- package/dist/pages/8.6/ModelerHomePage.d.ts +0 -48
- package/dist/pages/8.6/ModelerHomePage.js +0 -213
- package/dist/pages/8.6/ModelerUserInvitePage.d.ts +0 -28
- package/dist/pages/8.6/ModelerUserInvitePage.js +0 -106
- package/dist/pages/8.6/OperateHomePage.d.ts +0 -21
- package/dist/pages/8.6/OperateHomePage.js +0 -57
- package/dist/pages/8.6/OperateProcessInstancePage.d.ts +0 -17
- package/dist/pages/8.6/OperateProcessInstancePage.js +0 -58
- package/dist/pages/8.6/OperateProcessesPage.d.ts +0 -21
- package/dist/pages/8.6/OperateProcessesPage.js +0 -77
- package/dist/pages/8.6/OptimizeCollectionsPage.d.ts +0 -15
- package/dist/pages/8.6/OptimizeCollectionsPage.js +0 -44
- package/dist/pages/8.6/OptimizeDashboardPage.d.ts +0 -11
- package/dist/pages/8.6/OptimizeDashboardPage.js +0 -65
- package/dist/pages/8.6/OptimizeHomePage.d.ts +0 -12
- package/dist/pages/8.6/OptimizeHomePage.js +0 -32
- package/dist/pages/8.6/OptimizeReportPage.d.ts +0 -48
- package/dist/pages/8.6/OptimizeReportPage.js +0 -163
- package/dist/pages/8.6/PlayPage.d.ts +0 -14
- package/dist/pages/8.6/PlayPage.js +0 -66
- package/dist/pages/8.6/SettingsPage.d.ts +0 -10
- package/dist/pages/8.6/SettingsPage.js +0 -43
- package/dist/pages/8.6/SignUpPage.d.ts +0 -43
- package/dist/pages/8.6/SignUpPage.js +0 -136
- package/dist/pages/8.6/TaskDetailsPage.d.ts +0 -66
- package/dist/pages/8.6/TaskDetailsPage.js +0 -214
- package/dist/pages/8.6/TaskPanelPage.d.ts +0 -18
- package/dist/pages/8.6/TaskPanelPage.js +0 -54
- package/dist/pages/8.6/TaskProcessesPage.d.ts +0 -11
- package/dist/pages/8.6/TaskProcessesPage.js +0 -35
- package/dist/pages/8.6/UtilitiesPage.d.ts +0 -38
- package/dist/pages/8.6/UtilitiesPage.js +0 -328
- package/dist/pages/SM-8.6/ConnectorMarketplacePage.d.ts +0 -16
- package/dist/pages/SM-8.6/ConnectorMarketplacePage.js +0 -48
- package/dist/pages/SM-8.6/ConnectorSettingsPage.d.ts +0 -28
- package/dist/pages/SM-8.6/ConnectorSettingsPage.js +0 -82
- package/dist/pages/SM-8.6/ConnectorTemplatePage.d.ts +0 -11
- package/dist/pages/SM-8.6/ConnectorTemplatePage.js +0 -34
- package/dist/pages/SM-8.6/ConsoleHomePage.d.ts +0 -9
- package/dist/pages/SM-8.6/ConsoleHomePage.js +0 -22
- package/dist/pages/SM-8.6/ConsoleOrganizationPage.d.ts +0 -22
- package/dist/pages/SM-8.6/ConsoleOrganizationPage.js +0 -68
- package/dist/pages/SM-8.6/FormJsPage.d.ts +0 -13
- package/dist/pages/SM-8.6/FormJsPage.js +0 -30
- package/dist/pages/SM-8.6/HomePage.d.ts +0 -20
- package/dist/pages/SM-8.6/HomePage.js +0 -49
- package/dist/pages/SM-8.6/IdentityPage.d.ts +0 -67
- package/dist/pages/SM-8.6/IdentityPage.js +0 -266
- package/dist/pages/SM-8.6/IdentityTenantPage.d.ts +0 -50
- package/dist/pages/SM-8.6/IdentityTenantPage.js +0 -196
- package/dist/pages/SM-8.6/IdentityUsersPage.d.ts +0 -90
- package/dist/pages/SM-8.6/IdentityUsersPage.js +0 -505
- package/dist/pages/SM-8.6/KeycloakAdminPage.d.ts +0 -15
- package/dist/pages/SM-8.6/KeycloakAdminPage.js +0 -56
- package/dist/pages/SM-8.6/KeycloakLoginPage.d.ts +0 -11
- package/dist/pages/SM-8.6/KeycloakLoginPage.js +0 -25
- package/dist/pages/SM-8.6/KeycloakUtils.d.ts +0 -15
- package/dist/pages/SM-8.6/KeycloakUtils.js +0 -58
- package/dist/pages/SM-8.6/LoginPage.d.ts +0 -22
- package/dist/pages/SM-8.6/LoginPage.js +0 -123
- package/dist/pages/SM-8.6/ModelerCreatePage.d.ts +0 -167
- package/dist/pages/SM-8.6/ModelerCreatePage.js +0 -852
- package/dist/pages/SM-8.6/ModelerHomePage.d.ts +0 -41
- package/dist/pages/SM-8.6/ModelerHomePage.js +0 -150
- package/dist/pages/SM-8.6/NavigationPage.d.ts +0 -42
- package/dist/pages/SM-8.6/NavigationPage.js +0 -119
- package/dist/pages/SM-8.6/OperateHomePage.d.ts +0 -23
- package/dist/pages/SM-8.6/OperateHomePage.js +0 -65
- package/dist/pages/SM-8.6/OperateProcessInstancePage.d.ts +0 -22
- package/dist/pages/SM-8.6/OperateProcessInstancePage.js +0 -139
- package/dist/pages/SM-8.6/OperateProcessesPage.d.ts +0 -33
- package/dist/pages/SM-8.6/OperateProcessesPage.js +0 -166
- package/dist/pages/SM-8.6/OptimizeCollectionsPage.d.ts +0 -15
- package/dist/pages/SM-8.6/OptimizeCollectionsPage.js +0 -44
- package/dist/pages/SM-8.6/OptimizeDashboardPage.d.ts +0 -14
- package/dist/pages/SM-8.6/OptimizeDashboardPage.js +0 -56
- package/dist/pages/SM-8.6/OptimizeHomePage.d.ts +0 -19
- package/dist/pages/SM-8.6/OptimizeHomePage.js +0 -62
- package/dist/pages/SM-8.6/OptimizeReportPage.d.ts +0 -50
- package/dist/pages/SM-8.6/OptimizeReportPage.js +0 -162
- package/dist/pages/SM-8.6/PlayPage.d.ts +0 -19
- package/dist/pages/SM-8.6/PlayPage.js +0 -103
- package/dist/pages/SM-8.6/SettingsPage.d.ts +0 -10
- package/dist/pages/SM-8.6/SettingsPage.js +0 -20
- package/dist/pages/SM-8.6/TaskDetailsPage.d.ts +0 -64
- package/dist/pages/SM-8.6/TaskDetailsPage.js +0 -240
- package/dist/pages/SM-8.6/TaskPanelPage.d.ts +0 -22
- package/dist/pages/SM-8.6/TaskPanelPage.js +0 -68
- package/dist/pages/SM-8.6/TaskProcessesPage.d.ts +0 -11
- package/dist/pages/SM-8.6/TaskProcessesPage.js +0 -31
- package/dist/pages/SM-8.6/UtlitiesPage.d.ts +0 -21
- package/dist/pages/SM-8.6/UtlitiesPage.js +0 -207
- package/dist/pages/SM-8.6/optimizeReportUtils.d.ts +0 -6
- package/dist/pages/SM-8.6/optimizeReportUtils.js +0 -42
- package/dist/pages/c8Run-8.6/OperateHomePage.d.ts +0 -20
- package/dist/pages/c8Run-8.6/OperateHomePage.js +0 -52
- package/dist/pages/c8Run-8.6/OperateLoginPage.d.ts +0 -14
- package/dist/pages/c8Run-8.6/OperateLoginPage.js +0 -37
- package/dist/pages/c8Run-8.6/OperateProcessInstancePage.d.ts +0 -17
- package/dist/pages/c8Run-8.6/OperateProcessInstancePage.js +0 -76
- package/dist/pages/c8Run-8.6/OperateProcessesPage.d.ts +0 -20
- package/dist/pages/c8Run-8.6/OperateProcessesPage.js +0 -84
- package/dist/pages/c8Run-8.6/TaskDetailsPage.d.ts +0 -65
- package/dist/pages/c8Run-8.6/TaskDetailsPage.js +0 -219
- package/dist/pages/c8Run-8.6/TaskListLoginPage.d.ts +0 -14
- package/dist/pages/c8Run-8.6/TaskListLoginPage.js +0 -37
- package/dist/pages/c8Run-8.6/TaskPanelPage.d.ts +0 -23
- package/dist/pages/c8Run-8.6/TaskPanelPage.js +0 -76
- package/dist/pages/c8Run-8.6/UtilitiesPage.d.ts +0 -6
- package/dist/pages/c8Run-8.6/UtilitiesPage.js +0 -45
- package/dist/tests/8.6/connectors-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.6/connectors-user-flows.spec.js +0 -435
- package/dist/tests/8.6/console-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.6/console-user-flows.spec.js +0 -193
- package/dist/tests/8.6/hto-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.6/hto-user-flows.spec.js +0 -365
- package/dist/tests/8.6/login.spec.d.ts +0 -1
- package/dist/tests/8.6/login.spec.js +0 -27
- package/dist/tests/8.6/navigation.spec.d.ts +0 -1
- package/dist/tests/8.6/navigation.spec.js +0 -57
- package/dist/tests/8.6/operate-access-flow.spec.d.ts +0 -1
- package/dist/tests/8.6/operate-access-flow.spec.js +0 -57
- package/dist/tests/8.6/optimize-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.6/optimize-user-flows.spec.js +0 -231
- package/dist/tests/8.6/play.spec.d.ts +0 -1
- package/dist/tests/8.6/play.spec.js +0 -94
- package/dist/tests/8.6/rba-enabled-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.6/rba-enabled-user-flows.spec.js +0 -288
- package/dist/tests/8.6/smoke-tests.spec.d.ts +0 -1
- package/dist/tests/8.6/smoke-tests.spec.js +0 -188
- package/dist/tests/8.6/test-setup.spec.d.ts +0 -1
- package/dist/tests/8.6/test-setup.spec.js +0 -68
- package/dist/tests/8.6/web-modeler-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.6/web-modeler-user-flows.spec.js +0 -692
- package/dist/tests/SM-8.6/connectors-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/connectors-user-flows.spec.js +0 -247
- package/dist/tests/SM-8.6/console-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/console-user-flows.spec.js +0 -55
- package/dist/tests/SM-8.6/hto-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/hto-user-flows.spec.js +0 -393
- package/dist/tests/SM-8.6/license-key-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/license-key-user-flows.spec.js +0 -462
- package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.js +0 -500
- package/dist/tests/SM-8.6/optimize-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/optimize-user-flows.spec.js +0 -186
- package/dist/tests/SM-8.6/play.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/play.spec.js +0 -87
- package/dist/tests/SM-8.6/rba-enabled-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/rba-enabled-user-flows.spec.js +0 -242
- package/dist/tests/SM-8.6/smoke-tests.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/smoke-tests.spec.js +0 -158
- package/dist/tests/SM-8.6/test-setup.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/test-setup.spec.js +0 -134
- package/dist/tests/SM-8.6/web-modeler-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.6/web-modeler-user-flows.spec.js +0 -126
- package/dist/tests/c8Run-8.6/api-tests.spec.d.ts +0 -1
- package/dist/tests/c8Run-8.6/api-tests.spec.js +0 -67
- package/dist/tests/c8Run-8.6/connectors-user-flows.spec.d.ts +0 -1
- package/dist/tests/c8Run-8.6/connectors-user-flows.spec.js +0 -119
- package/dist/tests/c8Run-8.6/hto-user-flows.spec.d.ts +0 -1
- package/dist/tests/c8Run-8.6/hto-user-flows.spec.js +0 -199
- package/dist/tests/c8Run-8.6/login.spec.d.ts +0 -1
- package/dist/tests/c8Run-8.6/login.spec.js +0 -22
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
import { ClientCredentialsDetailsPage } from '../8.6/ClientCredentialsDetailsPage';
|
|
3
|
-
declare class ClusterDetailsPage {
|
|
4
|
-
private page;
|
|
5
|
-
readonly apiTab: Locator;
|
|
6
|
-
readonly createFirstClientButton: Locator;
|
|
7
|
-
readonly clientNameTextbox: Locator;
|
|
8
|
-
readonly tasklistCheckbox: Locator;
|
|
9
|
-
readonly optimizeCheckbox: Locator;
|
|
10
|
-
readonly secretsCheckbox: Locator;
|
|
11
|
-
readonly operateCheckbox: Locator;
|
|
12
|
-
readonly createButton: Locator;
|
|
13
|
-
readonly closeModalButton: Locator;
|
|
14
|
-
readonly clientsList: Locator;
|
|
15
|
-
readonly createClientButton: Locator;
|
|
16
|
-
readonly settingsTab: Locator;
|
|
17
|
-
readonly rbaEnableButton: Locator;
|
|
18
|
-
readonly rbaDisableButton: Locator;
|
|
19
|
-
readonly dialog: Locator;
|
|
20
|
-
readonly enableRBADialog: Locator;
|
|
21
|
-
readonly disableRBADialog: Locator;
|
|
22
|
-
readonly deleteButton: Locator;
|
|
23
|
-
readonly deleteSubButton: Locator;
|
|
24
|
-
readonly createClientCredentialsDialog: Locator;
|
|
25
|
-
readonly clientCredentialsDialog: Locator;
|
|
26
|
-
readonly userTaskRestriction: Locator;
|
|
27
|
-
readonly alertsTab: Locator;
|
|
28
|
-
readonly alertsList: Locator;
|
|
29
|
-
readonly createFirstAlertButton: Locator;
|
|
30
|
-
readonly createNewAlertButton: Locator;
|
|
31
|
-
readonly emailRadioButton: Locator;
|
|
32
|
-
readonly createAlertsDialog: Locator;
|
|
33
|
-
readonly createAlertButton: Locator;
|
|
34
|
-
readonly rbaHeading: Locator;
|
|
35
|
-
readonly rbaEnabledMessage: Locator;
|
|
36
|
-
readonly clientCredentialsLink: (clientCredentials: string) => Locator;
|
|
37
|
-
readonly clientRow: (name: string) => Locator;
|
|
38
|
-
readonly clientRowDeleteButton: (name: string) => Locator;
|
|
39
|
-
readonly reviewUpdateButton: Locator;
|
|
40
|
-
readonly updateAvailableDialog: Locator;
|
|
41
|
-
readonly updateButton: Locator;
|
|
42
|
-
constructor(page: Page);
|
|
43
|
-
clickAPITab(): Promise<void>;
|
|
44
|
-
deleteAPIClientsIfExist(name?: string): Promise<void>;
|
|
45
|
-
clickAlertsTab(): Promise<void>;
|
|
46
|
-
clickCreateFirstAlertButton(): Promise<void>;
|
|
47
|
-
clickCreateNewAlertButton(): Promise<void>;
|
|
48
|
-
createAlert(isFirstAlert?: boolean): Promise<void>;
|
|
49
|
-
selectEmailRadioButton(): Promise<void>;
|
|
50
|
-
clickCreateAlertButton(): Promise<void>;
|
|
51
|
-
deleteAlerts(): Promise<void>;
|
|
52
|
-
private doDelete;
|
|
53
|
-
clickCreateClientButton(): Promise<void>;
|
|
54
|
-
clickCreateFirstClientButton(): Promise<void>;
|
|
55
|
-
reload(): Promise<void>;
|
|
56
|
-
clickClientNameTextbox(): Promise<void>;
|
|
57
|
-
fillClientNameTextbox(name: string): Promise<void>;
|
|
58
|
-
clickTasklistCheckbox(): Promise<void>;
|
|
59
|
-
clickOperateCheckbox(): Promise<void>;
|
|
60
|
-
clickOptimizeCheckbox(): Promise<void>;
|
|
61
|
-
clickSecretsCheckbox(): Promise<void>;
|
|
62
|
-
clickCreateButton(): Promise<void>;
|
|
63
|
-
clickCloseModalButton(): Promise<void>;
|
|
64
|
-
clickSettingsTab(): Promise<void>;
|
|
65
|
-
createAPIClient(name: string): Promise<void>;
|
|
66
|
-
searchAndClickClientCredentialsLink(name: string): Promise<ClientCredentialsDetailsPage>;
|
|
67
|
-
enableRBA(): Promise<void>;
|
|
68
|
-
disableRBA(): Promise<void>;
|
|
69
|
-
assertComponentsHealth(components?: string[]): Promise<void>;
|
|
70
|
-
userTaskEnabledAssertion(): Promise<void>;
|
|
71
|
-
clickReviewUpdateButton(): Promise<void>;
|
|
72
|
-
clickUpdateButton(): Promise<void>;
|
|
73
|
-
performClusterUpdate(): Promise<void>;
|
|
74
|
-
}
|
|
75
|
-
export { ClusterDetailsPage };
|
|
@@ -1,443 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ClusterDetailsPage = void 0;
|
|
4
|
-
const test_1 = require("@playwright/test");
|
|
5
|
-
const sleep_1 = require("../../utils/sleep");
|
|
6
|
-
const ClientCredentialsDetailsPage_1 = require("../8.6/ClientCredentialsDetailsPage");
|
|
7
|
-
const clickLocatorWithRetry_1 = require("../../utils/assertionHelpers/clickLocatorWithRetry");
|
|
8
|
-
const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
|
|
9
|
-
class ClusterDetailsPage {
|
|
10
|
-
page;
|
|
11
|
-
apiTab;
|
|
12
|
-
createFirstClientButton;
|
|
13
|
-
clientNameTextbox;
|
|
14
|
-
tasklistCheckbox;
|
|
15
|
-
optimizeCheckbox;
|
|
16
|
-
secretsCheckbox;
|
|
17
|
-
operateCheckbox;
|
|
18
|
-
createButton;
|
|
19
|
-
closeModalButton;
|
|
20
|
-
clientsList;
|
|
21
|
-
createClientButton;
|
|
22
|
-
settingsTab;
|
|
23
|
-
rbaEnableButton;
|
|
24
|
-
rbaDisableButton;
|
|
25
|
-
dialog;
|
|
26
|
-
enableRBADialog;
|
|
27
|
-
disableRBADialog;
|
|
28
|
-
deleteButton;
|
|
29
|
-
deleteSubButton;
|
|
30
|
-
createClientCredentialsDialog;
|
|
31
|
-
clientCredentialsDialog;
|
|
32
|
-
userTaskRestriction;
|
|
33
|
-
alertsTab;
|
|
34
|
-
alertsList;
|
|
35
|
-
createFirstAlertButton;
|
|
36
|
-
createNewAlertButton;
|
|
37
|
-
emailRadioButton;
|
|
38
|
-
createAlertsDialog;
|
|
39
|
-
createAlertButton;
|
|
40
|
-
rbaHeading;
|
|
41
|
-
rbaEnabledMessage;
|
|
42
|
-
clientCredentialsLink;
|
|
43
|
-
clientRow;
|
|
44
|
-
clientRowDeleteButton;
|
|
45
|
-
reviewUpdateButton;
|
|
46
|
-
updateAvailableDialog;
|
|
47
|
-
updateButton;
|
|
48
|
-
constructor(page) {
|
|
49
|
-
this.page = page;
|
|
50
|
-
this.apiTab = page.getByRole('tab', { name: 'API' });
|
|
51
|
-
this.createFirstClientButton = page.getByRole('button', {
|
|
52
|
-
name: 'Create your first Client',
|
|
53
|
-
});
|
|
54
|
-
this.clientNameTextbox = page.getByRole('textbox', { name: 'Client Name' });
|
|
55
|
-
this.tasklistCheckbox = page
|
|
56
|
-
.getByRole('dialog')
|
|
57
|
-
.locator('label.cds--checkbox-label')
|
|
58
|
-
.filter({ hasText: /^Tasklist$/ });
|
|
59
|
-
this.optimizeCheckbox = page
|
|
60
|
-
.getByRole('dialog')
|
|
61
|
-
.locator('label.cds--checkbox-label')
|
|
62
|
-
.filter({ hasText: /^Optimize$/ });
|
|
63
|
-
this.operateCheckbox = page
|
|
64
|
-
.getByRole('dialog')
|
|
65
|
-
.locator('label.cds--checkbox-label')
|
|
66
|
-
.filter({ hasText: /^Operate$/ });
|
|
67
|
-
this.secretsCheckbox = page
|
|
68
|
-
.getByRole('dialog')
|
|
69
|
-
.locator('label')
|
|
70
|
-
.filter({ hasText: /^Secrets$/ });
|
|
71
|
-
this.createButton = page.getByRole('button', { name: 'Create', exact: true });
|
|
72
|
-
this.closeModalButton = page
|
|
73
|
-
.getByRole('dialog', { name: 'Client credentials', exact: true })
|
|
74
|
-
.getByLabel('Close');
|
|
75
|
-
this.createClientButton = page.getByRole('button', {
|
|
76
|
-
name: 'Create new Client',
|
|
77
|
-
});
|
|
78
|
-
this.settingsTab = page.getByRole('tab', { name: 'Settings' });
|
|
79
|
-
this.dialog = page.getByRole('dialog');
|
|
80
|
-
this.enableRBADialog = page.getByRole('dialog', {
|
|
81
|
-
name: 'Enable resource-based authorizations',
|
|
82
|
-
exact: true,
|
|
83
|
-
});
|
|
84
|
-
this.disableRBADialog = page.getByRole('dialog', {
|
|
85
|
-
name: 'Disable resource-based authorizations',
|
|
86
|
-
exact: true,
|
|
87
|
-
});
|
|
88
|
-
this.rbaEnableButton = this.enableRBADialog.getByRole('button', {
|
|
89
|
-
name: 'Enable',
|
|
90
|
-
});
|
|
91
|
-
this.rbaDisableButton = this.disableRBADialog.getByRole('button', {
|
|
92
|
-
name: 'Disable',
|
|
93
|
-
});
|
|
94
|
-
this.deleteButton = page.getByRole('button', { name: 'Delete' });
|
|
95
|
-
this.deleteSubButton = page.getByRole('button', {
|
|
96
|
-
name: 'danger Delete',
|
|
97
|
-
});
|
|
98
|
-
this.createClientCredentialsDialog = page.getByRole('dialog', {
|
|
99
|
-
name: 'Create new client credentials',
|
|
100
|
-
});
|
|
101
|
-
this.clientCredentialsDialog = page.getByRole('dialog', {
|
|
102
|
-
name: 'Client credentials',
|
|
103
|
-
exact: true,
|
|
104
|
-
});
|
|
105
|
-
this.userTaskRestriction = page.locator('button[aria-label="Switch Enforce user task restrictions"]');
|
|
106
|
-
this.rbaEnabledMessage = page.getByText('Resource-based authorizations enabled');
|
|
107
|
-
this.alertsTab = page.getByRole('tab', { name: 'Alerts' });
|
|
108
|
-
this.alertsList = page
|
|
109
|
-
.getByRole('row')
|
|
110
|
-
.filter({ hasNotText: 'Delivery method' }); //Filter out header row
|
|
111
|
-
this.createFirstAlertButton = page.getByRole('button', {
|
|
112
|
-
name: 'Create an alert',
|
|
113
|
-
});
|
|
114
|
-
this.createNewAlertButton = page.getByRole('button', {
|
|
115
|
-
name: 'Create new alert',
|
|
116
|
-
});
|
|
117
|
-
this.emailRadioButton = page.getByRole('radio', {
|
|
118
|
-
name: 'Email',
|
|
119
|
-
});
|
|
120
|
-
this.createAlertsDialog = page.getByRole('dialog', {
|
|
121
|
-
name: 'Create process incident alert',
|
|
122
|
-
});
|
|
123
|
-
this.createAlertButton = page.getByRole('button', {
|
|
124
|
-
name: 'Create alert',
|
|
125
|
-
exact: true,
|
|
126
|
-
});
|
|
127
|
-
this.rbaHeading = this.page.getByRole('heading', {
|
|
128
|
-
name: 'Resource-based authorizations',
|
|
129
|
-
});
|
|
130
|
-
this.clientsList = page.getByRole('row').filter({ hasNotText: 'Scopes' });
|
|
131
|
-
this.clientCredentialsLink = (clientCredentials) => page
|
|
132
|
-
.getByRole('cell', { name: clientCredentials })
|
|
133
|
-
.getByText(clientCredentials);
|
|
134
|
-
this.clientRow = (name) => this.clientsList.filter({ hasText: name });
|
|
135
|
-
this.clientRowDeleteButton = (name) => this.clientRow(name).getByRole('button', { name: 'Delete' });
|
|
136
|
-
this.reviewUpdateButton = page.getByRole('button', { name: 'Review Update' });
|
|
137
|
-
this.updateAvailableDialog = page
|
|
138
|
-
.locator('.cds--modal-container')
|
|
139
|
-
.filter({ hasText: 'Update available' });
|
|
140
|
-
this.updateButton = this.updateAvailableDialog.getByRole('button', {
|
|
141
|
-
name: 'Update',
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
async clickAPITab() {
|
|
145
|
-
await (0, test_1.expect)(this.apiTab).toBeVisible({ timeout: 15000 });
|
|
146
|
-
await this.apiTab.click({ timeout: 15000 });
|
|
147
|
-
}
|
|
148
|
-
async deleteAPIClientsIfExist(name) {
|
|
149
|
-
if (name) {
|
|
150
|
-
const row = this.clientRow(name);
|
|
151
|
-
const deleteButton = this.clientRowDeleteButton(name);
|
|
152
|
-
try {
|
|
153
|
-
await (0, test_1.expect)(deleteButton).toBeVisible({ timeout: 10000 });
|
|
154
|
-
await deleteButton.click();
|
|
155
|
-
await (0, test_1.expect)(this.dialog).toBeVisible();
|
|
156
|
-
await this.deleteSubButton.click();
|
|
157
|
-
await (0, test_1.expect)(this.page.getByText('Deleting...')).not.toBeVisible({
|
|
158
|
-
timeout: 10000,
|
|
159
|
-
});
|
|
160
|
-
await (0, test_1.expect)(row).not.toBeVisible();
|
|
161
|
-
}
|
|
162
|
-
catch (error) {
|
|
163
|
-
console.warn(`No client row found for ${name} or deletion failed: ${error}`);
|
|
164
|
-
}
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
await this.doDelete(this.dialog, 'API clients');
|
|
168
|
-
}
|
|
169
|
-
async clickAlertsTab() {
|
|
170
|
-
await (0, test_1.expect)(this.alertsTab).toBeVisible({ timeout: 40000 });
|
|
171
|
-
await this.alertsTab.click();
|
|
172
|
-
// Wait for page to load - either button will be visible depending on whether alerts exist
|
|
173
|
-
await (0, test_1.expect)(async () => {
|
|
174
|
-
const hasCreateFirst = await this.createFirstAlertButton.isVisible();
|
|
175
|
-
const hasCreateNew = await this.createNewAlertButton.isVisible();
|
|
176
|
-
(0, test_1.expect)(hasCreateFirst || hasCreateNew).toBe(true);
|
|
177
|
-
}).toPass({ timeout: 30000, intervals: [2000] });
|
|
178
|
-
}
|
|
179
|
-
async clickCreateFirstAlertButton() {
|
|
180
|
-
await (0, test_1.expect)(this.createFirstAlertButton).toBeVisible({ timeout: 40000 });
|
|
181
|
-
await this.createFirstAlertButton.click();
|
|
182
|
-
}
|
|
183
|
-
async clickCreateNewAlertButton() {
|
|
184
|
-
await (0, test_1.expect)(this.createNewAlertButton).toBeVisible({ timeout: 60000 });
|
|
185
|
-
await this.createNewAlertButton.click();
|
|
186
|
-
await (0, test_1.expect)(this.page.getByText('Creating...')).not.toBeVisible({
|
|
187
|
-
timeout: 60000,
|
|
188
|
-
});
|
|
189
|
-
}
|
|
190
|
-
async createAlert(isFirstAlert = true) {
|
|
191
|
-
if (isFirstAlert) {
|
|
192
|
-
await this.clickCreateFirstAlertButton();
|
|
193
|
-
}
|
|
194
|
-
else {
|
|
195
|
-
await this.clickCreateNewAlertButton();
|
|
196
|
-
}
|
|
197
|
-
await (0, test_1.expect)(this.createAlertsDialog).toBeVisible();
|
|
198
|
-
await this.selectEmailRadioButton();
|
|
199
|
-
await this.clickCreateAlertButton();
|
|
200
|
-
}
|
|
201
|
-
async selectEmailRadioButton() {
|
|
202
|
-
await (0, test_1.expect)(this.emailRadioButton).toBeVisible({ timeout: 60000 });
|
|
203
|
-
await this.emailRadioButton.click({ force: true });
|
|
204
|
-
}
|
|
205
|
-
async clickCreateAlertButton() {
|
|
206
|
-
await (0, test_1.expect)(this.createAlertButton).toBeVisible({ timeout: 60000 });
|
|
207
|
-
await this.createAlertButton.click();
|
|
208
|
-
await (0, test_1.expect)(this.page.getByText('Creating...')).not.toBeVisible({
|
|
209
|
-
timeout: 60000,
|
|
210
|
-
});
|
|
211
|
-
}
|
|
212
|
-
async deleteAlerts() {
|
|
213
|
-
await this.doDelete(this.dialog, 'Alerts');
|
|
214
|
-
}
|
|
215
|
-
async doDelete(dialog, text) {
|
|
216
|
-
if ((await this.deleteButton.count()) <= 0) {
|
|
217
|
-
console.log(`No delete button found, skipping deletion.`);
|
|
218
|
-
return;
|
|
219
|
-
}
|
|
220
|
-
try {
|
|
221
|
-
let deletes = await this.deleteButton.all();
|
|
222
|
-
while (deletes.length > 0) {
|
|
223
|
-
const deleteButton = deletes[0];
|
|
224
|
-
if (await deleteButton.isVisible()) {
|
|
225
|
-
await deleteButton.click({ timeout: 60000 });
|
|
226
|
-
await (0, test_1.expect)(dialog).toBeVisible({ timeout: 40000 });
|
|
227
|
-
await this.deleteSubButton.click();
|
|
228
|
-
await (0, test_1.expect)(this.page.getByText('Deleting...')).not.toBeVisible({
|
|
229
|
-
timeout: 60000,
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
await (0, sleep_1.sleep)(3000);
|
|
233
|
-
deletes = await this.deleteButton.all();
|
|
234
|
-
}
|
|
235
|
-
await (0, test_1.expect)(this.deleteButton).not.toBeVisible({
|
|
236
|
-
timeout: 30000,
|
|
237
|
-
});
|
|
238
|
-
}
|
|
239
|
-
catch (error) {
|
|
240
|
-
console.error(`Error during ${text} deletion: `, error);
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
async clickCreateClientButton() {
|
|
244
|
-
await (0, clickLocatorWithRetry_1.clickLocatorWithRetry)(this.page, this.createFirstClientButton.or(this.createClientButton));
|
|
245
|
-
}
|
|
246
|
-
async clickCreateFirstClientButton() {
|
|
247
|
-
const maxRetries = 3;
|
|
248
|
-
for (let retries = 0; retries < maxRetries; retries++) {
|
|
249
|
-
try {
|
|
250
|
-
if (retries === 0) {
|
|
251
|
-
await this.createFirstClientButton.click({ timeout: 60000 });
|
|
252
|
-
}
|
|
253
|
-
else {
|
|
254
|
-
await this.page
|
|
255
|
-
.getByRole('banner')
|
|
256
|
-
.getByRole('link', { name: 'Clusters' })
|
|
257
|
-
.click({ timeout: 60000 });
|
|
258
|
-
await await this.createFirstClientButton.click({ timeout: 60000 });
|
|
259
|
-
}
|
|
260
|
-
return;
|
|
261
|
-
}
|
|
262
|
-
catch (error) {
|
|
263
|
-
console.error(`Click attempt ${retries + 1} failed: ${error}`);
|
|
264
|
-
await new Promise((resolve) => setTimeout(resolve, 10000));
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
throw new Error(`Failed to click the button after ${maxRetries} attempts.`);
|
|
268
|
-
}
|
|
269
|
-
async reload() {
|
|
270
|
-
await this.page.reload();
|
|
271
|
-
}
|
|
272
|
-
async clickClientNameTextbox() {
|
|
273
|
-
await this.clientNameTextbox.click({ timeout: 60000 });
|
|
274
|
-
}
|
|
275
|
-
async fillClientNameTextbox(name) {
|
|
276
|
-
await this.clientNameTextbox.fill(name, { timeout: 60000 });
|
|
277
|
-
}
|
|
278
|
-
async clickTasklistCheckbox() {
|
|
279
|
-
await this.tasklistCheckbox.click({ timeout: 60000 });
|
|
280
|
-
}
|
|
281
|
-
async clickOperateCheckbox() {
|
|
282
|
-
await this.operateCheckbox.click({ timeout: 60000 });
|
|
283
|
-
}
|
|
284
|
-
async clickOptimizeCheckbox() {
|
|
285
|
-
await this.optimizeCheckbox.click({ timeout: 60000 });
|
|
286
|
-
}
|
|
287
|
-
async clickSecretsCheckbox() {
|
|
288
|
-
if (!(await this.secretsCheckbox.isChecked())) {
|
|
289
|
-
await this.secretsCheckbox.click();
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
async clickCreateButton() {
|
|
293
|
-
await this.createButton.click({ timeout: 60000 });
|
|
294
|
-
}
|
|
295
|
-
async clickCloseModalButton() {
|
|
296
|
-
await this.closeModalButton.click({ timeout: 60000 });
|
|
297
|
-
}
|
|
298
|
-
async clickSettingsTab() {
|
|
299
|
-
await this.settingsTab.click({ timeout: 120000 });
|
|
300
|
-
try {
|
|
301
|
-
await (0, test_1.expect)(this.page.getByRole('heading', { name: 'cluster settings' })).toBeVisible({
|
|
302
|
-
timeout: 120000,
|
|
303
|
-
});
|
|
304
|
-
}
|
|
305
|
-
catch (error) {
|
|
306
|
-
await this.settingsTab.click({ timeout: 120000 });
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
async createAPIClient(name) {
|
|
310
|
-
await this.clickCreateClientButton();
|
|
311
|
-
await (0, test_1.expect)(this.createClientCredentialsDialog).toBeVisible({
|
|
312
|
-
timeout: 60000,
|
|
313
|
-
});
|
|
314
|
-
await this.clickClientNameTextbox();
|
|
315
|
-
await this.fillClientNameTextbox(name);
|
|
316
|
-
await this.clickTasklistCheckbox();
|
|
317
|
-
await this.clickOperateCheckbox();
|
|
318
|
-
await this.clickOptimizeCheckbox();
|
|
319
|
-
await this.clickSecretsCheckbox();
|
|
320
|
-
await this.clickCreateButton();
|
|
321
|
-
await (0, test_1.expect)(this.clientCredentialsDialog).toBeVisible({
|
|
322
|
-
timeout: 20000,
|
|
323
|
-
});
|
|
324
|
-
await (0, test_1.expect)(this.clientCredentialsDialog
|
|
325
|
-
.getByText('The Client Secret will not be shown again.')
|
|
326
|
-
.first()).toBeVisible({
|
|
327
|
-
timeout: 60000,
|
|
328
|
-
});
|
|
329
|
-
}
|
|
330
|
-
async searchAndClickClientCredentialsLink(name) {
|
|
331
|
-
await (0, test_1.expect)(this.clientsList.first()).toBeVisible({ timeout: 60000 });
|
|
332
|
-
const clientLink = this.clientCredentialsLink(name);
|
|
333
|
-
await (0, test_1.expect)(clientLink).toBeVisible({ timeout: 30000 });
|
|
334
|
-
await clientLink.click();
|
|
335
|
-
const clientCredentialsDetailsPage = new ClientCredentialsDetailsPage_1.ClientCredentialsDetailsPage(this.page);
|
|
336
|
-
await clientCredentialsDetailsPage.isOpen(name);
|
|
337
|
-
return clientCredentialsDetailsPage;
|
|
338
|
-
}
|
|
339
|
-
async enableRBA() {
|
|
340
|
-
await (0, test_1.expect)(this.rbaHeading).toBeVisible({ timeout: 60000 });
|
|
341
|
-
// Locate all elements with class .cds--toggle__text
|
|
342
|
-
const toggleTextElements = await this.page.$$('.cds--toggle__text');
|
|
343
|
-
// Check if toggleTextElements has at least 2 elements
|
|
344
|
-
if (toggleTextElements.length >= 2) {
|
|
345
|
-
// Get the text content of the second toggle text element
|
|
346
|
-
const toggleText = await toggleTextElements[1].textContent();
|
|
347
|
-
// Check if the text content is 'Disabled'
|
|
348
|
-
if (toggleText === 'Disabled') {
|
|
349
|
-
// Locate all elements with class .cds--toggle__switch
|
|
350
|
-
const toggleSwitchElements = await this.page.$$('.cds--toggle__switch');
|
|
351
|
-
// Check if toggleSwitchElements has at least 2 elements
|
|
352
|
-
if (toggleSwitchElements.length >= 2) {
|
|
353
|
-
// Click the second toggle switch element
|
|
354
|
-
await toggleSwitchElements[1].click();
|
|
355
|
-
console.log('Second toggle switch clicked.');
|
|
356
|
-
await (0, test_1.expect)(this.enableRBADialog).toBeVisible({ timeout: 60000 });
|
|
357
|
-
await this.rbaEnableButton.click({ timeout: 60000 });
|
|
358
|
-
await (0, test_1.expect)(this.page.getByText('Enabling...')).not.toBeVisible({
|
|
359
|
-
timeout: 60000,
|
|
360
|
-
});
|
|
361
|
-
}
|
|
362
|
-
else {
|
|
363
|
-
console.log('Second toggle switch not found or less than 2.');
|
|
364
|
-
}
|
|
365
|
-
}
|
|
366
|
-
else {
|
|
367
|
-
console.log("Second toggle text does not contain 'Disabled'.");
|
|
368
|
-
}
|
|
369
|
-
}
|
|
370
|
-
else {
|
|
371
|
-
console.log('Toggle text elements not found or less than 2.');
|
|
372
|
-
}
|
|
373
|
-
}
|
|
374
|
-
async disableRBA() {
|
|
375
|
-
await (0, test_1.expect)(this.rbaHeading).toBeVisible({ timeout: 60000 });
|
|
376
|
-
// Locate all elements with class .cds--toggle__text
|
|
377
|
-
const toggleTextElements = await this.page.$$('.cds--toggle__text');
|
|
378
|
-
// Check if toggleTextElements has at least 2 elements
|
|
379
|
-
if (toggleTextElements.length >= 2) {
|
|
380
|
-
// Get the text content of the second toggle text element
|
|
381
|
-
const toggleText = await toggleTextElements[1].textContent();
|
|
382
|
-
// Check if the text content is 'Enabled'
|
|
383
|
-
if (toggleText === 'Enabled') {
|
|
384
|
-
// Locate all elements with class .cds--toggle__switch
|
|
385
|
-
const toggleSwitchElements = await this.page.$$('.cds--toggle__switch');
|
|
386
|
-
// Check if toggleSwitchElements has at least 2 elements
|
|
387
|
-
if (toggleSwitchElements.length >= 2) {
|
|
388
|
-
// Click the second toggle switch element
|
|
389
|
-
await toggleSwitchElements[1].click();
|
|
390
|
-
console.log('Second toggle switch clicked.');
|
|
391
|
-
await (0, test_1.expect)(this.disableRBADialog).toBeVisible({ timeout: 60000 });
|
|
392
|
-
await this.rbaDisableButton.click({ timeout: 60000 });
|
|
393
|
-
await (0, test_1.expect)(this.page.getByText('Disabling...')).not.toBeVisible({
|
|
394
|
-
timeout: 60000,
|
|
395
|
-
});
|
|
396
|
-
}
|
|
397
|
-
else {
|
|
398
|
-
console.log('Second toggle switch not found or less than 2.');
|
|
399
|
-
}
|
|
400
|
-
}
|
|
401
|
-
else {
|
|
402
|
-
console.log("Second toggle text does not contain 'Enabled'.");
|
|
403
|
-
}
|
|
404
|
-
}
|
|
405
|
-
else {
|
|
406
|
-
console.log('Toggle text elements not found or less than 2.');
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
async assertComponentsHealth(components = ['Zeebe', 'Tasklist', 'Operate', 'Optimize']) {
|
|
410
|
-
for (const component of components) {
|
|
411
|
-
await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(this.page, this.page.getByText(`${component}Healthy`, { exact: true }), {
|
|
412
|
-
visibilityTimeout: 60000,
|
|
413
|
-
totalTimeout: 400000,
|
|
414
|
-
maxRetries: 7,
|
|
415
|
-
preAction: async () => {
|
|
416
|
-
await this.page.reload();
|
|
417
|
-
},
|
|
418
|
-
});
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
async userTaskEnabledAssertion() {
|
|
422
|
-
try {
|
|
423
|
-
await (0, test_1.expect)(await this.userTaskRestriction.getAttribute('aria-checked')).toBe('true');
|
|
424
|
-
}
|
|
425
|
-
catch (error) {
|
|
426
|
-
await this.page.reload();
|
|
427
|
-
await (0, test_1.expect)(this.userTaskRestriction.getAttribute('aria-checked')).toBe('true');
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
async clickReviewUpdateButton() {
|
|
431
|
-
await this.reviewUpdateButton.click({ timeout: 60000 });
|
|
432
|
-
}
|
|
433
|
-
async clickUpdateButton() {
|
|
434
|
-
await this.updateButton.click({ timeout: 60000 });
|
|
435
|
-
}
|
|
436
|
-
async performClusterUpdate() {
|
|
437
|
-
await this.clickReviewUpdateButton();
|
|
438
|
-
await this.page.waitForTimeout(1000);
|
|
439
|
-
await (0, test_1.expect)(this.updateAvailableDialog).toBeVisible({ timeout: 60000 });
|
|
440
|
-
await this.clickUpdateButton();
|
|
441
|
-
}
|
|
442
|
-
}
|
|
443
|
-
exports.ClusterDetailsPage = ClusterDetailsPage;
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
declare class ClusterPage {
|
|
3
|
-
private defaultClusterType;
|
|
4
|
-
private page;
|
|
5
|
-
readonly createNewClusterButton: Locator;
|
|
6
|
-
readonly clusterNameInput: Locator;
|
|
7
|
-
readonly createClusterButton: Locator;
|
|
8
|
-
readonly clusterCreatingStatusText: Locator;
|
|
9
|
-
readonly clusterHealthyStatusText: Locator;
|
|
10
|
-
readonly clusterHealthyIndicatorSelector: string;
|
|
11
|
-
readonly clusterGenerationCompleteMessage: Locator;
|
|
12
|
-
readonly clustersBreadcrumb: Locator;
|
|
13
|
-
readonly deleteClusterButton: Locator;
|
|
14
|
-
readonly confirmDeleteInput: Locator;
|
|
15
|
-
readonly dangerDeleteButton: Locator;
|
|
16
|
-
readonly connectorSecretsTab: Locator;
|
|
17
|
-
readonly createAClusterButton: Locator;
|
|
18
|
-
readonly clusterVersionOption: Locator;
|
|
19
|
-
readonly alphaTab: Locator;
|
|
20
|
-
readonly devTab: Locator;
|
|
21
|
-
readonly stableTab: Locator;
|
|
22
|
-
readonly qaGenerationsTab: Locator;
|
|
23
|
-
readonly gcpRegion: Locator;
|
|
24
|
-
readonly belgiumRegion: Locator;
|
|
25
|
-
readonly finlandRegion: Locator;
|
|
26
|
-
readonly londonRegion: Locator;
|
|
27
|
-
readonly g3DevClusterType: Locator;
|
|
28
|
-
readonly clustersList: Locator;
|
|
29
|
-
readonly cluster: (clusterName: string) => Locator;
|
|
30
|
-
readonly clusterHealthiness: (clusterName: string) => Locator;
|
|
31
|
-
readonly clusterLink: (clusterName: string) => Locator;
|
|
32
|
-
readonly clusterDeleteButton: (clusterName: string) => Locator;
|
|
33
|
-
readonly dialog: Locator;
|
|
34
|
-
constructor(page: Page);
|
|
35
|
-
clickClusterBanner(): Promise<void>;
|
|
36
|
-
deleteCluster(name: string): Promise<void>;
|
|
37
|
-
createClusterIfNotExists(clusterName: string, region?: string): Promise<void>;
|
|
38
|
-
assertClusterHealthyStatusWithRetry(name: string, visibilityTimeout?: number, totalTimeout?: number): Promise<void>;
|
|
39
|
-
clickCreateNewClusterButton(): Promise<void>;
|
|
40
|
-
clickClusterNameInput(): Promise<void>;
|
|
41
|
-
fillClusterNameInput(name: string): Promise<void>;
|
|
42
|
-
clickCreateClusterButton(): Promise<void>;
|
|
43
|
-
clickClustersBreadcrumb(clusterName: string): Promise<void>;
|
|
44
|
-
clickConnectorSecretesTab(clusterName: string): Promise<void>;
|
|
45
|
-
clickClusterLink(name: string): Promise<void>;
|
|
46
|
-
clickClusterTab(): Promise<void>;
|
|
47
|
-
createCluster(name: string, region?: string): Promise<void>;
|
|
48
|
-
selectSubRegion(region: string): Promise<void>;
|
|
49
|
-
private logClusterCreationInfo;
|
|
50
|
-
private extractClusterIdFromUrl;
|
|
51
|
-
clickCloudProvider(region?: string): Promise<void>;
|
|
52
|
-
clickClusterType(): Promise<void>;
|
|
53
|
-
clickClusterOption(): Promise<void>;
|
|
54
|
-
clickAlphaTab(): Promise<void>;
|
|
55
|
-
clickDevTab(): Promise<void>;
|
|
56
|
-
clickStableTab(): Promise<void>;
|
|
57
|
-
clickQAGenerationsTab(): Promise<void>;
|
|
58
|
-
}
|
|
59
|
-
export { ClusterPage };
|