@camunda/e2e-test-suite 0.0.1 → 0.0.2
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/README.md +0 -2
- package/dist/pages/8.5/ModelerCreatePage.d.ts +1 -1
- package/dist/pages/8.5/ModelerCreatePage.js +15 -15
- package/dist/pages/8.6/ModelerCreatePage.d.ts +2 -1
- package/dist/pages/8.6/ModelerCreatePage.js +30 -16
- package/dist/pages/8.6/UtilitiesPage.d.ts +1 -3
- package/dist/pages/8.6/UtilitiesPage.js +5 -21
- package/dist/pages/8.7/ConsoleOrganizationPage.js +2 -1
- package/dist/pages/8.7/IdpCreatePage.d.ts +1 -1
- package/dist/pages/8.7/IdpCreatePage.js +16 -4
- package/dist/pages/8.7/ModelerCreatePage.d.ts +5 -5
- package/dist/pages/8.7/ModelerCreatePage.js +27 -30
- package/dist/pages/8.7/ModelerHomePage.d.ts +2 -0
- package/dist/pages/8.7/ModelerHomePage.js +26 -2
- package/dist/pages/8.8/ConsoleOrganizationPage.d.ts +9 -5
- package/dist/pages/8.8/ConsoleOrganizationPage.js +59 -16
- package/dist/pages/8.8/ModelerCreatePage.d.ts +5 -3
- package/dist/pages/8.8/ModelerCreatePage.js +35 -46
- package/dist/pages/8.8/OperateProcessesPage.js +1 -1
- package/dist/pages/8.8/UtilitiesPage.js +1 -1
- package/dist/pages/SM-8.5/ModelerCreatePage.js +1 -0
- package/dist/pages/SM-8.7/ClusterPage.js +1 -1
- package/dist/pages/SM-8.7/ModelerHomePage.js +1 -1
- package/dist/pages/SM-8.7/NavigationPage.js +1 -1
- package/dist/tests/8.6/connectors-user-flows.spec.js +3 -3
- package/dist/tests/8.6/web-modeler-user-flows.spec.js +3 -3
- package/dist/tests/8.7/hto-user-flows.spec.js +0 -3
- package/dist/tests/8.7/idp-user-flows.spec.js +1 -0
- package/dist/tests/8.7/web-modeler-user-flows.spec.js +2 -2
- package/dist/tests/8.8/aws-cluster-user-flows.spec.js +1 -1
- package/dist/tests/8.8/connectors-user-flows.spec.js +0 -2
- package/dist/tests/8.8/console-user-flows.spec.js +1 -3
- package/dist/tests/8.8/hto-user-flows.spec.js +4 -5
- package/dist/tests/8.8/rba-enabled-user-flows.spec.js +5 -3
- package/dist/tests/8.8/web-modeler-user-flows.spec.js +29 -39
- package/dist/tests/SM-8.5/mt-enabled-user-flows.spec.js +18 -0
- package/dist/tests/SM-8.7/mt-enabled-user-flows.spec.js +10 -3
- package/dist/tests/SM-8.8/optimize-user-flows.spec.js +7 -7
- package/package.json +1 -1
- package/dist/fixtures/8.4.d.ts +0 -57
- package/dist/fixtures/8.4.js +0 -150
- package/dist/fixtures/SM-8.4.d.ts +0 -55
- package/dist/fixtures/SM-8.4.js +0 -132
- package/dist/pages/8.4/AppsPage.d.ts +0 -33
- package/dist/pages/8.4/AppsPage.js +0 -333
- package/dist/pages/8.4/ClusterDetailsPage.d.ts +0 -59
- package/dist/pages/8.4/ClusterDetailsPage.js +0 -319
- package/dist/pages/8.4/ClusterPage.d.ts +0 -50
- package/dist/pages/8.4/ClusterPage.js +0 -334
- package/dist/pages/8.4/ClusterSecretsPage.d.ts +0 -21
- package/dist/pages/8.4/ClusterSecretsPage.js +0 -105
- package/dist/pages/8.4/ConnectorMarketplacePage.d.ts +0 -18
- package/dist/pages/8.4/ConnectorMarketplacePage.js +0 -59
- package/dist/pages/8.4/ConnectorSettingsPage.d.ts +0 -28
- package/dist/pages/8.4/ConnectorSettingsPage.js +0 -72
- package/dist/pages/8.4/ConnectorTemplatePage.d.ts +0 -11
- package/dist/pages/8.4/ConnectorTemplatePage.js +0 -34
- package/dist/pages/8.4/ConsoleOrganizationPage.d.ts +0 -69
- package/dist/pages/8.4/ConsoleOrganizationPage.js +0 -366
- package/dist/pages/8.4/FormJsPage.d.ts +0 -14
- package/dist/pages/8.4/FormJsPage.js +0 -44
- package/dist/pages/8.4/HomePage.d.ts +0 -27
- package/dist/pages/8.4/HomePage.js +0 -87
- package/dist/pages/8.4/LoginPage.d.ts +0 -30
- package/dist/pages/8.4/LoginPage.js +0 -83
- package/dist/pages/8.4/ModelerCreatePage.d.ts +0 -145
- package/dist/pages/8.4/ModelerCreatePage.js +0 -660
- package/dist/pages/8.4/ModelerHomePage.d.ts +0 -39
- package/dist/pages/8.4/ModelerHomePage.js +0 -153
- package/dist/pages/8.4/ModelerUserInvitePage.d.ts +0 -27
- package/dist/pages/8.4/ModelerUserInvitePage.js +0 -83
- package/dist/pages/8.4/OperateHomePage.d.ts +0 -21
- package/dist/pages/8.4/OperateHomePage.js +0 -53
- package/dist/pages/8.4/OperateProcessInstancePage.d.ts +0 -14
- package/dist/pages/8.4/OperateProcessInstancePage.js +0 -35
- package/dist/pages/8.4/OperateProcessesPage.d.ts +0 -22
- package/dist/pages/8.4/OperateProcessesPage.js +0 -80
- package/dist/pages/8.4/OptimizeCollectionsPage.d.ts +0 -15
- package/dist/pages/8.4/OptimizeCollectionsPage.js +0 -44
- package/dist/pages/8.4/OptimizeDashboardPage.d.ts +0 -8
- package/dist/pages/8.4/OptimizeDashboardPage.js +0 -48
- package/dist/pages/8.4/OptimizeHomePage.d.ts +0 -12
- package/dist/pages/8.4/OptimizeHomePage.js +0 -32
- package/dist/pages/8.4/OptimizeReportPage.d.ts +0 -49
- package/dist/pages/8.4/OptimizeReportPage.js +0 -160
- package/dist/pages/8.4/SettingsPage.d.ts +0 -10
- package/dist/pages/8.4/SettingsPage.js +0 -41
- package/dist/pages/8.4/SignUpPage.d.ts +0 -44
- package/dist/pages/8.4/SignUpPage.js +0 -137
- package/dist/pages/8.4/TaskDetailsPage.d.ts +0 -64
- package/dist/pages/8.4/TaskDetailsPage.js +0 -198
- package/dist/pages/8.4/TaskPanelPage.d.ts +0 -19
- package/dist/pages/8.4/TaskPanelPage.js +0 -61
- package/dist/pages/8.4/TaskProcessesPage.d.ts +0 -11
- package/dist/pages/8.4/TaskProcessesPage.js +0 -31
- package/dist/pages/8.4/UtilitiesPage.d.ts +0 -33
- package/dist/pages/8.4/UtilitiesPage.js +0 -312
- package/dist/pages/SM-8.4/ConnectorMarketplacePage.d.ts +0 -16
- package/dist/pages/SM-8.4/ConnectorMarketplacePage.js +0 -48
- package/dist/pages/SM-8.4/ConnectorSettingsPage.d.ts +0 -28
- package/dist/pages/SM-8.4/ConnectorSettingsPage.js +0 -82
- package/dist/pages/SM-8.4/ConsoleHomePage.d.ts +0 -7
- package/dist/pages/SM-8.4/ConsoleHomePage.js +0 -14
- package/dist/pages/SM-8.4/ConsoleOrganizationPage.d.ts +0 -22
- package/dist/pages/SM-8.4/ConsoleOrganizationPage.js +0 -68
- package/dist/pages/SM-8.4/FormJsPage.d.ts +0 -13
- package/dist/pages/SM-8.4/FormJsPage.js +0 -30
- package/dist/pages/SM-8.4/HomePage.d.ts +0 -20
- package/dist/pages/SM-8.4/HomePage.js +0 -49
- package/dist/pages/SM-8.4/IdentityPage.d.ts +0 -56
- package/dist/pages/SM-8.4/IdentityPage.js +0 -219
- package/dist/pages/SM-8.4/IdentityTenantPage.d.ts +0 -46
- package/dist/pages/SM-8.4/IdentityTenantPage.js +0 -173
- package/dist/pages/SM-8.4/IdentityUsersPage.d.ts +0 -90
- package/dist/pages/SM-8.4/IdentityUsersPage.js +0 -505
- package/dist/pages/SM-8.4/LoginPage.d.ts +0 -16
- package/dist/pages/SM-8.4/LoginPage.js +0 -50
- package/dist/pages/SM-8.4/ModelerCreatePage.d.ts +0 -142
- package/dist/pages/SM-8.4/ModelerCreatePage.js +0 -648
- package/dist/pages/SM-8.4/ModelerHomePage.d.ts +0 -35
- package/dist/pages/SM-8.4/ModelerHomePage.js +0 -139
- package/dist/pages/SM-8.4/NavigationPage.d.ts +0 -26
- package/dist/pages/SM-8.4/NavigationPage.js +0 -97
- package/dist/pages/SM-8.4/OperateHomePage.d.ts +0 -21
- package/dist/pages/SM-8.4/OperateHomePage.js +0 -63
- package/dist/pages/SM-8.4/OperateProcessInstancePage.d.ts +0 -23
- package/dist/pages/SM-8.4/OperateProcessInstancePage.js +0 -105
- package/dist/pages/SM-8.4/OperateProcessesPage.d.ts +0 -22
- package/dist/pages/SM-8.4/OperateProcessesPage.js +0 -90
- package/dist/pages/SM-8.4/OptimizeCollectionsPage.d.ts +0 -15
- package/dist/pages/SM-8.4/OptimizeCollectionsPage.js +0 -50
- package/dist/pages/SM-8.4/OptimizeDashboardPage.d.ts +0 -15
- package/dist/pages/SM-8.4/OptimizeDashboardPage.js +0 -59
- package/dist/pages/SM-8.4/OptimizeHomePage.d.ts +0 -17
- package/dist/pages/SM-8.4/OptimizeHomePage.js +0 -56
- package/dist/pages/SM-8.4/OptimizeReportPage.d.ts +0 -48
- package/dist/pages/SM-8.4/OptimizeReportPage.js +0 -157
- package/dist/pages/SM-8.4/SettingsPage.d.ts +0 -10
- package/dist/pages/SM-8.4/SettingsPage.js +0 -20
- package/dist/pages/SM-8.4/TaskDetailsPage.d.ts +0 -61
- package/dist/pages/SM-8.4/TaskDetailsPage.js +0 -175
- package/dist/pages/SM-8.4/TaskPanelPage.d.ts +0 -22
- package/dist/pages/SM-8.4/TaskPanelPage.js +0 -77
- package/dist/pages/SM-8.4/TaskProcessesPage.d.ts +0 -11
- package/dist/pages/SM-8.4/TaskProcessesPage.js +0 -31
- package/dist/pages/SM-8.4/UtilitiesPage.d.ts +0 -19
- package/dist/pages/SM-8.4/UtilitiesPage.js +0 -175
- package/dist/tests/8.4/connectors-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.4/connectors-user-flows.spec.js +0 -407
- package/dist/tests/8.4/console-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.4/console-user-flows.spec.js +0 -192
- package/dist/tests/8.4/hto-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.4/hto-user-flows.spec.js +0 -186
- package/dist/tests/8.4/login.spec.d.ts +0 -1
- package/dist/tests/8.4/login.spec.js +0 -27
- package/dist/tests/8.4/navigation.spec.d.ts +0 -1
- package/dist/tests/8.4/navigation.spec.js +0 -62
- package/dist/tests/8.4/optimize-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.4/optimize-user-flows.spec.js +0 -266
- package/dist/tests/8.4/rba-enabled-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.4/rba-enabled-user-flows.spec.js +0 -306
- package/dist/tests/8.4/smoke-tests.spec.d.ts +0 -1
- package/dist/tests/8.4/smoke-tests.spec.js +0 -174
- package/dist/tests/8.4/test-setup.spec.d.ts +0 -1
- package/dist/tests/8.4/test-setup.spec.js +0 -61
- package/dist/tests/8.4/web-modeler-user-flows.spec.d.ts +0 -1
- package/dist/tests/8.4/web-modeler-user-flows.spec.js +0 -611
- package/dist/tests/SM-8.4/connectors-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/connectors-user-flows.spec.js +0 -224
- package/dist/tests/SM-8.4/hto-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/hto-user-flows.spec.js +0 -308
- package/dist/tests/SM-8.4/mt-enabled-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/mt-enabled-user-flows.spec.js +0 -537
- package/dist/tests/SM-8.4/optimize-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/optimize-user-flows.spec.js +0 -182
- package/dist/tests/SM-8.4/rba-enabled-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/rba-enabled-user-flows.spec.js +0 -250
- package/dist/tests/SM-8.4/smoke-tests.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/smoke-tests.spec.js +0 -148
- package/dist/tests/SM-8.4/test-setup.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/test-setup.spec.js +0 -105
- package/dist/tests/SM-8.4/web-modeler-user-flows.spec.d.ts +0 -1
- package/dist/tests/SM-8.4/web-modeler-user-flows.spec.js +0 -125
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
declare class ConnectorMarketplacePage {
|
|
3
|
-
private page;
|
|
4
|
-
readonly searchForConnectorTextbox: Locator;
|
|
5
|
-
readonly downloadToProjectButton: Locator;
|
|
6
|
-
readonly snackbar: Locator;
|
|
7
|
-
readonly closeButton: Locator;
|
|
8
|
-
constructor(page: Page);
|
|
9
|
-
clickSearchForConnectorTextbox(): Promise<void>;
|
|
10
|
-
fillSearchForConnectorTextbox(connectorName: string): Promise<void>;
|
|
11
|
-
clickDownloadToProjectButton(): Promise<void>;
|
|
12
|
-
clickSnackbar(): Promise<void>;
|
|
13
|
-
clickCloseButton(): Promise<void>;
|
|
14
|
-
downloadConnectorToProject(): Promise<void>;
|
|
15
|
-
}
|
|
16
|
-
export { ConnectorMarketplacePage };
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConnectorMarketplacePage = void 0;
|
|
4
|
-
const test_1 = require("@playwright/test");
|
|
5
|
-
class ConnectorMarketplacePage {
|
|
6
|
-
page;
|
|
7
|
-
searchForConnectorTextbox;
|
|
8
|
-
downloadToProjectButton;
|
|
9
|
-
snackbar;
|
|
10
|
-
closeButton;
|
|
11
|
-
constructor(page) {
|
|
12
|
-
this.page = page;
|
|
13
|
-
this.searchForConnectorTextbox = page.getByPlaceholder('Search for a connector');
|
|
14
|
-
this.downloadToProjectButton = page
|
|
15
|
-
.getByRole('button', { name: 'Download to project' })
|
|
16
|
-
.first();
|
|
17
|
-
this.snackbar = page.locator('[data-test="snackbar"]');
|
|
18
|
-
this.closeButton = page.getByRole('button', { name: 'Close' });
|
|
19
|
-
}
|
|
20
|
-
async clickSearchForConnectorTextbox() {
|
|
21
|
-
await this.searchForConnectorTextbox.click({ timeout: 60000 });
|
|
22
|
-
}
|
|
23
|
-
async fillSearchForConnectorTextbox(connectorName) {
|
|
24
|
-
await this.searchForConnectorTextbox.fill(connectorName, { timeout: 60000 });
|
|
25
|
-
}
|
|
26
|
-
async clickDownloadToProjectButton() {
|
|
27
|
-
await this.downloadToProjectButton.click({ timeout: 60000 });
|
|
28
|
-
}
|
|
29
|
-
async clickSnackbar() {
|
|
30
|
-
await this.snackbar.click({ timeout: 120000 });
|
|
31
|
-
}
|
|
32
|
-
async clickCloseButton() {
|
|
33
|
-
await this.closeButton.click({ timeout: 60000 });
|
|
34
|
-
}
|
|
35
|
-
async downloadConnectorToProject() {
|
|
36
|
-
try {
|
|
37
|
-
await this.clickDownloadToProjectButton();
|
|
38
|
-
await (0, test_1.expect)(this.snackbar).toBeVisible({
|
|
39
|
-
timeout: 30000,
|
|
40
|
-
});
|
|
41
|
-
await this.clickSnackbar();
|
|
42
|
-
}
|
|
43
|
-
catch {
|
|
44
|
-
await this.clickCloseButton();
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
exports.ConnectorMarketplacePage = ConnectorMarketplacePage;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
declare class ConnectorSettingsPage {
|
|
3
|
-
private page;
|
|
4
|
-
readonly urlInput: Locator;
|
|
5
|
-
readonly resultExpressionInput: Locator;
|
|
6
|
-
readonly authenticationTypeDropdown: Locator;
|
|
7
|
-
readonly usernameInput: Locator;
|
|
8
|
-
readonly passwordInput: Locator;
|
|
9
|
-
readonly methodTypeDropdown: Locator;
|
|
10
|
-
readonly resultVariableInput: Locator;
|
|
11
|
-
readonly bearerTokenInput: Locator;
|
|
12
|
-
constructor(page: Page);
|
|
13
|
-
clickUrlInput(): Promise<void>;
|
|
14
|
-
fillUrlInput(url: string): Promise<void>;
|
|
15
|
-
clickResultExpressionInput(): Promise<void>;
|
|
16
|
-
fillResultExpressionInput(resultExpression: string): Promise<void>;
|
|
17
|
-
selectAuthenticationType(authentication: string): Promise<void>;
|
|
18
|
-
clickUsernameInput(): Promise<void>;
|
|
19
|
-
fillUsernameInput(username: string): Promise<void>;
|
|
20
|
-
clickPasswordInput(): Promise<void>;
|
|
21
|
-
fillPasswordInput(password: string): Promise<void>;
|
|
22
|
-
selectMethodType(method: string): Promise<void>;
|
|
23
|
-
clickResultVariableInput(): Promise<void>;
|
|
24
|
-
fillResultVariableInput(variable: string): Promise<void>;
|
|
25
|
-
clickBearerTokenInput(): Promise<void>;
|
|
26
|
-
fillBearerTokenInput(token: string): Promise<void>;
|
|
27
|
-
}
|
|
28
|
-
export { ConnectorSettingsPage };
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConnectorSettingsPage = void 0;
|
|
4
|
-
const ModelerCreatePage_1 = require("./ModelerCreatePage");
|
|
5
|
-
class ConnectorSettingsPage {
|
|
6
|
-
page;
|
|
7
|
-
urlInput;
|
|
8
|
-
resultExpressionInput;
|
|
9
|
-
authenticationTypeDropdown;
|
|
10
|
-
usernameInput;
|
|
11
|
-
passwordInput;
|
|
12
|
-
methodTypeDropdown;
|
|
13
|
-
resultVariableInput;
|
|
14
|
-
bearerTokenInput;
|
|
15
|
-
constructor(page) {
|
|
16
|
-
this.page = page;
|
|
17
|
-
this.urlInput = page.getByLabel('URL');
|
|
18
|
-
this.resultExpressionInput = page
|
|
19
|
-
.locator('div')
|
|
20
|
-
.filter({ hasText: /^Result expression=Opened in editor$/ })
|
|
21
|
-
.getByRole('textbox');
|
|
22
|
-
this.authenticationTypeDropdown = page.getByLabel('Type');
|
|
23
|
-
this.usernameInput = page.getByLabel('Username');
|
|
24
|
-
this.passwordInput = page.getByLabel('Password');
|
|
25
|
-
this.methodTypeDropdown = page.getByLabel('Method');
|
|
26
|
-
this.resultVariableInput = page.getByLabel('Result variable');
|
|
27
|
-
this.bearerTokenInput = page.getByLabel('Bearer token');
|
|
28
|
-
}
|
|
29
|
-
async clickUrlInput() {
|
|
30
|
-
try {
|
|
31
|
-
await this.urlInput.click({ timeout: 60000 });
|
|
32
|
-
}
|
|
33
|
-
catch {
|
|
34
|
-
const modelerCreatePage = new ModelerCreatePage_1.ModelerCreatePage(this.page);
|
|
35
|
-
await modelerCreatePage.clickStartEventElement();
|
|
36
|
-
await modelerCreatePage.clickAppendTaskButton();
|
|
37
|
-
await modelerCreatePage.clickChangeTypeButton();
|
|
38
|
-
await modelerCreatePage.clickRestConnectorOption();
|
|
39
|
-
await this.urlInput.click({ timeout: 60000 });
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
async fillUrlInput(url) {
|
|
43
|
-
await this.urlInput.fill(url);
|
|
44
|
-
}
|
|
45
|
-
async clickResultExpressionInput() {
|
|
46
|
-
await this.resultExpressionInput.click();
|
|
47
|
-
}
|
|
48
|
-
async fillResultExpressionInput(resultExpression) {
|
|
49
|
-
await this.resultExpressionInput.fill(resultExpression);
|
|
50
|
-
}
|
|
51
|
-
async selectAuthenticationType(authentication) {
|
|
52
|
-
await this.authenticationTypeDropdown.selectOption(authentication);
|
|
53
|
-
}
|
|
54
|
-
async clickUsernameInput() {
|
|
55
|
-
await this.usernameInput.click({ timeout: 30000 });
|
|
56
|
-
}
|
|
57
|
-
async fillUsernameInput(username) {
|
|
58
|
-
await this.usernameInput.fill(username, { timeout: 30000 });
|
|
59
|
-
}
|
|
60
|
-
async clickPasswordInput() {
|
|
61
|
-
await this.passwordInput.click();
|
|
62
|
-
}
|
|
63
|
-
async fillPasswordInput(password) {
|
|
64
|
-
await this.passwordInput.fill(password);
|
|
65
|
-
}
|
|
66
|
-
async selectMethodType(method) {
|
|
67
|
-
await this.methodTypeDropdown.selectOption(method, { timeout: 60000 });
|
|
68
|
-
}
|
|
69
|
-
async clickResultVariableInput() {
|
|
70
|
-
await this.resultVariableInput.click();
|
|
71
|
-
}
|
|
72
|
-
async fillResultVariableInput(variable) {
|
|
73
|
-
await this.resultVariableInput.fill(variable);
|
|
74
|
-
}
|
|
75
|
-
async clickBearerTokenInput() {
|
|
76
|
-
await this.bearerTokenInput.click({ timeout: 30000 });
|
|
77
|
-
}
|
|
78
|
-
async fillBearerTokenInput(token) {
|
|
79
|
-
await this.bearerTokenInput.fill(token);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
exports.ConnectorSettingsPage = ConnectorSettingsPage;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConsoleHomePage = void 0;
|
|
4
|
-
class ConsoleHomePage {
|
|
5
|
-
page;
|
|
6
|
-
consoleBanner;
|
|
7
|
-
constructor(page) {
|
|
8
|
-
this.page = page;
|
|
9
|
-
this.consoleBanner = page.getByRole('link', {
|
|
10
|
-
name: 'Camunda logo Console',
|
|
11
|
-
});
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
exports.ConsoleHomePage = ConsoleHomePage;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
declare class ConsoleOrganizationPage {
|
|
3
|
-
private page;
|
|
4
|
-
readonly usersTab: Locator;
|
|
5
|
-
readonly optionsButton: Locator;
|
|
6
|
-
readonly editUserMenuItem: Locator;
|
|
7
|
-
readonly operationsEngineerCheckbox: Locator;
|
|
8
|
-
readonly developerCheckbox: Locator;
|
|
9
|
-
readonly analystCheckbox: Locator;
|
|
10
|
-
readonly confirmButton: Locator;
|
|
11
|
-
constructor(page: Page);
|
|
12
|
-
clickUsersTab(): Promise<void>;
|
|
13
|
-
clickOptionsButton(): Promise<void>;
|
|
14
|
-
clickEditUserMenuItem(): Promise<void>;
|
|
15
|
-
clickOperationsEngineerCheckbox(): Promise<void>;
|
|
16
|
-
checkDeveloperCheckbox(): Promise<void>;
|
|
17
|
-
uncheckDeveloperCheckbox(): Promise<void>;
|
|
18
|
-
checkAnalystCheckbox(): Promise<void>;
|
|
19
|
-
uncheckAnalystCheckbox(): Promise<void>;
|
|
20
|
-
clickConfirmButton(): Promise<void>;
|
|
21
|
-
}
|
|
22
|
-
export { ConsoleOrganizationPage };
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConsoleOrganizationPage = void 0;
|
|
4
|
-
class ConsoleOrganizationPage {
|
|
5
|
-
page;
|
|
6
|
-
usersTab;
|
|
7
|
-
optionsButton;
|
|
8
|
-
editUserMenuItem;
|
|
9
|
-
operationsEngineerCheckbox;
|
|
10
|
-
developerCheckbox;
|
|
11
|
-
analystCheckbox;
|
|
12
|
-
confirmButton;
|
|
13
|
-
constructor(page) {
|
|
14
|
-
this.page = page;
|
|
15
|
-
this.usersTab = page.getByRole('tab', { name: 'Users' });
|
|
16
|
-
this.optionsButton = page.getByRole('button', { name: 'Options' });
|
|
17
|
-
this.editUserMenuItem = page.getByRole('menuitem', { name: 'Edit User' });
|
|
18
|
-
this.operationsEngineerCheckbox = page
|
|
19
|
-
.getByRole('group')
|
|
20
|
-
.locator('label')
|
|
21
|
-
.filter({ hasText: 'Operations Engineer' });
|
|
22
|
-
this.developerCheckbox = page
|
|
23
|
-
.getByRole('group')
|
|
24
|
-
.locator('label')
|
|
25
|
-
.filter({ hasText: 'Developer' });
|
|
26
|
-
this.analystCheckbox = page
|
|
27
|
-
.getByRole('group')
|
|
28
|
-
.locator('label')
|
|
29
|
-
.filter({ hasText: 'Analyst' });
|
|
30
|
-
this.confirmButton = page.getByRole('button', { name: 'Confirm' });
|
|
31
|
-
}
|
|
32
|
-
async clickUsersTab() {
|
|
33
|
-
await this.usersTab.click();
|
|
34
|
-
}
|
|
35
|
-
async clickOptionsButton() {
|
|
36
|
-
await this.optionsButton.click();
|
|
37
|
-
}
|
|
38
|
-
async clickEditUserMenuItem() {
|
|
39
|
-
await this.editUserMenuItem.click();
|
|
40
|
-
}
|
|
41
|
-
async clickOperationsEngineerCheckbox() {
|
|
42
|
-
await this.operationsEngineerCheckbox.click();
|
|
43
|
-
}
|
|
44
|
-
async checkDeveloperCheckbox() {
|
|
45
|
-
if (!(await this.developerCheckbox.isChecked())) {
|
|
46
|
-
await this.developerCheckbox.click();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
async uncheckDeveloperCheckbox() {
|
|
50
|
-
if (await this.developerCheckbox.isChecked()) {
|
|
51
|
-
await this.developerCheckbox.click();
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
async checkAnalystCheckbox() {
|
|
55
|
-
if (!(await this.analystCheckbox.isChecked())) {
|
|
56
|
-
await this.analystCheckbox.click();
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
async uncheckAnalystCheckbox() {
|
|
60
|
-
if (await this.analystCheckbox.isChecked()) {
|
|
61
|
-
await this.analystCheckbox.click();
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
async clickConfirmButton() {
|
|
65
|
-
await this.confirmButton.click();
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
exports.ConsoleOrganizationPage = ConsoleOrganizationPage;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
declare class FormJsPage {
|
|
3
|
-
private page;
|
|
4
|
-
readonly aiFormGeneratorButton: Locator;
|
|
5
|
-
readonly formRequestInput: Locator;
|
|
6
|
-
readonly generateFormButton: Locator;
|
|
7
|
-
constructor(page: Page);
|
|
8
|
-
clickAIFormGeneratorButton(): Promise<void>;
|
|
9
|
-
clickFormRequestInput(): Promise<void>;
|
|
10
|
-
fillFormRequestInput(formRequest: string): Promise<void>;
|
|
11
|
-
clickGenerateFormButton(): Promise<void>;
|
|
12
|
-
}
|
|
13
|
-
export { FormJsPage };
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FormJsPage = void 0;
|
|
4
|
-
class FormJsPage {
|
|
5
|
-
page;
|
|
6
|
-
aiFormGeneratorButton;
|
|
7
|
-
formRequestInput;
|
|
8
|
-
generateFormButton;
|
|
9
|
-
constructor(page) {
|
|
10
|
-
this.page = page;
|
|
11
|
-
this.aiFormGeneratorButton = page.getByRole('button', {
|
|
12
|
-
name: 'AI Form Generator',
|
|
13
|
-
});
|
|
14
|
-
this.formRequestInput = page.getByPlaceholder('A form for an american standard loan request');
|
|
15
|
-
this.generateFormButton = page.getByRole('button', { name: 'Generate form' });
|
|
16
|
-
}
|
|
17
|
-
async clickAIFormGeneratorButton() {
|
|
18
|
-
await this.aiFormGeneratorButton.click();
|
|
19
|
-
}
|
|
20
|
-
async clickFormRequestInput() {
|
|
21
|
-
await this.formRequestInput.click();
|
|
22
|
-
}
|
|
23
|
-
async fillFormRequestInput(formRequest) {
|
|
24
|
-
await this.formRequestInput.fill(formRequest);
|
|
25
|
-
}
|
|
26
|
-
async clickGenerateFormButton() {
|
|
27
|
-
await this.generateFormButton.click();
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
exports.FormJsPage = FormJsPage;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
declare class HomePage {
|
|
3
|
-
private page;
|
|
4
|
-
readonly dashboardTab: Locator;
|
|
5
|
-
readonly clusterTab: Locator;
|
|
6
|
-
readonly organizationTab: Locator;
|
|
7
|
-
readonly organizationViewTitle: Locator;
|
|
8
|
-
readonly welcomeMessage: Locator;
|
|
9
|
-
readonly informationDialog: Locator;
|
|
10
|
-
readonly camundaAppsButton: Locator;
|
|
11
|
-
readonly camundaComponentsButton: Locator;
|
|
12
|
-
constructor(page: Page);
|
|
13
|
-
clickClusters(): Promise<void>;
|
|
14
|
-
clickDashboard(): Promise<void>;
|
|
15
|
-
clickOrganization(): Promise<void>;
|
|
16
|
-
closeInformationDialog(): Promise<void>;
|
|
17
|
-
clickCamundaComponents(): Promise<void>;
|
|
18
|
-
clickCamundaApps(): Promise<void>;
|
|
19
|
-
}
|
|
20
|
-
export { HomePage };
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.HomePage = void 0;
|
|
4
|
-
class HomePage {
|
|
5
|
-
page;
|
|
6
|
-
dashboardTab;
|
|
7
|
-
clusterTab;
|
|
8
|
-
organizationTab;
|
|
9
|
-
organizationViewTitle;
|
|
10
|
-
welcomeMessage;
|
|
11
|
-
informationDialog;
|
|
12
|
-
camundaAppsButton;
|
|
13
|
-
camundaComponentsButton;
|
|
14
|
-
constructor(page) {
|
|
15
|
-
this.page = page;
|
|
16
|
-
this.dashboardTab = page.getByRole('link', { name: 'Dashboard' });
|
|
17
|
-
this.clusterTab = page.getByRole('link', { name: 'Clusters' });
|
|
18
|
-
this.organizationTab = page.getByRole('link', { name: 'Organization' });
|
|
19
|
-
this.organizationViewTitle = page.getByText('Organization Management');
|
|
20
|
-
this.welcomeMessage = page.getByText('Welcome, demo').first();
|
|
21
|
-
this.informationDialog = page.getByRole('button', {
|
|
22
|
-
name: 'Close this dialog',
|
|
23
|
-
});
|
|
24
|
-
this.camundaComponentsButton = page.getByLabel('Camunda components');
|
|
25
|
-
this.camundaAppsButton = page.getByLabel('Camunda apps');
|
|
26
|
-
}
|
|
27
|
-
async clickClusters() {
|
|
28
|
-
await this.clusterTab.click({ timeout: 90000 });
|
|
29
|
-
}
|
|
30
|
-
async clickDashboard() {
|
|
31
|
-
await this.dashboardTab.click({ timeout: 90000 });
|
|
32
|
-
}
|
|
33
|
-
async clickOrganization() {
|
|
34
|
-
await this.organizationTab.click({ timeout: 90000 });
|
|
35
|
-
}
|
|
36
|
-
async closeInformationDialog() {
|
|
37
|
-
const isLocalTest = process.env.LOCAL_TEST;
|
|
38
|
-
if (isLocalTest) {
|
|
39
|
-
await this.informationDialog.click();
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
async clickCamundaComponents() {
|
|
43
|
-
await this.camundaComponentsButton.click({ timeout: 90000 });
|
|
44
|
-
}
|
|
45
|
-
async clickCamundaApps() {
|
|
46
|
-
await this.camundaAppsButton.click({ timeout: 90000 });
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.HomePage = HomePage;
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { Page, Locator } from '@playwright/test';
|
|
2
|
-
declare class IdentityPage {
|
|
3
|
-
private page;
|
|
4
|
-
readonly identityBanner: Locator;
|
|
5
|
-
readonly usersLink: Locator;
|
|
6
|
-
readonly assignedRolesTab: Locator;
|
|
7
|
-
readonly demoUser: Locator;
|
|
8
|
-
readonly confirmDeleteButton: Locator;
|
|
9
|
-
readonly assignRolesButton: Locator;
|
|
10
|
-
readonly addButton: Locator;
|
|
11
|
-
readonly operateCheckbox: Locator;
|
|
12
|
-
readonly tasklistCheckbox: Locator;
|
|
13
|
-
readonly optimizeCheckbox: Locator;
|
|
14
|
-
readonly modelerCheckbox: Locator;
|
|
15
|
-
readonly consoleCheckbox: Locator;
|
|
16
|
-
readonly groupsTab: Locator;
|
|
17
|
-
readonly createFirstGroupButton: Locator;
|
|
18
|
-
readonly createGroupButton: Locator;
|
|
19
|
-
readonly createGroupSubButton: Locator;
|
|
20
|
-
readonly groupNameInput: Locator;
|
|
21
|
-
readonly assignMembersButton: Locator;
|
|
22
|
-
readonly assignMembersSubButton: Locator;
|
|
23
|
-
readonly assignMembersSearchbox: Locator;
|
|
24
|
-
readonly assignMembersSearchResult: Locator;
|
|
25
|
-
readonly noGoupsHeading: Locator;
|
|
26
|
-
readonly deleteButton: Locator;
|
|
27
|
-
readonly deleteSubButton: Locator;
|
|
28
|
-
readonly createGroupDialoge: Locator;
|
|
29
|
-
readonly authorizationsTab: Locator;
|
|
30
|
-
readonly tenantTab: Locator;
|
|
31
|
-
constructor(page: Page);
|
|
32
|
-
clickUsersLink(): Promise<void>;
|
|
33
|
-
clickAssignedRolesTab(): Promise<void>;
|
|
34
|
-
clickDemoUser(): Promise<void>;
|
|
35
|
-
clickDeleteAccessButton(accessToDelete: string): Promise<void>;
|
|
36
|
-
clickConfirmDeleteButton(): Promise<void>;
|
|
37
|
-
clickAssignRolesButton(): Promise<void>;
|
|
38
|
-
clickAddButton(): Promise<void>;
|
|
39
|
-
clickOperateCheckbox(): Promise<void>;
|
|
40
|
-
clickTasklistCheckbox(): Promise<void>;
|
|
41
|
-
clickOptimizeCheckbox(): Promise<void>;
|
|
42
|
-
clickModelerCheckbox(): Promise<void>;
|
|
43
|
-
clickConsoleCheckbox(): Promise<void>;
|
|
44
|
-
clickGroupsTab(): Promise<void>;
|
|
45
|
-
clickCreateGroupButton(): Promise<void>;
|
|
46
|
-
fillGroupNameInput(name: string): Promise<void>;
|
|
47
|
-
clickUserGroup(name: string): Promise<void>;
|
|
48
|
-
clickAssignMembers(): Promise<void>;
|
|
49
|
-
fillAssignMembers(names: string[]): Promise<void>;
|
|
50
|
-
clickAssignSubButton(): Promise<void>;
|
|
51
|
-
clickCreateGroupSubButton(): Promise<void>;
|
|
52
|
-
deleteAllGroups(): Promise<void>;
|
|
53
|
-
clickAuthorizationsTab(): Promise<void>;
|
|
54
|
-
clickTenantTab(): Promise<void>;
|
|
55
|
-
}
|
|
56
|
-
export { IdentityPage };
|
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IdentityPage = void 0;
|
|
4
|
-
class IdentityPage {
|
|
5
|
-
page;
|
|
6
|
-
identityBanner;
|
|
7
|
-
usersLink;
|
|
8
|
-
assignedRolesTab;
|
|
9
|
-
demoUser;
|
|
10
|
-
confirmDeleteButton;
|
|
11
|
-
assignRolesButton;
|
|
12
|
-
addButton;
|
|
13
|
-
operateCheckbox;
|
|
14
|
-
tasklistCheckbox;
|
|
15
|
-
optimizeCheckbox;
|
|
16
|
-
modelerCheckbox;
|
|
17
|
-
consoleCheckbox;
|
|
18
|
-
groupsTab;
|
|
19
|
-
createFirstGroupButton;
|
|
20
|
-
createGroupButton;
|
|
21
|
-
createGroupSubButton;
|
|
22
|
-
groupNameInput;
|
|
23
|
-
assignMembersButton;
|
|
24
|
-
assignMembersSubButton;
|
|
25
|
-
assignMembersSearchbox;
|
|
26
|
-
assignMembersSearchResult;
|
|
27
|
-
noGoupsHeading;
|
|
28
|
-
deleteButton;
|
|
29
|
-
deleteSubButton;
|
|
30
|
-
createGroupDialoge;
|
|
31
|
-
authorizationsTab;
|
|
32
|
-
tenantTab;
|
|
33
|
-
constructor(page) {
|
|
34
|
-
this.page = page;
|
|
35
|
-
this.identityBanner = page.getByRole('link', { name: 'Camunda Identity' });
|
|
36
|
-
this.usersLink = page.getByRole('link', { name: 'Users' });
|
|
37
|
-
this.assignedRolesTab = page.getByRole('tab', { name: 'Assigned roles' });
|
|
38
|
-
this.demoUser = page.getByRole('cell', { name: 'demo' }).first();
|
|
39
|
-
this.confirmDeleteButton = page.getByRole('button', {
|
|
40
|
-
name: 'danger Delete',
|
|
41
|
-
});
|
|
42
|
-
this.assignRolesButton = page.getByRole('button', { name: 'Assign roles' });
|
|
43
|
-
this.addButton = page.getByRole('button', { name: 'Add' });
|
|
44
|
-
this.operateCheckbox = page
|
|
45
|
-
.locator('label')
|
|
46
|
-
.filter({ hasText: 'Operate (Grants full access to Operate)' });
|
|
47
|
-
this.tasklistCheckbox = page
|
|
48
|
-
.locator('label')
|
|
49
|
-
.filter({ hasText: 'Tasklist (Grants full access to Tasklist)' });
|
|
50
|
-
this.optimizeCheckbox = page
|
|
51
|
-
.locator('label')
|
|
52
|
-
.filter({ hasText: 'Optimize (Grants full access to Optimize)' });
|
|
53
|
-
this.modelerCheckbox = page
|
|
54
|
-
.locator('label')
|
|
55
|
-
.filter({ hasText: 'Web Modeler (Grants full access to Web Modeler)' });
|
|
56
|
-
this.consoleCheckbox = page
|
|
57
|
-
.locator('label')
|
|
58
|
-
.filter({ hasText: 'Console (Grants full access to Console)' });
|
|
59
|
-
this.groupsTab = page.getByText('groups').first();
|
|
60
|
-
this.createGroupButton = page.getByRole('button', {
|
|
61
|
-
name: 'create group',
|
|
62
|
-
});
|
|
63
|
-
this.createFirstGroupButton = page.getByRole('button', {
|
|
64
|
-
name: 'create a group',
|
|
65
|
-
});
|
|
66
|
-
this.createGroupSubButton = page
|
|
67
|
-
.getByRole('button', {
|
|
68
|
-
name: 'create group',
|
|
69
|
-
})
|
|
70
|
-
.last();
|
|
71
|
-
this.groupNameInput = page.getByRole('textbox', { name: 'name' });
|
|
72
|
-
this.assignMembersButton = page.getByRole('button', {
|
|
73
|
-
name: 'assign members',
|
|
74
|
-
});
|
|
75
|
-
this.assignMembersSubButton = page
|
|
76
|
-
.getByRole('button', {
|
|
77
|
-
name: 'assign',
|
|
78
|
-
})
|
|
79
|
-
.last();
|
|
80
|
-
this.assignMembersSearchbox = page.getByRole('searchbox', {
|
|
81
|
-
name: 'search by full name or email address',
|
|
82
|
-
});
|
|
83
|
-
this.assignMembersSearchResult = page.locator('.cds--list-box__menu-item');
|
|
84
|
-
this.noGoupsHeading = page.getByRole('heading', {
|
|
85
|
-
name: 'you don’t have any groups yet',
|
|
86
|
-
});
|
|
87
|
-
this.deleteSubButton = page.getByRole('button', { name: 'danger delete' });
|
|
88
|
-
this.deleteButton = page.locator('button', { hasText: 'danger' });
|
|
89
|
-
this.createGroupDialoge = page.getByRole('dialog', {
|
|
90
|
-
name: 'create group',
|
|
91
|
-
});
|
|
92
|
-
this.authorizationsTab = page.getByRole('tab', { name: 'Authorizations' });
|
|
93
|
-
this.tenantTab = page
|
|
94
|
-
.getByLabel('Top navigation')
|
|
95
|
-
.getByRole('link', { name: 'Tenants' });
|
|
96
|
-
}
|
|
97
|
-
async clickUsersLink() {
|
|
98
|
-
try {
|
|
99
|
-
await this.usersLink.click({ timeout: 180000, force: true });
|
|
100
|
-
}
|
|
101
|
-
catch {
|
|
102
|
-
await this.page.reload();
|
|
103
|
-
await this.usersLink.click({ timeout: 180000, force: true });
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
async clickAssignedRolesTab() {
|
|
107
|
-
await this.assignedRolesTab.click();
|
|
108
|
-
}
|
|
109
|
-
async clickDemoUser() {
|
|
110
|
-
await this.demoUser.click({ timeout: 180000 });
|
|
111
|
-
}
|
|
112
|
-
async clickDeleteAccessButton(accessToDelete) {
|
|
113
|
-
try {
|
|
114
|
-
await this.page
|
|
115
|
-
.locator('td:right-of(:text("' + accessToDelete + '"))')
|
|
116
|
-
.first()
|
|
117
|
-
.click({ timeout: 60000 });
|
|
118
|
-
}
|
|
119
|
-
catch {
|
|
120
|
-
console.log('Access already deleted');
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
async clickConfirmDeleteButton() {
|
|
124
|
-
try {
|
|
125
|
-
await this.confirmDeleteButton.click();
|
|
126
|
-
}
|
|
127
|
-
catch {
|
|
128
|
-
console.log('Access already deleted');
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
async clickAssignRolesButton() {
|
|
132
|
-
await this.assignRolesButton.click();
|
|
133
|
-
}
|
|
134
|
-
async clickAddButton() {
|
|
135
|
-
await this.addButton.click();
|
|
136
|
-
}
|
|
137
|
-
async clickOperateCheckbox() {
|
|
138
|
-
await this.operateCheckbox.click();
|
|
139
|
-
}
|
|
140
|
-
async clickTasklistCheckbox() {
|
|
141
|
-
await this.tasklistCheckbox.click();
|
|
142
|
-
}
|
|
143
|
-
async clickOptimizeCheckbox() {
|
|
144
|
-
await this.optimizeCheckbox.click();
|
|
145
|
-
}
|
|
146
|
-
async clickModelerCheckbox() {
|
|
147
|
-
await this.modelerCheckbox.click();
|
|
148
|
-
}
|
|
149
|
-
async clickConsoleCheckbox() {
|
|
150
|
-
await this.consoleCheckbox.click();
|
|
151
|
-
}
|
|
152
|
-
async clickGroupsTab() {
|
|
153
|
-
await this.groupsTab.click({ timeout: 120000 });
|
|
154
|
-
}
|
|
155
|
-
async clickCreateGroupButton() {
|
|
156
|
-
const maxRetries = 3;
|
|
157
|
-
for (let retries = 0; retries < maxRetries; retries++) {
|
|
158
|
-
try {
|
|
159
|
-
if ((await this.noGoupsHeading.isVisible({ timeout: 120000 })) == false) {
|
|
160
|
-
await this.createGroupButton.click();
|
|
161
|
-
}
|
|
162
|
-
else {
|
|
163
|
-
await this.createFirstGroupButton.click();
|
|
164
|
-
}
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
catch (error) {
|
|
168
|
-
console.error(`Click attempt ${retries + 1} failed`);
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
throw new Error(`Failed to click the button after ${maxRetries} attempts.`);
|
|
172
|
-
}
|
|
173
|
-
async fillGroupNameInput(name) {
|
|
174
|
-
await this.groupNameInput.fill(name);
|
|
175
|
-
}
|
|
176
|
-
async clickUserGroup(name) {
|
|
177
|
-
await this.page.getByRole('cell', { name: name }).click();
|
|
178
|
-
}
|
|
179
|
-
async clickAssignMembers() {
|
|
180
|
-
await this.assignMembersButton.click();
|
|
181
|
-
}
|
|
182
|
-
async fillAssignMembers(names) {
|
|
183
|
-
for (const name of names) {
|
|
184
|
-
await this.assignMembersSearchbox.click();
|
|
185
|
-
await this.assignMembersSearchbox.fill(name);
|
|
186
|
-
await this.assignMembersSearchResult.filter({ hasText: name }).click();
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
async clickAssignSubButton() {
|
|
190
|
-
await this.assignMembersSubButton.click();
|
|
191
|
-
}
|
|
192
|
-
async clickCreateGroupSubButton() {
|
|
193
|
-
await this.createGroupSubButton.click();
|
|
194
|
-
}
|
|
195
|
-
async deleteAllGroups() {
|
|
196
|
-
try {
|
|
197
|
-
await this.deleteButton
|
|
198
|
-
.first()
|
|
199
|
-
.waitFor({ state: 'visible', timeout: 120000 });
|
|
200
|
-
const count = await this.deleteButton.count();
|
|
201
|
-
if (count > 0) {
|
|
202
|
-
for (let i = 0; i < count; i++) {
|
|
203
|
-
await this.deleteButton.nth(i).click({ timeout: 60000 });
|
|
204
|
-
await this.deleteSubButton.click({ timeout: 60000 });
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
catch (error) {
|
|
209
|
-
console.log('Delete Button Not Clicked ' + error);
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
async clickAuthorizationsTab() {
|
|
213
|
-
await this.authorizationsTab.click();
|
|
214
|
-
}
|
|
215
|
-
async clickTenantTab() {
|
|
216
|
-
await this.tenantTab.click();
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
exports.IdentityPage = IdentityPage;
|