@camunda/e2e-test-suite 0.0.713 → 0.0.715

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.
Files changed (203) hide show
  1. package/.github/c8_versions.json +0 -3
  2. package/README.md +0 -6
  3. package/dist/pages/8.8/ClusterDetailsPage.js +5 -2
  4. package/dist/pages/8.8/ModelerCreatePage.js +10 -14
  5. package/dist/utils/clusterVersions.d.ts +0 -1
  6. package/dist/utils/clusterVersions.js +0 -1
  7. package/package.json +1 -1
  8. package/dist/fixtures/8.6.d.ts +0 -63
  9. package/dist/fixtures/8.6.js +0 -162
  10. package/dist/fixtures/SM-8.6.d.ts +0 -63
  11. package/dist/fixtures/SM-8.6.js +0 -149
  12. package/dist/fixtures/c8Run-8.6.d.ts +0 -20
  13. package/dist/fixtures/c8Run-8.6.js +0 -56
  14. package/dist/pages/8.6/AppsPage.d.ts +0 -33
  15. package/dist/pages/8.6/AppsPage.js +0 -337
  16. package/dist/pages/8.6/ClientCredentialsDetailsPage.d.ts +0 -12
  17. package/dist/pages/8.6/ClientCredentialsDetailsPage.js +0 -36
  18. package/dist/pages/8.6/ClusterDetailsPage.d.ts +0 -75
  19. package/dist/pages/8.6/ClusterDetailsPage.js +0 -443
  20. package/dist/pages/8.6/ClusterPage.d.ts +0 -59
  21. package/dist/pages/8.6/ClusterPage.js +0 -320
  22. package/dist/pages/8.6/ClusterSecretsPage.d.ts +0 -28
  23. package/dist/pages/8.6/ClusterSecretsPage.js +0 -134
  24. package/dist/pages/8.6/ConnectorMarketplacePage.d.ts +0 -19
  25. package/dist/pages/8.6/ConnectorMarketplacePage.js +0 -60
  26. package/dist/pages/8.6/ConnectorSettingsPage.d.ts +0 -38
  27. package/dist/pages/8.6/ConnectorSettingsPage.js +0 -133
  28. package/dist/pages/8.6/ConnectorTemplatePage.d.ts +0 -11
  29. package/dist/pages/8.6/ConnectorTemplatePage.js +0 -34
  30. package/dist/pages/8.6/ConsoleOrganizationPage.d.ts +0 -87
  31. package/dist/pages/8.6/ConsoleOrganizationPage.js +0 -495
  32. package/dist/pages/8.6/FormJsPage.d.ts +0 -30
  33. package/dist/pages/8.6/FormJsPage.js +0 -112
  34. package/dist/pages/8.6/HomePage.d.ts +0 -27
  35. package/dist/pages/8.6/HomePage.js +0 -101
  36. package/dist/pages/8.6/LoginPage.d.ts +0 -30
  37. package/dist/pages/8.6/LoginPage.js +0 -85
  38. package/dist/pages/8.6/ModelerCreatePage.d.ts +0 -211
  39. package/dist/pages/8.6/ModelerCreatePage.js +0 -1125
  40. package/dist/pages/8.6/ModelerHomePage.d.ts +0 -48
  41. package/dist/pages/8.6/ModelerHomePage.js +0 -213
  42. package/dist/pages/8.6/ModelerUserInvitePage.d.ts +0 -28
  43. package/dist/pages/8.6/ModelerUserInvitePage.js +0 -106
  44. package/dist/pages/8.6/OperateHomePage.d.ts +0 -21
  45. package/dist/pages/8.6/OperateHomePage.js +0 -57
  46. package/dist/pages/8.6/OperateProcessInstancePage.d.ts +0 -17
  47. package/dist/pages/8.6/OperateProcessInstancePage.js +0 -58
  48. package/dist/pages/8.6/OperateProcessesPage.d.ts +0 -21
  49. package/dist/pages/8.6/OperateProcessesPage.js +0 -77
  50. package/dist/pages/8.6/OptimizeCollectionsPage.d.ts +0 -15
  51. package/dist/pages/8.6/OptimizeCollectionsPage.js +0 -44
  52. package/dist/pages/8.6/OptimizeDashboardPage.d.ts +0 -11
  53. package/dist/pages/8.6/OptimizeDashboardPage.js +0 -65
  54. package/dist/pages/8.6/OptimizeHomePage.d.ts +0 -12
  55. package/dist/pages/8.6/OptimizeHomePage.js +0 -32
  56. package/dist/pages/8.6/OptimizeReportPage.d.ts +0 -48
  57. package/dist/pages/8.6/OptimizeReportPage.js +0 -163
  58. package/dist/pages/8.6/PlayPage.d.ts +0 -14
  59. package/dist/pages/8.6/PlayPage.js +0 -66
  60. package/dist/pages/8.6/SettingsPage.d.ts +0 -10
  61. package/dist/pages/8.6/SettingsPage.js +0 -43
  62. package/dist/pages/8.6/SignUpPage.d.ts +0 -43
  63. package/dist/pages/8.6/SignUpPage.js +0 -136
  64. package/dist/pages/8.6/TaskDetailsPage.d.ts +0 -66
  65. package/dist/pages/8.6/TaskDetailsPage.js +0 -214
  66. package/dist/pages/8.6/TaskPanelPage.d.ts +0 -18
  67. package/dist/pages/8.6/TaskPanelPage.js +0 -54
  68. package/dist/pages/8.6/TaskProcessesPage.d.ts +0 -11
  69. package/dist/pages/8.6/TaskProcessesPage.js +0 -35
  70. package/dist/pages/8.6/UtilitiesPage.d.ts +0 -38
  71. package/dist/pages/8.6/UtilitiesPage.js +0 -328
  72. package/dist/pages/SM-8.6/ConnectorMarketplacePage.d.ts +0 -16
  73. package/dist/pages/SM-8.6/ConnectorMarketplacePage.js +0 -48
  74. package/dist/pages/SM-8.6/ConnectorSettingsPage.d.ts +0 -28
  75. package/dist/pages/SM-8.6/ConnectorSettingsPage.js +0 -82
  76. package/dist/pages/SM-8.6/ConnectorTemplatePage.d.ts +0 -11
  77. package/dist/pages/SM-8.6/ConnectorTemplatePage.js +0 -34
  78. package/dist/pages/SM-8.6/ConsoleHomePage.d.ts +0 -9
  79. package/dist/pages/SM-8.6/ConsoleHomePage.js +0 -22
  80. package/dist/pages/SM-8.6/ConsoleOrganizationPage.d.ts +0 -22
  81. package/dist/pages/SM-8.6/ConsoleOrganizationPage.js +0 -68
  82. package/dist/pages/SM-8.6/FormJsPage.d.ts +0 -13
  83. package/dist/pages/SM-8.6/FormJsPage.js +0 -30
  84. package/dist/pages/SM-8.6/HomePage.d.ts +0 -20
  85. package/dist/pages/SM-8.6/HomePage.js +0 -49
  86. package/dist/pages/SM-8.6/IdentityPage.d.ts +0 -67
  87. package/dist/pages/SM-8.6/IdentityPage.js +0 -266
  88. package/dist/pages/SM-8.6/IdentityTenantPage.d.ts +0 -50
  89. package/dist/pages/SM-8.6/IdentityTenantPage.js +0 -196
  90. package/dist/pages/SM-8.6/IdentityUsersPage.d.ts +0 -90
  91. package/dist/pages/SM-8.6/IdentityUsersPage.js +0 -505
  92. package/dist/pages/SM-8.6/KeycloakAdminPage.d.ts +0 -15
  93. package/dist/pages/SM-8.6/KeycloakAdminPage.js +0 -56
  94. package/dist/pages/SM-8.6/KeycloakLoginPage.d.ts +0 -11
  95. package/dist/pages/SM-8.6/KeycloakLoginPage.js +0 -25
  96. package/dist/pages/SM-8.6/KeycloakUtils.d.ts +0 -15
  97. package/dist/pages/SM-8.6/KeycloakUtils.js +0 -58
  98. package/dist/pages/SM-8.6/LoginPage.d.ts +0 -22
  99. package/dist/pages/SM-8.6/LoginPage.js +0 -123
  100. package/dist/pages/SM-8.6/ModelerCreatePage.d.ts +0 -167
  101. package/dist/pages/SM-8.6/ModelerCreatePage.js +0 -852
  102. package/dist/pages/SM-8.6/ModelerHomePage.d.ts +0 -41
  103. package/dist/pages/SM-8.6/ModelerHomePage.js +0 -150
  104. package/dist/pages/SM-8.6/NavigationPage.d.ts +0 -42
  105. package/dist/pages/SM-8.6/NavigationPage.js +0 -119
  106. package/dist/pages/SM-8.6/OperateHomePage.d.ts +0 -23
  107. package/dist/pages/SM-8.6/OperateHomePage.js +0 -65
  108. package/dist/pages/SM-8.6/OperateProcessInstancePage.d.ts +0 -22
  109. package/dist/pages/SM-8.6/OperateProcessInstancePage.js +0 -139
  110. package/dist/pages/SM-8.6/OperateProcessesPage.d.ts +0 -33
  111. package/dist/pages/SM-8.6/OperateProcessesPage.js +0 -166
  112. package/dist/pages/SM-8.6/OptimizeCollectionsPage.d.ts +0 -15
  113. package/dist/pages/SM-8.6/OptimizeCollectionsPage.js +0 -44
  114. package/dist/pages/SM-8.6/OptimizeDashboardPage.d.ts +0 -14
  115. package/dist/pages/SM-8.6/OptimizeDashboardPage.js +0 -56
  116. package/dist/pages/SM-8.6/OptimizeHomePage.d.ts +0 -19
  117. package/dist/pages/SM-8.6/OptimizeHomePage.js +0 -62
  118. package/dist/pages/SM-8.6/OptimizeReportPage.d.ts +0 -50
  119. package/dist/pages/SM-8.6/OptimizeReportPage.js +0 -162
  120. package/dist/pages/SM-8.6/PlayPage.d.ts +0 -19
  121. package/dist/pages/SM-8.6/PlayPage.js +0 -103
  122. package/dist/pages/SM-8.6/SettingsPage.d.ts +0 -10
  123. package/dist/pages/SM-8.6/SettingsPage.js +0 -20
  124. package/dist/pages/SM-8.6/TaskDetailsPage.d.ts +0 -64
  125. package/dist/pages/SM-8.6/TaskDetailsPage.js +0 -240
  126. package/dist/pages/SM-8.6/TaskPanelPage.d.ts +0 -22
  127. package/dist/pages/SM-8.6/TaskPanelPage.js +0 -68
  128. package/dist/pages/SM-8.6/TaskProcessesPage.d.ts +0 -11
  129. package/dist/pages/SM-8.6/TaskProcessesPage.js +0 -31
  130. package/dist/pages/SM-8.6/UtlitiesPage.d.ts +0 -21
  131. package/dist/pages/SM-8.6/UtlitiesPage.js +0 -207
  132. package/dist/pages/SM-8.6/optimizeReportUtils.d.ts +0 -6
  133. package/dist/pages/SM-8.6/optimizeReportUtils.js +0 -42
  134. package/dist/pages/c8Run-8.6/OperateHomePage.d.ts +0 -20
  135. package/dist/pages/c8Run-8.6/OperateHomePage.js +0 -52
  136. package/dist/pages/c8Run-8.6/OperateLoginPage.d.ts +0 -14
  137. package/dist/pages/c8Run-8.6/OperateLoginPage.js +0 -37
  138. package/dist/pages/c8Run-8.6/OperateProcessInstancePage.d.ts +0 -17
  139. package/dist/pages/c8Run-8.6/OperateProcessInstancePage.js +0 -76
  140. package/dist/pages/c8Run-8.6/OperateProcessesPage.d.ts +0 -20
  141. package/dist/pages/c8Run-8.6/OperateProcessesPage.js +0 -84
  142. package/dist/pages/c8Run-8.6/TaskDetailsPage.d.ts +0 -65
  143. package/dist/pages/c8Run-8.6/TaskDetailsPage.js +0 -219
  144. package/dist/pages/c8Run-8.6/TaskListLoginPage.d.ts +0 -14
  145. package/dist/pages/c8Run-8.6/TaskListLoginPage.js +0 -37
  146. package/dist/pages/c8Run-8.6/TaskPanelPage.d.ts +0 -23
  147. package/dist/pages/c8Run-8.6/TaskPanelPage.js +0 -76
  148. package/dist/pages/c8Run-8.6/UtilitiesPage.d.ts +0 -6
  149. package/dist/pages/c8Run-8.6/UtilitiesPage.js +0 -45
  150. package/dist/tests/8.6/connectors-user-flows.spec.d.ts +0 -1
  151. package/dist/tests/8.6/connectors-user-flows.spec.js +0 -435
  152. package/dist/tests/8.6/console-user-flows.spec.d.ts +0 -1
  153. package/dist/tests/8.6/console-user-flows.spec.js +0 -193
  154. package/dist/tests/8.6/hto-user-flows.spec.d.ts +0 -1
  155. package/dist/tests/8.6/hto-user-flows.spec.js +0 -365
  156. package/dist/tests/8.6/login.spec.d.ts +0 -1
  157. package/dist/tests/8.6/login.spec.js +0 -27
  158. package/dist/tests/8.6/navigation.spec.d.ts +0 -1
  159. package/dist/tests/8.6/navigation.spec.js +0 -57
  160. package/dist/tests/8.6/operate-access-flow.spec.d.ts +0 -1
  161. package/dist/tests/8.6/operate-access-flow.spec.js +0 -57
  162. package/dist/tests/8.6/optimize-user-flows.spec.d.ts +0 -1
  163. package/dist/tests/8.6/optimize-user-flows.spec.js +0 -231
  164. package/dist/tests/8.6/play.spec.d.ts +0 -1
  165. package/dist/tests/8.6/play.spec.js +0 -94
  166. package/dist/tests/8.6/rba-enabled-user-flows.spec.d.ts +0 -1
  167. package/dist/tests/8.6/rba-enabled-user-flows.spec.js +0 -288
  168. package/dist/tests/8.6/smoke-tests.spec.d.ts +0 -1
  169. package/dist/tests/8.6/smoke-tests.spec.js +0 -188
  170. package/dist/tests/8.6/test-setup.spec.d.ts +0 -1
  171. package/dist/tests/8.6/test-setup.spec.js +0 -68
  172. package/dist/tests/8.6/web-modeler-user-flows.spec.d.ts +0 -1
  173. package/dist/tests/8.6/web-modeler-user-flows.spec.js +0 -692
  174. package/dist/tests/SM-8.6/connectors-user-flows.spec.d.ts +0 -1
  175. package/dist/tests/SM-8.6/connectors-user-flows.spec.js +0 -247
  176. package/dist/tests/SM-8.6/console-user-flows.spec.d.ts +0 -1
  177. package/dist/tests/SM-8.6/console-user-flows.spec.js +0 -55
  178. package/dist/tests/SM-8.6/hto-user-flows.spec.d.ts +0 -1
  179. package/dist/tests/SM-8.6/hto-user-flows.spec.js +0 -393
  180. package/dist/tests/SM-8.6/license-key-user-flows.spec.d.ts +0 -1
  181. package/dist/tests/SM-8.6/license-key-user-flows.spec.js +0 -462
  182. package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.d.ts +0 -1
  183. package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.js +0 -500
  184. package/dist/tests/SM-8.6/optimize-user-flows.spec.d.ts +0 -1
  185. package/dist/tests/SM-8.6/optimize-user-flows.spec.js +0 -186
  186. package/dist/tests/SM-8.6/play.spec.d.ts +0 -1
  187. package/dist/tests/SM-8.6/play.spec.js +0 -87
  188. package/dist/tests/SM-8.6/rba-enabled-user-flows.spec.d.ts +0 -1
  189. package/dist/tests/SM-8.6/rba-enabled-user-flows.spec.js +0 -242
  190. package/dist/tests/SM-8.6/smoke-tests.spec.d.ts +0 -1
  191. package/dist/tests/SM-8.6/smoke-tests.spec.js +0 -158
  192. package/dist/tests/SM-8.6/test-setup.spec.d.ts +0 -1
  193. package/dist/tests/SM-8.6/test-setup.spec.js +0 -134
  194. package/dist/tests/SM-8.6/web-modeler-user-flows.spec.d.ts +0 -1
  195. package/dist/tests/SM-8.6/web-modeler-user-flows.spec.js +0 -126
  196. package/dist/tests/c8Run-8.6/api-tests.spec.d.ts +0 -1
  197. package/dist/tests/c8Run-8.6/api-tests.spec.js +0 -67
  198. package/dist/tests/c8Run-8.6/connectors-user-flows.spec.d.ts +0 -1
  199. package/dist/tests/c8Run-8.6/connectors-user-flows.spec.js +0 -119
  200. package/dist/tests/c8Run-8.6/hto-user-flows.spec.d.ts +0 -1
  201. package/dist/tests/c8Run-8.6/hto-user-flows.spec.js +0 -199
  202. package/dist/tests/c8Run-8.6/login.spec.d.ts +0 -1
  203. package/dist/tests/c8Run-8.6/login.spec.js +0 -22
@@ -1,56 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH under
4
- * one or more contributor license agreements. See the NOTICE file distributed
5
- * with this work for additional information regarding copyright ownership.
6
- * Licensed under the Camunda License 1.0. You may not use this file
7
- * except in compliance with the Camunda License 1.0.
8
- */
9
- var __importDefault = (this && this.__importDefault) || function (mod) {
10
- return (mod && mod.__esModule) ? mod : { "default": mod };
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.test = void 0;
14
- const test_1 = require("@playwright/test");
15
- const playwright_1 = __importDefault(require("@axe-core/playwright"));
16
- const OperateLoginPage_1 = require("../pages/c8Run-8.6/OperateLoginPage");
17
- const OperateHomePage_1 = require("../pages/c8Run-8.6/OperateHomePage");
18
- const TaskPanelPage_1 = require("../pages/c8Run-8.6/TaskPanelPage");
19
- const TaskListLoginPage_1 = require("../pages/c8Run-8.6/TaskListLoginPage");
20
- const OperateProcessesPage_1 = require("../pages/c8Run-8.6/OperateProcessesPage");
21
- const OperateProcessInstancePage_1 = require("../pages/c8Run-8.6/OperateProcessInstancePage");
22
- const TaskDetailsPage_1 = require("../pages/c8Run-8.6/TaskDetailsPage");
23
- const test = test_1.test.extend({
24
- makeAxeBuilder: async ({ page }, use) => {
25
- const makeAxeBuilder = () => new playwright_1.default({ page }).withTags([
26
- 'best-practice',
27
- 'wcag2a',
28
- 'wcag2aa',
29
- 'cat.semantics',
30
- 'cat.forms',
31
- ]);
32
- await use(makeAxeBuilder);
33
- },
34
- operateLoginPage: async ({ page }, use) => {
35
- await use(new OperateLoginPage_1.OperateLoginPage(page));
36
- },
37
- operateHomePage: async ({ page }, use) => {
38
- await use(new OperateHomePage_1.OperateHomePage(page));
39
- },
40
- taskListLoginPage: async ({ page }, use) => {
41
- await use(new TaskListLoginPage_1.TaskListLoginPage(page));
42
- },
43
- taskPanelPage: async ({ page }, use) => {
44
- await use(new TaskPanelPage_1.TaskPanelPage(page));
45
- },
46
- operateProcessesPage: async ({ page }, use) => {
47
- await use(new OperateProcessesPage_1.OperateProcessesPage(page));
48
- },
49
- operateProcessInstancePage: async ({ page }, use) => {
50
- await use(new OperateProcessInstancePage_1.OperateProcessInstancePage(page));
51
- },
52
- taskDetailsPage: async ({ page }, use) => {
53
- await use(new TaskDetailsPage_1.TaskDetailsPage(page));
54
- },
55
- });
56
- exports.test = test;
@@ -1,33 +0,0 @@
1
- import { Page, Locator } from '@playwright/test';
2
- declare class AppsPage {
3
- private page;
4
- readonly modelerLink: Locator;
5
- readonly tasklistLink: Locator;
6
- readonly operateLink: Locator;
7
- readonly appSwitcherButton: Locator;
8
- readonly consoleLink: Locator;
9
- readonly optimizeLink: Locator;
10
- readonly camundaComponentsButton: Locator;
11
- readonly camundaAppsButton: Locator;
12
- readonly optimizeButton: Locator;
13
- readonly tasklistButton: Locator;
14
- readonly operateButton: Locator;
15
- readonly operateListItem: Locator;
16
- readonly optimizeListItem: Locator;
17
- readonly tasklistListItem: Locator;
18
- constructor(page: Page);
19
- clickModeler(): Promise<void>;
20
- clickOperate(clusterName: string): Promise<void>;
21
- clickOptimize(clusterName: string): Promise<void>;
22
- clickCluster(component: Locator, name: string): Promise<void>;
23
- clickTasklist(clusterName: string): Promise<void>;
24
- private doClickClusterInOperate;
25
- private doClickClusterInTasklist;
26
- private doClickClusterInOptimize;
27
- clickCamundaApps(maxRetries?: number): Promise<void>;
28
- clickConsoleLink(): Promise<void>;
29
- assertOperatePresent(shouldBeVisible?: boolean): Promise<void>;
30
- assertTasklistPresent(shouldBeVisible?: boolean): Promise<void>;
31
- assertOptimizePresent(shouldBeVisible?: boolean): Promise<void>;
32
- }
33
- export { AppsPage };
@@ -1,337 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AppsPage = void 0;
4
- const test_1 = require("@playwright/test");
5
- const sleep_1 = require("../../utils/sleep");
6
- class AppsPage {
7
- page;
8
- modelerLink;
9
- tasklistLink;
10
- operateLink;
11
- appSwitcherButton;
12
- consoleLink;
13
- optimizeLink;
14
- camundaComponentsButton;
15
- camundaAppsButton;
16
- optimizeButton;
17
- tasklistButton;
18
- operateButton;
19
- operateListItem;
20
- optimizeListItem;
21
- tasklistListItem;
22
- constructor(page) {
23
- this.page = page;
24
- this.modelerLink = page
25
- .getByRole('link', { name: 'Modeler', exact: true })
26
- .or(page.getByLabel('App Panel').getByLabel('Camunda Modeler'))
27
- .first();
28
- this.appSwitcherButton = page.getByLabel('App Switcher');
29
- this.tasklistLink = page.getByRole('link', { name: 'Tasklist', exact: true });
30
- this.operateLink = page.getByRole('link', { name: 'Operate', exact: true });
31
- this.consoleLink = page.getByRole('link', { name: 'Console', exact: true });
32
- this.optimizeLink = page.getByRole('link', { name: 'Optimize', exact: true });
33
- this.camundaComponentsButton = page.getByLabel('Camunda components');
34
- this.camundaAppsButton = page.getByLabel('Camunda apps');
35
- this.tasklistListItem = this.page
36
- .getByRole('listitem')
37
- .filter({ hasText: 'Tasklist' });
38
- this.optimizeListItem = this.page
39
- .getByRole('listitem')
40
- .filter({ hasText: 'Optimize' });
41
- this.operateListItem = this.page
42
- .getByRole('listitem')
43
- .filter({ hasText: 'Operate' });
44
- this.operateButton = page.getByRole('button', {
45
- name: 'Operate',
46
- exact: true,
47
- });
48
- this.optimizeButton = page.getByRole('button', {
49
- name: 'Optimize',
50
- exact: true,
51
- });
52
- this.tasklistButton = page.getByRole('button', {
53
- name: 'Tasklist',
54
- exact: true,
55
- });
56
- }
57
- async clickModeler() {
58
- const maxRetries = 3;
59
- for (let retries = 0; retries < maxRetries; retries++) {
60
- try {
61
- if (retries === 0) {
62
- await (0, test_1.expect)(this.modelerLink).toBeVisible({ timeout: 30000 });
63
- await this.modelerLink.click();
64
- }
65
- else {
66
- await this.clickCamundaApps();
67
- await (0, test_1.expect)(this.modelerLink).toBeVisible({ timeout: 30000 });
68
- await this.modelerLink.click();
69
- }
70
- return;
71
- }
72
- catch (error) {
73
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
74
- await new Promise((resolve) => setTimeout(resolve, 10000));
75
- }
76
- }
77
- throw new Error(`Failed to click the modeler link after ${maxRetries} attempts.`);
78
- }
79
- async clickOperate(clusterName) {
80
- const maxRetries = 3;
81
- for (let retries = 0; retries < maxRetries; retries++) {
82
- try {
83
- if (retries === 0) {
84
- if (await this.operateLink.isVisible({ timeout: 5000 })) {
85
- //Single Cluster
86
- await this.operateLink.click({ timeout: 10000 });
87
- }
88
- else {
89
- //Multiple Cluster
90
- await this.doClickClusterInOperate(clusterName);
91
- }
92
- }
93
- else {
94
- await this.clickCamundaApps();
95
- if (await this.operateLink.isVisible({ timeout: 5000 })) {
96
- await this.operateLink.click({ timeout: 10000 });
97
- }
98
- else {
99
- await this.doClickClusterInOperate(clusterName);
100
- }
101
- }
102
- return;
103
- }
104
- catch (error) {
105
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
106
- await this.page.waitForLoadState('domcontentloaded');
107
- await new Promise((resolve) => setTimeout(resolve, 10000));
108
- }
109
- }
110
- throw new Error(`Failed to click the operate link after ${maxRetries} attempts.`);
111
- }
112
- async clickOptimize(clusterName) {
113
- const maxRetries = 3;
114
- for (let retries = 0; retries < maxRetries; retries++) {
115
- try {
116
- if (retries === 0) {
117
- if (await this.optimizeLink.isVisible({ timeout: 10000 })) {
118
- //Single cluster
119
- await this.optimizeLink.click({ timeout: 10000 });
120
- }
121
- else {
122
- //Multiple clusters
123
- await this.doClickClusterInOptimize(clusterName);
124
- }
125
- }
126
- else {
127
- await this.clickCamundaApps();
128
- if (await this.optimizeLink.isVisible({ timeout: 5000 })) {
129
- await this.optimizeLink.click({ timeout: 10000 });
130
- }
131
- else {
132
- await this.doClickClusterInOptimize(clusterName);
133
- }
134
- }
135
- return;
136
- }
137
- catch (error) {
138
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
139
- await new Promise((resolve) => setTimeout(resolve, 10000));
140
- }
141
- }
142
- throw new Error(`Failed to click the optimize link after ${maxRetries} attempts.`);
143
- }
144
- async clickCluster(component, name) {
145
- const cluster = component.getByRole('link', { name: name, exact: true });
146
- await (0, test_1.expect)(cluster).toBeVisible({ timeout: 30000 });
147
- await cluster.click();
148
- }
149
- async clickTasklist(clusterName) {
150
- const maxRetries = 3;
151
- for (let retries = 0; retries < maxRetries; retries++) {
152
- try {
153
- if (retries === 0) {
154
- //Single cluster
155
- if (await this.tasklistLink.isVisible({ timeout: 5000 })) {
156
- await this.tasklistLink.click({ timeout: 10000 });
157
- }
158
- else {
159
- //Multiple clusters
160
- await this.doClickClusterInTasklist(clusterName);
161
- }
162
- }
163
- else {
164
- await this.clickCamundaApps();
165
- if (await this.tasklistLink.isVisible({ timeout: 5000 })) {
166
- await this.tasklistLink.click({ timeout: 10000 });
167
- }
168
- else {
169
- await this.doClickClusterInTasklist(clusterName);
170
- }
171
- }
172
- return;
173
- }
174
- catch (error) {
175
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
176
- await new Promise((resolve) => setTimeout(resolve, 10000));
177
- }
178
- }
179
- throw new Error(`Failed to click the tasklist link after ${maxRetries} attempts.`);
180
- }
181
- async doClickClusterInOperate(clusterName) {
182
- if (await this.operateListItem
183
- .getByRole('button', {
184
- expanded: true,
185
- })
186
- .isHidden({ timeout: 5000 })) {
187
- await this.operateButton.click({ timeout: 10000 });
188
- }
189
- await this.clickCluster(this.operateListItem, clusterName);
190
- }
191
- async doClickClusterInTasklist(clusterName) {
192
- if (await this.tasklistListItem
193
- .getByRole('button', {
194
- expanded: true,
195
- })
196
- .isHidden({ timeout: 5000 })) {
197
- await this.tasklistButton.click({ timeout: 10000 });
198
- }
199
- await this.clickCluster(this.tasklistListItem, clusterName);
200
- }
201
- async doClickClusterInOptimize(clusterName) {
202
- if (await this.optimizeListItem
203
- .getByRole('button', {
204
- expanded: true,
205
- })
206
- .isHidden({ timeout: 5000 })) {
207
- await this.optimizeButton.click({ timeout: 10000 });
208
- }
209
- await this.clickCluster(this.optimizeListItem, clusterName);
210
- }
211
- async clickCamundaApps(maxRetries = 3) {
212
- await (0, sleep_1.sleep)(2000);
213
- const appButtons = [
214
- this.camundaComponentsButton,
215
- this.camundaAppsButton,
216
- this.appSwitcherButton,
217
- ];
218
- for (let retries = 0; retries < maxRetries; retries++) {
219
- for (const appButton of appButtons) {
220
- if (await appButton.isVisible({ timeout: 20000 })) {
221
- await appButton.click({ timeout: 60000 });
222
- return;
223
- }
224
- }
225
- }
226
- }
227
- async clickConsoleLink() {
228
- const maxRetries = 3;
229
- for (let retries = 0; retries < maxRetries; retries++) {
230
- try {
231
- if (retries === 0) {
232
- await (0, test_1.expect)(this.consoleLink).toBeVisible({ timeout: 30000 });
233
- await this.consoleLink.click();
234
- }
235
- else {
236
- await this.clickCamundaApps();
237
- await (0, test_1.expect)(this.consoleLink).toBeVisible({ timeout: 30000 });
238
- await this.consoleLink.click();
239
- }
240
- return;
241
- }
242
- catch (error) {
243
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
244
- await new Promise((resolve) => setTimeout(resolve, 10000));
245
- }
246
- }
247
- throw new Error(`Failed to click the console link after ${maxRetries} attempts.`);
248
- }
249
- async assertOperatePresent(shouldBeVisible = true) {
250
- const maxRetries = 3;
251
- for (let retries = 0; retries < maxRetries; retries++) {
252
- try {
253
- const isVisible = await this.operateLink.isVisible({ timeout: 5000 });
254
- if (shouldBeVisible) {
255
- if (isVisible) {
256
- // Single Cluster
257
- await (0, test_1.expect)(this.operateLink).toBeVisible();
258
- }
259
- else if (await this.operateListItem
260
- .getByRole('button', { expanded: true })
261
- .isHidden({ timeout: 5000 })) {
262
- // Multiple Cluster
263
- await (0, test_1.expect)(this.operateButton).toBeVisible();
264
- }
265
- }
266
- else {
267
- await (0, test_1.expect)(this.operateLink).not.toBeVisible();
268
- }
269
- return;
270
- }
271
- catch (error) {
272
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
273
- await new Promise((resolve) => setTimeout(resolve, 10000));
274
- }
275
- }
276
- throw new Error(`Failed to assert the operate link visibility after ${maxRetries} attempts.`);
277
- }
278
- async assertTasklistPresent(shouldBeVisible = true) {
279
- const maxRetries = 3;
280
- for (let retries = 0; retries < maxRetries; retries++) {
281
- try {
282
- const isVisible = await this.tasklistLink.isVisible({ timeout: 5000 });
283
- if (shouldBeVisible) {
284
- if (isVisible) {
285
- // Single Cluster
286
- await (0, test_1.expect)(this.tasklistLink).toBeVisible();
287
- }
288
- else if (await this.tasklistListItem
289
- .getByRole('button', { expanded: true })
290
- .isHidden({ timeout: 5000 })) {
291
- // Multiple Cluster
292
- await (0, test_1.expect)(this.tasklistButton).toBeVisible();
293
- }
294
- }
295
- else {
296
- await (0, test_1.expect)(this.tasklistLink).not.toBeVisible();
297
- }
298
- return;
299
- }
300
- catch (error) {
301
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
302
- await new Promise((resolve) => setTimeout(resolve, 10000));
303
- }
304
- }
305
- throw new Error(`Failed to assert the tasklist link visibility after ${maxRetries} attempts.`);
306
- }
307
- async assertOptimizePresent(shouldBeVisible = true) {
308
- const maxRetries = 3;
309
- for (let retries = 0; retries < maxRetries; retries++) {
310
- try {
311
- const isVisible = await this.optimizeLink.isVisible({ timeout: 5000 });
312
- if (shouldBeVisible) {
313
- if (isVisible) {
314
- // Single Cluster
315
- await (0, test_1.expect)(this.optimizeLink).toBeVisible();
316
- }
317
- else if (await this.optimizeListItem
318
- .getByRole('button', { expanded: true })
319
- .isHidden({ timeout: 5000 })) {
320
- // Multiple Cluster
321
- await (0, test_1.expect)(this.optimizeButton).toBeVisible();
322
- }
323
- }
324
- else {
325
- await (0, test_1.expect)(this.optimizeLink).not.toBeVisible();
326
- }
327
- return;
328
- }
329
- catch (error) {
330
- console.warn(`Click attempt ${retries + 1} failed: ${error}`);
331
- await new Promise((resolve) => setTimeout(resolve, 10000));
332
- }
333
- }
334
- throw new Error(`Failed to assert the optimize link visibility after ${maxRetries} attempts.`);
335
- }
336
- }
337
- exports.AppsPage = AppsPage;
@@ -1,12 +0,0 @@
1
- import { Page, Locator } from '@playwright/test';
2
- declare class ClientCredentialsDetailsPage {
3
- private page;
4
- readonly operateUrlRow: Locator;
5
- readonly operateUrlValue: Locator;
6
- readonly clientNameHeading: (clientName: string) => Locator;
7
- constructor(page: Page);
8
- isOpen(clientName: string): Promise<void>;
9
- getOperateUrl(): Promise<string>;
10
- goBack(): Promise<void>;
11
- }
12
- export { ClientCredentialsDetailsPage };
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClientCredentialsDetailsPage = void 0;
4
- const test_1 = require("@playwright/test");
5
- class ClientCredentialsDetailsPage {
6
- page;
7
- operateUrlRow;
8
- operateUrlValue;
9
- clientNameHeading;
10
- constructor(page) {
11
- this.page = page;
12
- this.operateUrlRow = page.getByRole('cell', { name: 'Operate URL' });
13
- this.operateUrlValue = this.operateUrlRow.getByRole('textbox');
14
- this.clientNameHeading = (clientName) => page.getByRole('heading', { name: clientName });
15
- }
16
- async isOpen(clientName) {
17
- await (0, test_1.expect)(this.clientNameHeading(clientName)).toBeVisible({
18
- timeout: 30000,
19
- });
20
- }
21
- async getOperateUrl() {
22
- if (await this.operateUrlValue.isVisible({ timeout: 10000 }).catch(() => false)) {
23
- return await this.operateUrlValue.inputValue();
24
- }
25
- const text = await this.page.innerText('body');
26
- const match = text.match(/Operate URL\s*([\w:/.-]+\/?)/i);
27
- if (!match || !match[1]) {
28
- throw new Error('Operate URL not found in client credentials page');
29
- }
30
- return match[1];
31
- }
32
- async goBack() {
33
- await this.page.goBack();
34
- }
35
- }
36
- exports.ClientCredentialsDetailsPage = ClientCredentialsDetailsPage;
@@ -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 };