@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.
Files changed (204) hide show
  1. package/.github/c8_versions.json +0 -3
  2. package/README.md +0 -6
  3. package/dist/pages/8.9/ModelerCreatePage.d.ts +3 -1
  4. package/dist/pages/8.9/ModelerCreatePage.js +13 -3
  5. package/dist/tests/8.9/web-modeler-user-flows.spec.js +42 -37
  6. package/dist/utils/clusterVersions.d.ts +0 -1
  7. package/dist/utils/clusterVersions.js +0 -1
  8. package/package.json +1 -1
  9. package/dist/fixtures/8.6.d.ts +0 -63
  10. package/dist/fixtures/8.6.js +0 -162
  11. package/dist/fixtures/SM-8.6.d.ts +0 -63
  12. package/dist/fixtures/SM-8.6.js +0 -149
  13. package/dist/fixtures/c8Run-8.6.d.ts +0 -20
  14. package/dist/fixtures/c8Run-8.6.js +0 -56
  15. package/dist/pages/8.6/AppsPage.d.ts +0 -33
  16. package/dist/pages/8.6/AppsPage.js +0 -337
  17. package/dist/pages/8.6/ClientCredentialsDetailsPage.d.ts +0 -12
  18. package/dist/pages/8.6/ClientCredentialsDetailsPage.js +0 -36
  19. package/dist/pages/8.6/ClusterDetailsPage.d.ts +0 -75
  20. package/dist/pages/8.6/ClusterDetailsPage.js +0 -443
  21. package/dist/pages/8.6/ClusterPage.d.ts +0 -59
  22. package/dist/pages/8.6/ClusterPage.js +0 -320
  23. package/dist/pages/8.6/ClusterSecretsPage.d.ts +0 -28
  24. package/dist/pages/8.6/ClusterSecretsPage.js +0 -134
  25. package/dist/pages/8.6/ConnectorMarketplacePage.d.ts +0 -19
  26. package/dist/pages/8.6/ConnectorMarketplacePage.js +0 -60
  27. package/dist/pages/8.6/ConnectorSettingsPage.d.ts +0 -38
  28. package/dist/pages/8.6/ConnectorSettingsPage.js +0 -133
  29. package/dist/pages/8.6/ConnectorTemplatePage.d.ts +0 -11
  30. package/dist/pages/8.6/ConnectorTemplatePage.js +0 -34
  31. package/dist/pages/8.6/ConsoleOrganizationPage.d.ts +0 -87
  32. package/dist/pages/8.6/ConsoleOrganizationPage.js +0 -495
  33. package/dist/pages/8.6/FormJsPage.d.ts +0 -30
  34. package/dist/pages/8.6/FormJsPage.js +0 -112
  35. package/dist/pages/8.6/HomePage.d.ts +0 -27
  36. package/dist/pages/8.6/HomePage.js +0 -101
  37. package/dist/pages/8.6/LoginPage.d.ts +0 -30
  38. package/dist/pages/8.6/LoginPage.js +0 -85
  39. package/dist/pages/8.6/ModelerCreatePage.d.ts +0 -211
  40. package/dist/pages/8.6/ModelerCreatePage.js +0 -1125
  41. package/dist/pages/8.6/ModelerHomePage.d.ts +0 -48
  42. package/dist/pages/8.6/ModelerHomePage.js +0 -213
  43. package/dist/pages/8.6/ModelerUserInvitePage.d.ts +0 -28
  44. package/dist/pages/8.6/ModelerUserInvitePage.js +0 -106
  45. package/dist/pages/8.6/OperateHomePage.d.ts +0 -21
  46. package/dist/pages/8.6/OperateHomePage.js +0 -57
  47. package/dist/pages/8.6/OperateProcessInstancePage.d.ts +0 -17
  48. package/dist/pages/8.6/OperateProcessInstancePage.js +0 -58
  49. package/dist/pages/8.6/OperateProcessesPage.d.ts +0 -21
  50. package/dist/pages/8.6/OperateProcessesPage.js +0 -77
  51. package/dist/pages/8.6/OptimizeCollectionsPage.d.ts +0 -15
  52. package/dist/pages/8.6/OptimizeCollectionsPage.js +0 -44
  53. package/dist/pages/8.6/OptimizeDashboardPage.d.ts +0 -11
  54. package/dist/pages/8.6/OptimizeDashboardPage.js +0 -65
  55. package/dist/pages/8.6/OptimizeHomePage.d.ts +0 -12
  56. package/dist/pages/8.6/OptimizeHomePage.js +0 -32
  57. package/dist/pages/8.6/OptimizeReportPage.d.ts +0 -48
  58. package/dist/pages/8.6/OptimizeReportPage.js +0 -163
  59. package/dist/pages/8.6/PlayPage.d.ts +0 -14
  60. package/dist/pages/8.6/PlayPage.js +0 -66
  61. package/dist/pages/8.6/SettingsPage.d.ts +0 -10
  62. package/dist/pages/8.6/SettingsPage.js +0 -43
  63. package/dist/pages/8.6/SignUpPage.d.ts +0 -43
  64. package/dist/pages/8.6/SignUpPage.js +0 -136
  65. package/dist/pages/8.6/TaskDetailsPage.d.ts +0 -66
  66. package/dist/pages/8.6/TaskDetailsPage.js +0 -214
  67. package/dist/pages/8.6/TaskPanelPage.d.ts +0 -18
  68. package/dist/pages/8.6/TaskPanelPage.js +0 -54
  69. package/dist/pages/8.6/TaskProcessesPage.d.ts +0 -11
  70. package/dist/pages/8.6/TaskProcessesPage.js +0 -35
  71. package/dist/pages/8.6/UtilitiesPage.d.ts +0 -38
  72. package/dist/pages/8.6/UtilitiesPage.js +0 -328
  73. package/dist/pages/SM-8.6/ConnectorMarketplacePage.d.ts +0 -16
  74. package/dist/pages/SM-8.6/ConnectorMarketplacePage.js +0 -48
  75. package/dist/pages/SM-8.6/ConnectorSettingsPage.d.ts +0 -28
  76. package/dist/pages/SM-8.6/ConnectorSettingsPage.js +0 -82
  77. package/dist/pages/SM-8.6/ConnectorTemplatePage.d.ts +0 -11
  78. package/dist/pages/SM-8.6/ConnectorTemplatePage.js +0 -34
  79. package/dist/pages/SM-8.6/ConsoleHomePage.d.ts +0 -9
  80. package/dist/pages/SM-8.6/ConsoleHomePage.js +0 -22
  81. package/dist/pages/SM-8.6/ConsoleOrganizationPage.d.ts +0 -22
  82. package/dist/pages/SM-8.6/ConsoleOrganizationPage.js +0 -68
  83. package/dist/pages/SM-8.6/FormJsPage.d.ts +0 -13
  84. package/dist/pages/SM-8.6/FormJsPage.js +0 -30
  85. package/dist/pages/SM-8.6/HomePage.d.ts +0 -20
  86. package/dist/pages/SM-8.6/HomePage.js +0 -49
  87. package/dist/pages/SM-8.6/IdentityPage.d.ts +0 -67
  88. package/dist/pages/SM-8.6/IdentityPage.js +0 -266
  89. package/dist/pages/SM-8.6/IdentityTenantPage.d.ts +0 -50
  90. package/dist/pages/SM-8.6/IdentityTenantPage.js +0 -196
  91. package/dist/pages/SM-8.6/IdentityUsersPage.d.ts +0 -90
  92. package/dist/pages/SM-8.6/IdentityUsersPage.js +0 -505
  93. package/dist/pages/SM-8.6/KeycloakAdminPage.d.ts +0 -15
  94. package/dist/pages/SM-8.6/KeycloakAdminPage.js +0 -56
  95. package/dist/pages/SM-8.6/KeycloakLoginPage.d.ts +0 -11
  96. package/dist/pages/SM-8.6/KeycloakLoginPage.js +0 -25
  97. package/dist/pages/SM-8.6/KeycloakUtils.d.ts +0 -15
  98. package/dist/pages/SM-8.6/KeycloakUtils.js +0 -58
  99. package/dist/pages/SM-8.6/LoginPage.d.ts +0 -22
  100. package/dist/pages/SM-8.6/LoginPage.js +0 -123
  101. package/dist/pages/SM-8.6/ModelerCreatePage.d.ts +0 -167
  102. package/dist/pages/SM-8.6/ModelerCreatePage.js +0 -852
  103. package/dist/pages/SM-8.6/ModelerHomePage.d.ts +0 -41
  104. package/dist/pages/SM-8.6/ModelerHomePage.js +0 -150
  105. package/dist/pages/SM-8.6/NavigationPage.d.ts +0 -42
  106. package/dist/pages/SM-8.6/NavigationPage.js +0 -119
  107. package/dist/pages/SM-8.6/OperateHomePage.d.ts +0 -23
  108. package/dist/pages/SM-8.6/OperateHomePage.js +0 -65
  109. package/dist/pages/SM-8.6/OperateProcessInstancePage.d.ts +0 -22
  110. package/dist/pages/SM-8.6/OperateProcessInstancePage.js +0 -139
  111. package/dist/pages/SM-8.6/OperateProcessesPage.d.ts +0 -33
  112. package/dist/pages/SM-8.6/OperateProcessesPage.js +0 -166
  113. package/dist/pages/SM-8.6/OptimizeCollectionsPage.d.ts +0 -15
  114. package/dist/pages/SM-8.6/OptimizeCollectionsPage.js +0 -44
  115. package/dist/pages/SM-8.6/OptimizeDashboardPage.d.ts +0 -14
  116. package/dist/pages/SM-8.6/OptimizeDashboardPage.js +0 -56
  117. package/dist/pages/SM-8.6/OptimizeHomePage.d.ts +0 -19
  118. package/dist/pages/SM-8.6/OptimizeHomePage.js +0 -62
  119. package/dist/pages/SM-8.6/OptimizeReportPage.d.ts +0 -50
  120. package/dist/pages/SM-8.6/OptimizeReportPage.js +0 -162
  121. package/dist/pages/SM-8.6/PlayPage.d.ts +0 -19
  122. package/dist/pages/SM-8.6/PlayPage.js +0 -103
  123. package/dist/pages/SM-8.6/SettingsPage.d.ts +0 -10
  124. package/dist/pages/SM-8.6/SettingsPage.js +0 -20
  125. package/dist/pages/SM-8.6/TaskDetailsPage.d.ts +0 -64
  126. package/dist/pages/SM-8.6/TaskDetailsPage.js +0 -240
  127. package/dist/pages/SM-8.6/TaskPanelPage.d.ts +0 -22
  128. package/dist/pages/SM-8.6/TaskPanelPage.js +0 -68
  129. package/dist/pages/SM-8.6/TaskProcessesPage.d.ts +0 -11
  130. package/dist/pages/SM-8.6/TaskProcessesPage.js +0 -31
  131. package/dist/pages/SM-8.6/UtlitiesPage.d.ts +0 -21
  132. package/dist/pages/SM-8.6/UtlitiesPage.js +0 -207
  133. package/dist/pages/SM-8.6/optimizeReportUtils.d.ts +0 -6
  134. package/dist/pages/SM-8.6/optimizeReportUtils.js +0 -42
  135. package/dist/pages/c8Run-8.6/OperateHomePage.d.ts +0 -20
  136. package/dist/pages/c8Run-8.6/OperateHomePage.js +0 -52
  137. package/dist/pages/c8Run-8.6/OperateLoginPage.d.ts +0 -14
  138. package/dist/pages/c8Run-8.6/OperateLoginPage.js +0 -37
  139. package/dist/pages/c8Run-8.6/OperateProcessInstancePage.d.ts +0 -17
  140. package/dist/pages/c8Run-8.6/OperateProcessInstancePage.js +0 -76
  141. package/dist/pages/c8Run-8.6/OperateProcessesPage.d.ts +0 -20
  142. package/dist/pages/c8Run-8.6/OperateProcessesPage.js +0 -84
  143. package/dist/pages/c8Run-8.6/TaskDetailsPage.d.ts +0 -65
  144. package/dist/pages/c8Run-8.6/TaskDetailsPage.js +0 -219
  145. package/dist/pages/c8Run-8.6/TaskListLoginPage.d.ts +0 -14
  146. package/dist/pages/c8Run-8.6/TaskListLoginPage.js +0 -37
  147. package/dist/pages/c8Run-8.6/TaskPanelPage.d.ts +0 -23
  148. package/dist/pages/c8Run-8.6/TaskPanelPage.js +0 -76
  149. package/dist/pages/c8Run-8.6/UtilitiesPage.d.ts +0 -6
  150. package/dist/pages/c8Run-8.6/UtilitiesPage.js +0 -45
  151. package/dist/tests/8.6/connectors-user-flows.spec.d.ts +0 -1
  152. package/dist/tests/8.6/connectors-user-flows.spec.js +0 -435
  153. package/dist/tests/8.6/console-user-flows.spec.d.ts +0 -1
  154. package/dist/tests/8.6/console-user-flows.spec.js +0 -193
  155. package/dist/tests/8.6/hto-user-flows.spec.d.ts +0 -1
  156. package/dist/tests/8.6/hto-user-flows.spec.js +0 -365
  157. package/dist/tests/8.6/login.spec.d.ts +0 -1
  158. package/dist/tests/8.6/login.spec.js +0 -27
  159. package/dist/tests/8.6/navigation.spec.d.ts +0 -1
  160. package/dist/tests/8.6/navigation.spec.js +0 -57
  161. package/dist/tests/8.6/operate-access-flow.spec.d.ts +0 -1
  162. package/dist/tests/8.6/operate-access-flow.spec.js +0 -57
  163. package/dist/tests/8.6/optimize-user-flows.spec.d.ts +0 -1
  164. package/dist/tests/8.6/optimize-user-flows.spec.js +0 -231
  165. package/dist/tests/8.6/play.spec.d.ts +0 -1
  166. package/dist/tests/8.6/play.spec.js +0 -94
  167. package/dist/tests/8.6/rba-enabled-user-flows.spec.d.ts +0 -1
  168. package/dist/tests/8.6/rba-enabled-user-flows.spec.js +0 -288
  169. package/dist/tests/8.6/smoke-tests.spec.d.ts +0 -1
  170. package/dist/tests/8.6/smoke-tests.spec.js +0 -188
  171. package/dist/tests/8.6/test-setup.spec.d.ts +0 -1
  172. package/dist/tests/8.6/test-setup.spec.js +0 -68
  173. package/dist/tests/8.6/web-modeler-user-flows.spec.d.ts +0 -1
  174. package/dist/tests/8.6/web-modeler-user-flows.spec.js +0 -692
  175. package/dist/tests/SM-8.6/connectors-user-flows.spec.d.ts +0 -1
  176. package/dist/tests/SM-8.6/connectors-user-flows.spec.js +0 -247
  177. package/dist/tests/SM-8.6/console-user-flows.spec.d.ts +0 -1
  178. package/dist/tests/SM-8.6/console-user-flows.spec.js +0 -55
  179. package/dist/tests/SM-8.6/hto-user-flows.spec.d.ts +0 -1
  180. package/dist/tests/SM-8.6/hto-user-flows.spec.js +0 -393
  181. package/dist/tests/SM-8.6/license-key-user-flows.spec.d.ts +0 -1
  182. package/dist/tests/SM-8.6/license-key-user-flows.spec.js +0 -462
  183. package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.d.ts +0 -1
  184. package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.js +0 -500
  185. package/dist/tests/SM-8.6/optimize-user-flows.spec.d.ts +0 -1
  186. package/dist/tests/SM-8.6/optimize-user-flows.spec.js +0 -186
  187. package/dist/tests/SM-8.6/play.spec.d.ts +0 -1
  188. package/dist/tests/SM-8.6/play.spec.js +0 -87
  189. package/dist/tests/SM-8.6/rba-enabled-user-flows.spec.d.ts +0 -1
  190. package/dist/tests/SM-8.6/rba-enabled-user-flows.spec.js +0 -242
  191. package/dist/tests/SM-8.6/smoke-tests.spec.d.ts +0 -1
  192. package/dist/tests/SM-8.6/smoke-tests.spec.js +0 -158
  193. package/dist/tests/SM-8.6/test-setup.spec.d.ts +0 -1
  194. package/dist/tests/SM-8.6/test-setup.spec.js +0 -134
  195. package/dist/tests/SM-8.6/web-modeler-user-flows.spec.d.ts +0 -1
  196. package/dist/tests/SM-8.6/web-modeler-user-flows.spec.js +0 -126
  197. package/dist/tests/c8Run-8.6/api-tests.spec.d.ts +0 -1
  198. package/dist/tests/c8Run-8.6/api-tests.spec.js +0 -67
  199. package/dist/tests/c8Run-8.6/connectors-user-flows.spec.d.ts +0 -1
  200. package/dist/tests/c8Run-8.6/connectors-user-flows.spec.js +0 -119
  201. package/dist/tests/c8Run-8.6/hto-user-flows.spec.d.ts +0 -1
  202. package/dist/tests/c8Run-8.6/hto-user-flows.spec.js +0 -199
  203. package/dist/tests/c8Run-8.6/login.spec.d.ts +0 -1
  204. package/dist/tests/c8Run-8.6/login.spec.js +0 -22
@@ -1,505 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IdentityUsersPage = void 0;
4
- const test_1 = require("@playwright/test");
5
- const sleep_1 = require("../../utils/sleep");
6
- class IdentityUsersPage {
7
- page;
8
- usersTab;
9
- optionsButton;
10
- editUserMenuItem;
11
- operationsEngineerCheckbox;
12
- developerCheckbox;
13
- analystCheckbox;
14
- confirmButton;
15
- settingsTab;
16
- optInButton;
17
- optInCheckbox;
18
- optInAICheckbox;
19
- newContextPadButton;
20
- newContextPadButtonText;
21
- mainUser;
22
- authorizedResources;
23
- noAuthorizedResourceMessage;
24
- createResourceAuthorizationButton;
25
- createResourceAuthorizationDialog;
26
- nextButton;
27
- createButton;
28
- idComboBox;
29
- readPermissionCheckbox;
30
- startProcessIPermissionCheckbox;
31
- dialog;
32
- rows;
33
- deleteAuthorisedResourceButton;
34
- deleteAuthorisedResourceSubButton;
35
- noGroupsHeading;
36
- createFirstGroupButton;
37
- createGroupDialoge;
38
- assignMembersButton;
39
- assignMembersSubButton;
40
- assignMembersSearchbox;
41
- assignMembersSearchResult;
42
- organizationManagementLink;
43
- deleteButton;
44
- deleteSubButton;
45
- createGroupButton;
46
- groupsTab;
47
- groupNameInput;
48
- createGroupSubButton;
49
- filterTableSearchbox;
50
- assignAuthorizationButton;
51
- constructor(page) {
52
- this.page = page;
53
- this.usersTab = page.getByRole('tab', { name: 'Users' });
54
- this.optionsButton = page.getByRole('button', { name: 'Options' });
55
- this.editUserMenuItem = page.getByRole('menuitem', { name: 'Edit User' });
56
- this.operationsEngineerCheckbox = page
57
- .getByRole('group')
58
- .locator('label')
59
- .filter({ hasText: 'Operations Engineer' });
60
- this.developerCheckbox = page
61
- .getByRole('group')
62
- .locator('label')
63
- .filter({ hasText: 'Developer' });
64
- this.analystCheckbox = page
65
- .getByRole('group')
66
- .locator('label')
67
- .filter({ hasText: 'Analyst' });
68
- this.confirmButton = page.getByRole('button', { name: 'Confirm' });
69
- this.settingsTab = page.getByRole('tab', { name: 'Settings' });
70
- this.optInButton = page.getByRole('button', { name: 'Opt-in', exact: true });
71
- this.optInCheckbox = page.getByLabel('I understand and agree to the');
72
- this.optInAICheckbox = page.getByLabel('I understand and agree to Terms for AI Usage');
73
- this.newContextPadButton = page.getByRole('switch').last();
74
- this.newContextPadButtonText = page
75
- .locator('[class= "cds--toggle__text"]')
76
- .last();
77
- this.mainUser = page
78
- .getByRole('row')
79
- .filter({ hasText: process.env.C8_USERNAME });
80
- this.authorizedResources = page.getByRole('tab', {
81
- name: 'authorizations',
82
- });
83
- this.noAuthorizedResourceMessage = page.getByText("You haven't created any resource authorizations yet", { exact: true });
84
- this.createResourceAuthorizationButton = page.getByRole('button', {
85
- name: 'Create resource authorization',
86
- exact: true,
87
- });
88
- this.createResourceAuthorizationDialog = page.getByRole('dialog', {
89
- name: 'Create resource authorizations',
90
- exact: true,
91
- });
92
- this.nextButton = this.createResourceAuthorizationDialog.getByRole('button', {
93
- name: 'Next',
94
- });
95
- this.createButton = this.createResourceAuthorizationDialog.getByRole('button', {
96
- name: 'Create',
97
- });
98
- this.idComboBox = page.getByRole('combobox', { name: 'ID' });
99
- this.readPermissionCheckbox = page
100
- .locator('label')
101
- .filter({ hasText: 'ReadRead-only access to' });
102
- this.startProcessIPermissionCheckbox = page.getByRole('checkbox', {
103
- name: 'Start process instance',
104
- });
105
- this.dialog = page.getByRole('dialog');
106
- this.deleteAuthorisedResourceButton = page.getByRole('button', {
107
- name: 'Delete',
108
- });
109
- this.deleteAuthorisedResourceSubButton = page.getByRole('button', {
110
- name: 'danger Delete',
111
- });
112
- this.groupsTab = page.getByRole('tab', { name: 'Groups' });
113
- this.createGroupButton = page.getByRole('button', {
114
- name: 'create a group',
115
- });
116
- this.createGroupSubButton = page
117
- .getByRole('button', {
118
- name: 'create a group',
119
- })
120
- .last();
121
- this.groupNameInput = page.getByRole('textbox', { name: 'name' });
122
- this.rows = this.page.getByRole('row');
123
- this.createGroupButton = page.getByRole('button', {
124
- name: 'create group',
125
- });
126
- this.noGroupsHeading = page.getByRole('heading', {
127
- name: 'you don’t have any groups yet',
128
- });
129
- this.createFirstGroupButton = page.getByRole('button', {
130
- name: 'create a group',
131
- });
132
- this.createGroupDialoge = page.getByRole('dialog', {
133
- name: 'create group',
134
- });
135
- this.assignMembersButton = page.getByRole('button', {
136
- name: 'assign members',
137
- });
138
- this.assignMembersSubButton = page
139
- .getByRole('button', {
140
- name: 'assign',
141
- })
142
- .last();
143
- this.assignMembersSearchbox = page.getByRole('searchbox', {
144
- name: 'search by full name or email address',
145
- });
146
- this.assignMembersSearchResult = page.locator('.cds--list-box__menu-item');
147
- this.organizationManagementLink = page.getByRole('link', {
148
- name: 'organization management',
149
- });
150
- this.deleteButton = page.getByRole('button', { name: 'delete' });
151
- this.deleteSubButton = page
152
- .getByRole('button', {
153
- name: 'danger',
154
- })
155
- .last();
156
- this.groupsTab = page.getByRole('tab', { name: 'Groups' });
157
- this.groupNameInput = page.getByRole('textbox', { name: 'name' });
158
- this.createGroupSubButton = page
159
- .getByRole('button', {
160
- name: 'create group',
161
- })
162
- .last();
163
- this.filterTableSearchbox = page.getByRole('searchbox', {
164
- name: 'Filter table',
165
- });
166
- this.assignAuthorizationButton = page.getByRole('button', {
167
- name: 'Assign authorization',
168
- exact: true,
169
- });
170
- }
171
- async clickUsersTab() {
172
- await this.usersTab.click({ timeout: 60000 });
173
- }
174
- async clickMainUser() {
175
- await (0, test_1.expect)(this.mainUser).toBeVisible({ timeout: 60000 });
176
- await this.mainUser.click();
177
- }
178
- async clickAuthorizations() {
179
- await (0, test_1.expect)(this.authorizedResources).toBeVisible({ timeout: 60000 });
180
- await this.authorizedResources.click();
181
- }
182
- async clickCreateAuthorizedResourceButton() {
183
- await (0, test_1.expect)(this.createButton).toBeVisible({ timeout: 60000 });
184
- await this.createButton.click();
185
- }
186
- async processIdResourceAssertion(processId) {
187
- await (0, test_1.expect)(this.page.getByRole('row', { name: processId })).toBeVisible({
188
- timeout: 90000,
189
- });
190
- }
191
- async clickCreateResourceAuthorizationButton() {
192
- await (0, test_1.expect)(this.createResourceAuthorizationButton).toBeVisible({
193
- timeout: 60000,
194
- });
195
- await this.createResourceAuthorizationButton.click();
196
- }
197
- async clickNextButton() {
198
- await (0, test_1.expect)(this.nextButton).toBeVisible({
199
- timeout: 60000,
200
- });
201
- await this.nextButton.click();
202
- }
203
- async clickProcessIdInput() {
204
- await (0, test_1.expect)(this.idComboBox).toBeVisible({ timeout: 60000 });
205
- await this.idComboBox.click();
206
- }
207
- async fillProcessIdInput(processId) {
208
- await this.idComboBox.fill(processId);
209
- }
210
- async checkReadPermissionCheckbox() {
211
- await (0, test_1.expect)(this.readPermissionCheckbox).toBeVisible({ timeout: 60000 });
212
- if (!(await this.readPermissionCheckbox.isChecked())) {
213
- await this.readPermissionCheckbox.click({ force: true });
214
- }
215
- }
216
- async checkStartInstancePermissionCheckbox() {
217
- if (!(await this.startProcessIPermissionCheckbox.isChecked())) {
218
- await this.startProcessIPermissionCheckbox.click({ force: true });
219
- }
220
- }
221
- async authorizedResourceAssertion(processId, maxRetries = 3, retryDelay = 20000) {
222
- for (let attempt = 0; attempt < maxRetries; attempt++) {
223
- try {
224
- await this.page.reload();
225
- await this.clickAuthorizations();
226
- await (0, test_1.expect)(this.page.getByRole('row', { name: processId })).toBeVisible({ timeout: 90000 });
227
- return;
228
- }
229
- catch (error) {
230
- if (attempt < maxRetries - 1) {
231
- console.warn(`Attempt ${attempt + 1} failed. Retrying...`);
232
- await new Promise((resolve) => setTimeout(resolve, retryDelay));
233
- }
234
- else {
235
- throw new Error(`Assertion failed after ${maxRetries} attempts`);
236
- }
237
- }
238
- }
239
- }
240
- async clickOptionsButton() {
241
- await this.optionsButton.click({ timeout: 90000 });
242
- }
243
- async clickEditUserMenuItem() {
244
- await this.editUserMenuItem.click({ timeout: 60000 });
245
- }
246
- async clickOperationsEngineerCheckbox() {
247
- await this.operationsEngineerCheckbox.click();
248
- }
249
- async checkDeveloperCheckbox() {
250
- if (!(await this.developerCheckbox.isChecked())) {
251
- await this.developerCheckbox.click({ timeout: 60000 });
252
- }
253
- }
254
- async uncheckDeveloperCheckbox() {
255
- if (await this.developerCheckbox.isChecked()) {
256
- await this.developerCheckbox.click({ timeout: 60000 });
257
- }
258
- }
259
- async checkAnalystCheckbox() {
260
- if (!(await this.analystCheckbox.isChecked())) {
261
- await this.analystCheckbox.click({ timeout: 60000 });
262
- }
263
- }
264
- async uncheckAnalystCheckbox() {
265
- if (await this.analystCheckbox.isChecked()) {
266
- await this.analystCheckbox.click({ timeout: 60000 });
267
- }
268
- }
269
- async clickConfirmButton() {
270
- await this.confirmButton.click({ timeout: 60000 });
271
- }
272
- async clickSettingsTab() {
273
- await this.settingsTab.click({ timeout: 120000 });
274
- try {
275
- await (0, test_1.expect)(this.page.getByRole('heading', { name: 'Alpha features' })).toBeVisible({
276
- timeout: 120000,
277
- });
278
- }
279
- catch (error) {
280
- await this.settingsTab.click({ timeout: 120000 });
281
- }
282
- }
283
- async clickOptInButton() {
284
- await this.optInButton.click({ timeout: 60000 });
285
- }
286
- async scrollToOptInCheckbox() {
287
- await this.page
288
- .getByText('Access and Use of the Camunda')
289
- .scrollIntoViewIfNeeded();
290
- await this.page
291
- .getByText('Pre-release. The Customer')
292
- .scrollIntoViewIfNeeded();
293
- await this.page
294
- .getByText('Confidential Information. The')
295
- .scrollIntoViewIfNeeded();
296
- await this.page
297
- .getByText('THESE TERMS DO NOT ENTITLE')
298
- .scrollIntoViewIfNeeded();
299
- await this.page
300
- .getByText('Rights and Obligations Upon')
301
- .scrollIntoViewIfNeeded();
302
- await this.page
303
- .getByText('NOTWITHSTANDING ANYTHING TO')
304
- .scrollIntoViewIfNeeded();
305
- await this.page
306
- .getByRole('heading', { name: 'General' })
307
- .scrollIntoViewIfNeeded();
308
- await this.page
309
- .getByText('Liability. Camunda is liable')
310
- .scrollIntoViewIfNeeded();
311
- await this.page
312
- .getByLabel('I understand and agree to the')
313
- .scrollIntoViewIfNeeded();
314
- }
315
- async checkOptInCheckbox() {
316
- await this.optInCheckbox.check({ timeout: 90000 });
317
- }
318
- async clickNewContextPadButton() {
319
- try {
320
- await (0, test_1.expect)(this.newContextPadButtonText).toHaveText('Enabled', {
321
- timeout: 90000,
322
- });
323
- }
324
- catch {
325
- await this.page.reload();
326
- await this.newContextPadButton.click({ timeout: 90000 });
327
- await (0, test_1.expect)(this.newContextPadButtonText).toHaveText('Enabled', {
328
- timeout: 60000,
329
- });
330
- }
331
- }
332
- async enableAlphaFeature(name) {
333
- await (0, test_1.expect)(this.rows.first()).toBeVisible({ timeout: 10000 });
334
- const alphaFeature = this.rows.filter({ hasText: name }).first();
335
- if ((await alphaFeature.count()) < 1) {
336
- console.error(`No alpha feature(${name}) is found.`);
337
- return;
338
- }
339
- //Opt-in The Alpha Feature
340
- const alphaFeatureOptInButton = alphaFeature.getByRole('button', {
341
- name: 'Opt-in to enable',
342
- });
343
- if (await alphaFeatureOptInButton.isVisible({ timeout: 10000 })) {
344
- await alphaFeatureOptInButton.click();
345
- await this.optInAICheckbox.scrollIntoViewIfNeeded();
346
- await this.optInAICheckbox.check({ timeout: 90000 });
347
- await (0, sleep_1.sleep)(3000);
348
- }
349
- //Enable Alpha Feature
350
- const toggleText = await alphaFeature
351
- .locator('[class= "cds--toggle__text"]')
352
- .textContent();
353
- console.info(`Previous feature(${name}) setting is ${toggleText}.`);
354
- if (toggleText == 'Enabled') {
355
- console.log(`Feature ${name} is already enabled.`);
356
- return;
357
- }
358
- if (toggleText == 'Disabled') {
359
- await alphaFeature
360
- .locator('[class= "cds--toggle__switch"]')
361
- .first()
362
- .click();
363
- await (0, sleep_1.sleep)(10000);
364
- }
365
- await (0, test_1.expect)(alphaFeature.locator('[class= "cds--toggle__text"]')).toHaveText('Enabled');
366
- }
367
- async deleteAuthorisedResourcesIfExist() {
368
- try {
369
- await (0, test_1.expect)(this.deleteAuthorisedResourceButton.first()).toBeVisible({
370
- timeout: 10000,
371
- });
372
- }
373
- catch (error) {
374
- return; //No authorised resource found in the list
375
- }
376
- try {
377
- let deletes = await this.deleteAuthorisedResourceButton.all();
378
- while (deletes.length > 0) {
379
- const deleteButton = deletes[0];
380
- if (await deleteButton.isVisible()) {
381
- await deleteButton.click({ timeout: 60000 });
382
- await (0, test_1.expect)(this.dialog).toBeVisible({ timeout: 40000 });
383
- await this.deleteAuthorisedResourceSubButton.click();
384
- await (0, test_1.expect)(this.page.getByText('Deleting...')).not.toBeVisible({
385
- timeout: 60000,
386
- });
387
- }
388
- const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
389
- await sleep(3000);
390
- deletes = await this.deleteAuthorisedResourceButton.all();
391
- }
392
- await (0, test_1.expect)(this.deleteAuthorisedResourceButton).not.toBeVisible({
393
- timeout: 30000,
394
- });
395
- }
396
- catch (error) {
397
- console.error('Error during authorised resource deletion: ', error);
398
- }
399
- }
400
- async optInToAlphaFeatures() {
401
- try {
402
- await (0, test_1.expect)(this.optInButton).toBeVisible({ timeout: 30000 });
403
- await this.clickOptInButton();
404
- await this.scrollToOptInCheckbox();
405
- await this.checkOptInCheckbox();
406
- }
407
- catch {
408
- await (0, test_1.expect)(this.optInButton).not.toBeVisible();
409
- }
410
- }
411
- async clickGroupsTab() {
412
- await this.groupsTab.click({ timeout: 60000 });
413
- }
414
- async clickCreateGroupButton() {
415
- const maxRetries = 3;
416
- for (let retries = 0; retries < maxRetries; retries++) {
417
- try {
418
- if ((await this.noGroupsHeading.isVisible({ timeout: 120000 })) == false) {
419
- await this.createGroupButton.click();
420
- }
421
- else {
422
- await this.createFirstGroupButton.click();
423
- }
424
- return;
425
- }
426
- catch (error) {
427
- console.error(`Click attempt ${retries + 1} failed`);
428
- }
429
- }
430
- throw new Error(`Failed to click the button after ${maxRetries} attempts.`);
431
- }
432
- async fillGroupNameInput(name) {
433
- await this.groupNameInput.fill(name);
434
- }
435
- async clickCreateGroupSubButton() {
436
- await this.createGroupSubButton.click();
437
- }
438
- async clickUserGroup(name) {
439
- await this.page.getByRole('cell', { name: name }).click();
440
- }
441
- async clickAssignMembers() {
442
- await this.assignMembersButton.click();
443
- }
444
- async fillAssignMembers(names) {
445
- for (const name of names) {
446
- await this.assignMembersSearchbox.click();
447
- await this.assignMembersSearchbox.fill(name);
448
- await this.assignMembersSearchResult
449
- .filter({ hasText: name })
450
- .click({ timeout: 120000 });
451
- }
452
- }
453
- async filterTable(names) {
454
- for (const name of names) {
455
- await this.filterTableSearchbox.click({ timeout: 60000 });
456
- await this.filterTableSearchbox.fill(name);
457
- }
458
- }
459
- async clickAssignSubButton() {
460
- await this.assignMembersSubButton.click();
461
- }
462
- async clickOrganizationManagementLink() {
463
- await this.organizationManagementLink.click();
464
- }
465
- async deleteAllGroups() {
466
- try {
467
- await this.deleteButton
468
- .first()
469
- .waitFor({ state: 'visible', timeout: 60000 });
470
- const count = await this.deleteButton.count();
471
- if (count > 0) {
472
- for (let i = 0; i < count; i++) {
473
- await this.deleteButton.nth(i).click({ timeout: 60000 });
474
- await this.deleteSubButton.click({ timeout: 60000 });
475
- }
476
- }
477
- }
478
- catch (error) {
479
- console.log('Delete Button Not Clicked ' + error);
480
- }
481
- }
482
- async createResourceAuthorization(processId) {
483
- try {
484
- await this.clickCreateResourceAuthorizationButton();
485
- }
486
- catch {
487
- await this.clickAssignAuthorizationButton();
488
- }
489
- await (0, test_1.expect)(this.createResourceAuthorizationDialog).toBeVisible({
490
- timeout: 60000,
491
- });
492
- await this.clickNextButton();
493
- await this.clickProcessIdInput();
494
- await this.fillProcessIdInput(processId);
495
- await this.clickNextButton();
496
- await this.checkReadPermissionCheckbox();
497
- await this.checkStartInstancePermissionCheckbox();
498
- await this.clickCreateAuthorizedResourceButton();
499
- await this.processIdResourceAssertion(processId);
500
- }
501
- async clickAssignAuthorizationButton() {
502
- await this.assignAuthorizationButton.click();
503
- }
504
- }
505
- exports.IdentityUsersPage = IdentityUsersPage;
@@ -1,15 +0,0 @@
1
- import { Page, Locator } from '@playwright/test';
2
- declare class KeycloakAdminPage {
3
- private page;
4
- readonly keycloakBanner: Locator;
5
- constructor(page: Page);
6
- toBeVisible(): Promise<void>;
7
- switchToCamundaPlatform(): Promise<void>;
8
- clickUsersTab(): Promise<void>;
9
- clickAddUser(): Promise<void>;
10
- fillUser(username: string): Promise<void>;
11
- saveUser(): Promise<void>;
12
- fillPassword(password: string): Promise<void>;
13
- savePassword(): Promise<void>;
14
- }
15
- export { KeycloakAdminPage };
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.KeycloakAdminPage = void 0;
4
- const test_1 = require("@playwright/test");
5
- const sleep_1 = require("../../utils/sleep");
6
- class KeycloakAdminPage {
7
- page;
8
- keycloakBanner;
9
- constructor(page) {
10
- this.page = page;
11
- this.keycloakBanner = page.locator('#kc-main-content-page-container');
12
- }
13
- async toBeVisible() {
14
- await (0, test_1.expect)(this.keycloakBanner).toBeVisible({ timeout: 60000 });
15
- }
16
- async switchToCamundaPlatform() {
17
- const realmSelector = this.page.getByTestId('realmSelector');
18
- await realmSelector.click();
19
- await this.page.getByText('camunda-platform').click();
20
- const mainLocator = this.page.locator('#kc-main-content-page-container');
21
- await (0, test_1.expect)(mainLocator).toBeVisible();
22
- }
23
- async clickUsersTab() {
24
- await this.page.click('[id="nav-item-users"]');
25
- }
26
- async clickAddUser() {
27
- await this.page.getByTestId('add-user').click();
28
- }
29
- async fillUser(username) {
30
- await this.page.getByTestId('username').fill(username);
31
- await this.page.getByTestId('firstName').fill(username);
32
- await this.page.getByTestId('lastName').fill(username);
33
- await this.page.getByTestId('email').fill(username + '@camunda.com');
34
- }
35
- async saveUser() {
36
- await this.page.getByTestId('create-user').click();
37
- }
38
- async fillPassword(password) {
39
- await this.page.getByTestId('credentials').click();
40
- await this.page.getByTestId('no-credentials-empty-action').click();
41
- await this.page.getByTestId('passwordField').fill(password);
42
- await this.page.getByTestId('passwordConfirmationField').fill(password);
43
- }
44
- async savePassword() {
45
- await this.page
46
- .locator('label.pf-v5-c-switch[for="temporaryPassword"]')
47
- .click();
48
- await this.page.getByTestId('confirm').click();
49
- await this.page.getByTestId('confirm').click();
50
- // if the browser is firefox, delay for 500 ms
51
- if (await this.page.evaluate(() => navigator.userAgent.includes('Firefox'))) {
52
- await (0, sleep_1.sleep)(500);
53
- }
54
- }
55
- }
56
- exports.KeycloakAdminPage = KeycloakAdminPage;
@@ -1,11 +0,0 @@
1
- import { Page, Locator } from '@playwright/test';
2
- declare class KeycloakLoginPage {
3
- private page;
4
- readonly keycloakBanner: Locator;
5
- constructor(page: Page);
6
- toBeVisible(): Promise<void>;
7
- fillUsername(username: string): Promise<void>;
8
- fillPassword(password: string): Promise<void>;
9
- clickLogin(): Promise<void>;
10
- }
11
- export { KeycloakLoginPage };
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.KeycloakLoginPage = void 0;
4
- const test_1 = require("@playwright/test");
5
- class KeycloakLoginPage {
6
- page;
7
- keycloakBanner;
8
- constructor(page) {
9
- this.page = page;
10
- this.keycloakBanner = page.locator('[class="kc-logo-text"]');
11
- }
12
- async toBeVisible() {
13
- await (0, test_1.expect)(this.keycloakBanner).toBeVisible({ timeout: 60000 });
14
- }
15
- async fillUsername(username) {
16
- await this.page.fill('#username', username);
17
- }
18
- async fillPassword(password) {
19
- await this.page.fill('#password', password);
20
- }
21
- async clickLogin() {
22
- await this.page.click('input[type="submit"]');
23
- }
24
- }
25
- exports.KeycloakLoginPage = KeycloakLoginPage;
@@ -1,15 +0,0 @@
1
- import { NavigationPage } from '../SM-8.6/NavigationPage';
2
- import { IdentityPage } from '../SM-8.6/IdentityPage';
3
- import { KeycloakLoginPage } from '../SM-8.6/KeycloakLoginPage';
4
- import { KeycloakAdminPage } from '../SM-8.6/KeycloakAdminPage';
5
- export declare const keycloakAdminCredentials: () => {
6
- username: string;
7
- password: string;
8
- };
9
- export declare const adminUser = "demo";
10
- export declare const adminPassword: string;
11
- export declare const setupKeycloakUser: (navigationPage: NavigationPage, identityPage: IdentityPage, keycloakLoginPage: KeycloakLoginPage, keycloakAdminPage: KeycloakAdminPage) => Promise<{
12
- testUsername: string;
13
- testPassword: string;
14
- }>;
15
- export declare const createUser: (navigationPage: NavigationPage, identityPage: IdentityPage, keycloakLoginPage: KeycloakLoginPage, keycloakAdminPage: KeycloakAdminPage, username: string, password: string) => Promise<void>;
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createUser = exports.setupKeycloakUser = exports.adminPassword = exports.adminUser = exports.keycloakAdminCredentials = void 0;
4
- const keycloakAdminCredentials = () => {
5
- return {
6
- username: 'admin',
7
- password: process.env.DISTRO_QA_E2E_TESTS_KEYCLOAK_PASSWORD,
8
- };
9
- };
10
- exports.keycloakAdminCredentials = keycloakAdminCredentials;
11
- exports.adminUser = 'demo';
12
- exports.adminPassword = process.env.DISTRO_QA_E2E_TESTS_IDENTITY_FIRSTUSER_PASSWORD;
13
- const setupKeycloakUser = async (navigationPage, identityPage, keycloakLoginPage, keycloakAdminPage) => {
14
- const testUsername = `test-user-${new Date().getTime()}-${Math.random()
15
- .toString(36)
16
- .substring(7)}`;
17
- const testPassword = 'test-password';
18
- await createKeycloakUser(navigationPage, keycloakLoginPage, keycloakAdminPage, testUsername, testPassword);
19
- await createIdentityUser(navigationPage, identityPage, testUsername);
20
- return { testUsername, testPassword };
21
- };
22
- exports.setupKeycloakUser = setupKeycloakUser;
23
- const createUser = async (navigationPage, identityPage, keycloakLoginPage, keycloakAdminPage, username, password) => {
24
- await createKeycloakUser(navigationPage, keycloakLoginPage, keycloakAdminPage, username, password);
25
- await createIdentityUser(navigationPage, identityPage, username);
26
- };
27
- exports.createUser = createUser;
28
- const createKeycloakUser = async (navigationPage, keycloakLoginPage, keycloakAdminPage, username, password) => {
29
- await navigationPage.goToKeycloak();
30
- await keycloakLoginPage.toBeVisible();
31
- await keycloakLoginPage.fillUsername((0, exports.keycloakAdminCredentials)().username);
32
- await keycloakLoginPage.fillPassword((0, exports.keycloakAdminCredentials)().password);
33
- await keycloakLoginPage.clickLogin();
34
- await keycloakAdminPage.toBeVisible();
35
- await keycloakAdminPage.switchToCamundaPlatform();
36
- await keycloakAdminPage.clickUsersTab();
37
- await keycloakAdminPage.clickAddUser();
38
- await keycloakAdminPage.fillUser(username);
39
- await keycloakAdminPage.saveUser();
40
- await keycloakAdminPage.fillPassword(password);
41
- await keycloakAdminPage.savePassword();
42
- };
43
- const createIdentityUser = async (navigationPage, identityPage, username) => {
44
- await navigationPage.goToIdentity();
45
- await identityPage.clickUsersLink();
46
- await identityPage.clickUser(username);
47
- await identityPage.clickAssignedRolesTab();
48
- await identityPage.clickAssignRolesButton();
49
- await identityPage.clickOperateCheckbox();
50
- await identityPage.clickTasklistCheckbox();
51
- await identityPage.clickOptimizeCheckbox();
52
- await identityPage.clickModelerCheckbox();
53
- await identityPage.clickConsoleCheckbox();
54
- await identityPage.clickZeebeCheckbox();
55
- await identityPage.clickIdentityCheckbox();
56
- await identityPage.clickModelerAdminCheckbox();
57
- await identityPage.clickAddButton();
58
- };