@camunda/e2e-test-suite 0.0.202 → 0.0.203

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 (120) hide show
  1. package/README.md +1 -0
  2. package/dist/fixtures/8.10.d.ts +75 -0
  3. package/dist/fixtures/8.10.js +187 -0
  4. package/dist/pages/8.10/AppsPage.d.ts +38 -0
  5. package/dist/pages/8.10/AppsPage.js +398 -0
  6. package/dist/pages/8.10/Authorization.d.ts +31 -0
  7. package/dist/pages/8.10/Authorization.js +143 -0
  8. package/dist/pages/8.10/ClientCredentialsDetailsPage.d.ts +12 -0
  9. package/dist/pages/8.10/ClientCredentialsDetailsPage.js +36 -0
  10. package/dist/pages/8.10/ClusterDetailsPage.d.ts +81 -0
  11. package/dist/pages/8.10/ClusterDetailsPage.js +475 -0
  12. package/dist/pages/8.10/ClusterPage.d.ts +63 -0
  13. package/dist/pages/8.10/ClusterPage.js +349 -0
  14. package/dist/pages/8.10/ClusterSecretsPage.d.ts +46 -0
  15. package/dist/pages/8.10/ClusterSecretsPage.js +219 -0
  16. package/dist/pages/8.10/ConnectorMarketplacePage.d.ts +19 -0
  17. package/dist/pages/8.10/ConnectorMarketplacePage.js +56 -0
  18. package/dist/pages/8.10/ConnectorSettingsPage.d.ts +38 -0
  19. package/dist/pages/8.10/ConnectorSettingsPage.js +142 -0
  20. package/dist/pages/8.10/ConnectorTemplatePage.d.ts +11 -0
  21. package/dist/pages/8.10/ConnectorTemplatePage.js +34 -0
  22. package/dist/pages/8.10/ConsoleOrganizationPage.d.ts +76 -0
  23. package/dist/pages/8.10/ConsoleOrganizationPage.js +402 -0
  24. package/dist/pages/8.10/FormJsPage.d.ts +28 -0
  25. package/dist/pages/8.10/FormJsPage.js +85 -0
  26. package/dist/pages/8.10/HomePage.d.ts +27 -0
  27. package/dist/pages/8.10/HomePage.js +88 -0
  28. package/dist/pages/8.10/IdpCreatePage.d.ts +81 -0
  29. package/dist/pages/8.10/IdpCreatePage.js +355 -0
  30. package/dist/pages/8.10/LoginPage.d.ts +42 -0
  31. package/dist/pages/8.10/LoginPage.js +93 -0
  32. package/dist/pages/8.10/ModelerCreatePage.d.ts +224 -0
  33. package/dist/pages/8.10/ModelerCreatePage.js +1166 -0
  34. package/dist/pages/8.10/ModelerHomePage.d.ts +54 -0
  35. package/dist/pages/8.10/ModelerHomePage.js +235 -0
  36. package/dist/pages/8.10/ModelerUserInvitePage.d.ts +29 -0
  37. package/dist/pages/8.10/ModelerUserInvitePage.js +136 -0
  38. package/dist/pages/8.10/OCIdentityAuthorizationsPage.d.ts +11 -0
  39. package/dist/pages/8.10/OCIdentityAuthorizationsPage.js +32 -0
  40. package/dist/pages/8.10/OCIdentityGroupsPage.d.ts +38 -0
  41. package/dist/pages/8.10/OCIdentityGroupsPage.js +166 -0
  42. package/dist/pages/8.10/OCIdentityHomePage.d.ts +18 -0
  43. package/dist/pages/8.10/OCIdentityHomePage.js +57 -0
  44. package/dist/pages/8.10/OCIdentityMappingRulesPage.d.ts +23 -0
  45. package/dist/pages/8.10/OCIdentityMappingRulesPage.js +124 -0
  46. package/dist/pages/8.10/OCIdentityRolesPage.d.ts +40 -0
  47. package/dist/pages/8.10/OCIdentityRolesPage.js +182 -0
  48. package/dist/pages/8.10/OperateHomePage.d.ts +23 -0
  49. package/dist/pages/8.10/OperateHomePage.js +73 -0
  50. package/dist/pages/8.10/OperateProcessInstancePage.d.ts +23 -0
  51. package/dist/pages/8.10/OperateProcessInstancePage.js +94 -0
  52. package/dist/pages/8.10/OperateProcessesPage.d.ts +25 -0
  53. package/dist/pages/8.10/OperateProcessesPage.js +103 -0
  54. package/dist/pages/8.10/OptimizeCollectionsPage.d.ts +17 -0
  55. package/dist/pages/8.10/OptimizeCollectionsPage.js +68 -0
  56. package/dist/pages/8.10/OptimizeDashboardPage.d.ts +11 -0
  57. package/dist/pages/8.10/OptimizeDashboardPage.js +65 -0
  58. package/dist/pages/8.10/OptimizeHomePage.d.ts +13 -0
  59. package/dist/pages/8.10/OptimizeHomePage.js +55 -0
  60. package/dist/pages/8.10/OptimizeReportPage.d.ts +48 -0
  61. package/dist/pages/8.10/OptimizeReportPage.js +159 -0
  62. package/dist/pages/8.10/PlayPage.d.ts +14 -0
  63. package/dist/pages/8.10/PlayPage.js +68 -0
  64. package/dist/pages/8.10/SettingsPage.d.ts +10 -0
  65. package/dist/pages/8.10/SettingsPage.js +43 -0
  66. package/dist/pages/8.10/SignUpPage.d.ts +42 -0
  67. package/dist/pages/8.10/SignUpPage.js +134 -0
  68. package/dist/pages/8.10/TaskDetailsPage.d.ts +75 -0
  69. package/dist/pages/8.10/TaskDetailsPage.js +269 -0
  70. package/dist/pages/8.10/TaskPanelPage.d.ts +21 -0
  71. package/dist/pages/8.10/TaskPanelPage.js +93 -0
  72. package/dist/pages/8.10/TaskProcessesPage.d.ts +13 -0
  73. package/dist/pages/8.10/TaskProcessesPage.js +68 -0
  74. package/dist/pages/8.10/UtilitiesPage.d.ts +47 -0
  75. package/dist/pages/8.10/UtilitiesPage.js +489 -0
  76. package/dist/tests/8.10/access-user-role-management.spec.d.ts +1 -0
  77. package/dist/tests/8.10/access-user-role-management.spec.js +323 -0
  78. package/dist/tests/8.10/agentic-ai-user-flows.spec.d.ts +1 -0
  79. package/dist/tests/8.10/agentic-ai-user-flows.spec.js +185 -0
  80. package/dist/tests/8.10/api-tests-v2.spec.d.ts +1 -0
  81. package/dist/tests/8.10/api-tests-v2.spec.js +20 -0
  82. package/dist/tests/8.10/aws-cluster-user-flows.spec.d.ts +1 -0
  83. package/dist/tests/8.10/aws-cluster-user-flows.spec.js +178 -0
  84. package/dist/tests/8.10/cluster-variables.spec.d.ts +1 -0
  85. package/dist/tests/8.10/cluster-variables.spec.js +70 -0
  86. package/dist/tests/8.10/connectors-user-flows.spec.d.ts +1 -0
  87. package/dist/tests/8.10/connectors-user-flows.spec.js +479 -0
  88. package/dist/tests/8.10/console-user-flows.spec.d.ts +1 -0
  89. package/dist/tests/8.10/console-user-flows.spec.js +187 -0
  90. package/dist/tests/8.10/hto-user-flows.spec.d.ts +1 -0
  91. package/dist/tests/8.10/hto-user-flows.spec.js +471 -0
  92. package/dist/tests/8.10/idp-user-flows.spec.d.ts +1 -0
  93. package/dist/tests/8.10/idp-user-flows.spec.js +214 -0
  94. package/dist/tests/8.10/login-negative-tests.spec.d.ts +1 -0
  95. package/dist/tests/8.10/login-negative-tests.spec.js +29 -0
  96. package/dist/tests/8.10/login.spec.d.ts +1 -0
  97. package/dist/tests/8.10/login.spec.js +26 -0
  98. package/dist/tests/8.10/navigation.spec.d.ts +1 -0
  99. package/dist/tests/8.10/navigation.spec.js +65 -0
  100. package/dist/tests/8.10/operate-access-flow.spec.d.ts +1 -0
  101. package/dist/tests/8.10/operate-access-flow.spec.js +51 -0
  102. package/dist/tests/8.10/optimize-api-tests.spec.d.ts +1 -0
  103. package/dist/tests/8.10/optimize-api-tests.spec.js +268 -0
  104. package/dist/tests/8.10/optimize-user-flows.spec.d.ts +1 -0
  105. package/dist/tests/8.10/optimize-user-flows.spec.js +255 -0
  106. package/dist/tests/8.10/play.spec.d.ts +1 -0
  107. package/dist/tests/8.10/play.spec.js +85 -0
  108. package/dist/tests/8.10/rba-enabled-v1-user-flows.spec.d.ts +1 -0
  109. package/dist/tests/8.10/rba-enabled-v1-user-flows.spec.js +443 -0
  110. package/dist/tests/8.10/rba-enabled-v2-user-flows.spec.d.ts +1 -0
  111. package/dist/tests/8.10/rba-enabled-v2-user-flows.spec.js +446 -0
  112. package/dist/tests/8.10/smoke-tests.spec.d.ts +1 -0
  113. package/dist/tests/8.10/smoke-tests.spec.js +181 -0
  114. package/dist/tests/8.10/test-setup.spec.d.ts +1 -0
  115. package/dist/tests/8.10/test-setup.spec.js +94 -0
  116. package/dist/tests/8.10/utr-enabled-user-flows.spec.d.ts +1 -0
  117. package/dist/tests/8.10/utr-enabled-user-flows.spec.js +182 -0
  118. package/dist/tests/8.10/web-modeler-user-flows.spec.d.ts +1 -0
  119. package/dist/tests/8.10/web-modeler-user-flows.spec.js +544 -0
  120. package/package.json +1 -1
@@ -0,0 +1,446 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const test_1 = require("@playwright/test");
4
+ const _8_10_1 = require("../../fixtures/8.10");
5
+ const _setup_1 = require("../../test-setup.js");
6
+ const UtilitiesPage_1 = require("../../pages/8.10/UtilitiesPage");
7
+ const sleep_1 = require("../../utils/sleep");
8
+ const resetSession_1 = require("../../utils/resetSession");
9
+ const roleAuthorizations_1 = require("../../utils/roleAuthorizations");
10
+ const expectTextWithRetry_1 = require("../../utils/assertionHelpers/expectTextWithRetry");
11
+ const expectTextWithPagination_1 = require("../../utils/assertionHelpers/expectTextWithPagination");
12
+ const users_1 = require("../../utils/users");
13
+ const mainUser = (0, users_1.getTestUser)('twentySixthUser');
14
+ _8_10_1.test.describe.parallel('RBA Enabled User Flows Test @tasklistV2', () => {
15
+ const clusterNames = {
16
+ 'RBA On User Flow - No User Permission': 'First RBA V2 Cluster',
17
+ 'RBA On User Flow - Permission for One Process': 'Second RBA V2 Cluster',
18
+ 'RBA On User Flow - Permission for All Processes with Full Permissions': 'Third RBA V2 Cluster',
19
+ 'RBA On User Flow - Permission for Selected Processes Only': 'Fourth RBA V2 Cluster',
20
+ };
21
+ _8_10_1.test.beforeEach(async ({ page, homePage, clusterPage, loginPage, clusterDetailsPage, appsPage }, testInfo) => {
22
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, mainUser, (testInfo.workerIndex + 1) * 1000);
23
+ await (0, test_1.expect)(homePage.clusterTab).toBeVisible({ timeout: 120000 });
24
+ await homePage.clickClusters();
25
+ const clusterName = clusterNames[testInfo.title];
26
+ (0, test_1.expect)(clusterName, `No cluster mapping for test title: "${testInfo.title}")`).toBeTruthy();
27
+ await clusterPage.createClusterIfNotExists(clusterName);
28
+ await (0, UtilitiesPage_1.disableRBA)(clusterName, homePage, clusterPage, clusterDetailsPage, appsPage);
29
+ });
30
+ _8_10_1.test.afterEach(async ({ page }, testInfo) => {
31
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
32
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
33
+ });
34
+ (0, _8_10_1.test)('RBA On User Flow - No User Permission', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, clusterPage, clusterDetailsPage, taskPanelPage, taskProcessesPage, operateHomePage, ocIdentityHomePage, ocIdentityAuthorizationsPage, ocIdentityRolesPage, browser, loginPage, settingsPage, }, testInfo) => {
35
+ _8_10_1.test.slow();
36
+ const clusterName = clusterNames[testInfo.title];
37
+ const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
38
+ const processName = 'RBA_NO_PERM' + randomString;
39
+ const process1 = processName + '1';
40
+ const process2 = processName + '2';
41
+ const role = `rbaNoPermission${randomString}`;
42
+ const testUser = {
43
+ username: process.env.C8_USERNAME_TEST_4,
44
+ password: process.env.C8_PASSWORD_TEST_4,
45
+ };
46
+ await _8_10_1.test.step('Navigate to OC Identity and Assign User To A Role', async () => {
47
+ await appsPage.clickCamundaApps();
48
+ await appsPage.clickAdmin(clusterName);
49
+ await ocIdentityHomePage.clickRolesTab();
50
+ await ocIdentityRolesPage.assignUserToRole(role, testUser.username);
51
+ });
52
+ await _8_10_1.test.step('Create Resource Authorization', async () => {
53
+ await ocIdentityHomePage.clickAuthorizationsTab();
54
+ await ocIdentityAuthorizationsPage.clickResourceTab();
55
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.resourceCreateAuthorization)(role));
56
+ });
57
+ await _8_10_1.test.step('Create Component Authorization', async () => {
58
+ await ocIdentityAuthorizationsPage.clickComponentTab();
59
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.componentAccessAuthorization)(role));
60
+ });
61
+ await _8_10_1.test.step('Create Process Definition Authorizations For Both Processes', async () => {
62
+ await ocIdentityAuthorizationsPage.clickProcessDefinitionTab();
63
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.processInstanceCreateAuthorization)(role, process1));
64
+ await ocIdentityAuthorizationsPage.clickProcessDefinitionTab();
65
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.processInstanceCreateAuthorization)(role, process2));
66
+ });
67
+ await _8_10_1.test.step('Create Component Authorization', async () => {
68
+ await ocIdentityAuthorizationsPage.clickAuthorizationTab();
69
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.authorizationAllPermissions)(role));
70
+ });
71
+ await _8_10_1.test.step('Clear cookies and reset session', async () => {
72
+ await (0, resetSession_1.resetSession)(browser, page);
73
+ await loginPage.loginWithTestUser(testUser);
74
+ });
75
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
76
+ await appsPage.clickCamundaApps();
77
+ await appsPage.clickModeler();
78
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
79
+ timeout: 30000,
80
+ });
81
+ });
82
+ await _8_10_1.test.step('Navigate to Cross Component Test Project', async () => {
83
+ await homePage.clickSkipCustomization();
84
+ await modelerHomePage.createCrossComponentProjectFolder();
85
+ });
86
+ await _8_10_1.test.step('Create Two BPMN Diagrams with User Task and Start Process Instance', async () => {
87
+ await (0, UtilitiesPage_1.runMultipleProcesses)(clusterName, page, modelerHomePage, modelerCreatePage, {
88
+ processName: processName,
89
+ uploadFromFile: 'Camunda_Simple_User_Task_1',
90
+ });
91
+ });
92
+ await _8_10_1.test.step('Navigate to Console and Login as Admin User', async () => {
93
+ //only admin users enable and disable RBA
94
+ await appsPage.clickCamundaApps();
95
+ await appsPage.clickConsoleLink();
96
+ await settingsPage.clickOpenSettingsButton();
97
+ await settingsPage.clickLogoutButton();
98
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, mainUser, 1000);
99
+ });
100
+ await _8_10_1.test.step('Admin Enables RBA', async () => {
101
+ await (0, UtilitiesPage_1.enableAuthorizations)(clusterName, homePage, clusterPage, clusterDetailsPage, appsPage);
102
+ await (0, sleep_1.sleep)(20000);
103
+ });
104
+ await _8_10_1.test.step('Login as Test User', async () => {
105
+ await (0, resetSession_1.resetSession)(browser, page);
106
+ await loginPage.loginWithTestUser(testUser);
107
+ });
108
+ await _8_10_1.test.step('Navigate to Tasklist and Make Sure that the Two Deployed Processes Are Not Accessible', async () => {
109
+ await appsPage.clickCamundaApps();
110
+ await appsPage.clickTasklist(clusterName);
111
+ await (0, test_1.expect)(taskPanelPage.taskListPageBanner).toBeVisible({
112
+ timeout: 30000,
113
+ });
114
+ await taskPanelPage.clickProcessesTab();
115
+ await taskProcessesPage.clickpopupContinueButton();
116
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process1, { shouldBeVisible: false });
117
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process2, { shouldBeVisible: false });
118
+ });
119
+ await _8_10_1.test.step('Navigate to Operate and Make Sure that the Two Deployed Processes Are Not Accessible', async () => {
120
+ await appsPage.clickCamundaApps();
121
+ await appsPage.clickOperate(clusterName);
122
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible({
123
+ timeout: 30000,
124
+ });
125
+ await operateHomePage.clickProcessesTab();
126
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process1, { shouldBeVisible: false });
127
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process2, { shouldBeVisible: false });
128
+ });
129
+ });
130
+ (0, _8_10_1.test)('RBA On User Flow - Permission for One Process', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, clusterPage, clusterDetailsPage, taskPanelPage, taskProcessesPage, operateHomePage, browser, loginPage, ocIdentityHomePage, ocIdentityAuthorizationsPage, ocIdentityRolesPage, settingsPage, }, testInfo) => {
131
+ _8_10_1.test.slow();
132
+ const clusterName = clusterNames[testInfo.title];
133
+ const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
134
+ const processName = 'RBA_ONE_PERM' + randomString;
135
+ const process1 = processName + '1';
136
+ const process2 = processName + '2';
137
+ const role1 = `rbaOnePerm${randomString}1`;
138
+ const role2 = `rbaOnePerm${randomString}2`;
139
+ const testUser = {
140
+ username: process.env.C8_USERNAME_TEST_6,
141
+ password: process.env.C8_PASSWORD_TEST_6,
142
+ };
143
+ await _8_10_1.test.step('Navigate to OC Identity and Assign User To Two Roles', async () => {
144
+ await appsPage.clickCamundaApps();
145
+ await appsPage.clickAdmin(clusterName);
146
+ await ocIdentityHomePage.clickRolesTab();
147
+ await ocIdentityRolesPage.assignUserToRole(role1, testUser.username);
148
+ await ocIdentityHomePage.clickRolesTab();
149
+ await ocIdentityRolesPage.assignUserToRole(role2, testUser.username);
150
+ });
151
+ await _8_10_1.test.step('Create Resource Authorization', async () => {
152
+ await ocIdentityHomePage.clickAuthorizationsTab();
153
+ await ocIdentityAuthorizationsPage.clickResourceTab();
154
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.resourceCreateAuthorization)(role1));
155
+ });
156
+ await _8_10_1.test.step('Create Component Authorization For Both Roles', async () => {
157
+ await ocIdentityAuthorizationsPage.clickComponentTab();
158
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.componentAccessAuthorization)(role1));
159
+ await ocIdentityAuthorizationsPage.clickComponentTab();
160
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.componentAccessAuthorization)(role2));
161
+ });
162
+ await _8_10_1.test.step('Grant Process Definition Authorization for First Process', async () => {
163
+ await ocIdentityAuthorizationsPage.clickProcessDefinitionTab();
164
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.processInstanceAllAuthorization)(role1, process1));
165
+ });
166
+ await _8_10_1.test.step('Grant Only Create Process Definition Authorization for Second Process', async () => {
167
+ await ocIdentityAuthorizationsPage.clickProcessDefinitionTab();
168
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.processInstanceCreateAuthorization)(role1, process2));
169
+ });
170
+ await _8_10_1.test.step('Grant Role Authorization To Delete Role', async () => {
171
+ await ocIdentityAuthorizationsPage.clickRoleTab();
172
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.roleAllAuthorization)(role1));
173
+ });
174
+ await _8_10_1.test.step('Clear cookies and reset session', async () => {
175
+ await (0, resetSession_1.resetSession)(browser, page);
176
+ });
177
+ await _8_10_1.test.step('Login as Test User', async () => {
178
+ await loginPage.loginWithTestUser(testUser);
179
+ });
180
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
181
+ await appsPage.clickCamundaApps();
182
+ await appsPage.clickModeler();
183
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
184
+ timeout: 30000,
185
+ });
186
+ });
187
+ await _8_10_1.test.step('Navigate to Cross Component Test Project', async () => {
188
+ await homePage.clickSkipCustomization();
189
+ await modelerHomePage.createCrossComponentProjectFolder();
190
+ });
191
+ await _8_10_1.test.step('Create Two BPMN Diagrams with User Task and Start Process Instance', async () => {
192
+ await (0, UtilitiesPage_1.runMultipleProcesses)(clusterName, page, modelerHomePage, modelerCreatePage, {
193
+ processName: processName,
194
+ uploadFromFile: 'Camunda_Simple_User_Task_2',
195
+ });
196
+ });
197
+ await _8_10_1.test.step('Navigate to Console and Login as Admin User', async () => {
198
+ //only admin users enable and disable RBA
199
+ await appsPage.clickCamundaApps();
200
+ await appsPage.clickConsoleLink();
201
+ await settingsPage.clickOpenSettingsButton();
202
+ await settingsPage.clickLogoutButton();
203
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, mainUser, 1000);
204
+ });
205
+ await _8_10_1.test.step('Admin Enables RBA', async () => {
206
+ await (0, UtilitiesPage_1.enableAuthorizations)(clusterName, homePage, clusterPage, clusterDetailsPage, appsPage);
207
+ await (0, sleep_1.sleep)(20000);
208
+ });
209
+ await _8_10_1.test.step('Login as Test User', async () => {
210
+ await (0, resetSession_1.resetSession)(browser, page);
211
+ await loginPage.loginWithTestUser(testUser);
212
+ });
213
+ await _8_10_1.test.step('Navigate to Tasklist and Only First Process Is Accessible', async () => {
214
+ await appsPage.clickCamundaApps();
215
+ await appsPage.clickTasklist(clusterName);
216
+ await (0, test_1.expect)(taskPanelPage.taskListPageBanner).toBeVisible({
217
+ timeout: 30000,
218
+ });
219
+ await taskPanelPage.clickProcessesTab();
220
+ await taskProcessesPage.clickpopupContinueButton();
221
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process1);
222
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process2, {
223
+ shouldBeVisible: false,
224
+ });
225
+ });
226
+ await _8_10_1.test.step('Navigate to Operate and Only First Process Is Accessible', async () => {
227
+ await appsPage.clickCamundaApps();
228
+ await appsPage.clickOperate(clusterName);
229
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible({
230
+ timeout: 30000,
231
+ });
232
+ await operateHomePage.clickProcessesTab();
233
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process1);
234
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process2, {
235
+ shouldBeVisible: false,
236
+ });
237
+ });
238
+ await _8_10_1.test.step('Navigate to OC Identity and Delete First Role', async () => {
239
+ await appsPage.clickCamundaApps();
240
+ await appsPage.clickAdmin(clusterName);
241
+ await ocIdentityHomePage.clickRolesTab();
242
+ await ocIdentityRolesPage.deleteRole(role1);
243
+ await (0, sleep_1.sleep)(5000);
244
+ });
245
+ await _8_10_1.test.step('Navigate to Operate and Check Processes Are Not Accessible', async () => {
246
+ await appsPage.clickCamundaApps();
247
+ await appsPage.clickOperate(clusterName);
248
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible({
249
+ timeout: 30000,
250
+ });
251
+ await operateHomePage.clickProcessesTab();
252
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process1, {
253
+ shouldBeVisible: false,
254
+ });
255
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process2, {
256
+ shouldBeVisible: false,
257
+ });
258
+ });
259
+ await _8_10_1.test.step('Navigate to Tasklist and Check Processes Are Not Accessible', async () => {
260
+ await appsPage.clickCamundaApps();
261
+ await appsPage.clickTasklist(clusterName);
262
+ await (0, test_1.expect)(taskPanelPage.taskListPageBanner).toBeVisible({
263
+ timeout: 30000,
264
+ });
265
+ await taskPanelPage.clickProcessesTab();
266
+ await taskProcessesPage.clickpopupContinueButton();
267
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process1, {
268
+ shouldBeVisible: false,
269
+ });
270
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process2, {
271
+ shouldBeVisible: false,
272
+ });
273
+ });
274
+ });
275
+ (0, _8_10_1.test)('RBA On User Flow - Permission for All Processes with Full Permissions', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, clusterPage, clusterDetailsPage, taskPanelPage, taskProcessesPage, operateHomePage, ocIdentityHomePage, ocIdentityAuthorizationsPage, }, testInfo) => {
276
+ _8_10_1.test.slow();
277
+ const clusterName = clusterNames[testInfo.title];
278
+ const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
279
+ const processName = 'AFTER_RBA' + randomString;
280
+ const process1 = processName + '1';
281
+ const process2 = processName + '2';
282
+ await _8_10_1.test.step('Navigate to Console and Enable RBA', async () => {
283
+ await (0, UtilitiesPage_1.enableAuthorizations)(clusterName, homePage, clusterPage, clusterDetailsPage, appsPage);
284
+ await (0, sleep_1.sleep)(20000);
285
+ });
286
+ await _8_10_1.test.step('Navigate to OC Identity and Assert Admin Has All Process Permission', async () => {
287
+ await appsPage.clickCamundaApps();
288
+ await appsPage.clickAdmin(clusterName);
289
+ await ocIdentityHomePage.clickAuthorizationsTab();
290
+ await ocIdentityAuthorizationsPage.clickProcessDefinitionTab();
291
+ await (0, sleep_1.sleep)(1000);
292
+ await ocIdentityAuthorizationsPage.assertAuthorization('ROLEadmin*');
293
+ });
294
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
295
+ await appsPage.clickCamundaApps();
296
+ await appsPage.clickModeler();
297
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
298
+ timeout: 30000,
299
+ });
300
+ });
301
+ await _8_10_1.test.step('Navigate to Cross Component Test Project', async () => {
302
+ await modelerHomePage.clickCrossComponentProjectFolder();
303
+ });
304
+ await _8_10_1.test.step('Create Two BPMN Diagrams with User Task and Start Process Instance', async () => {
305
+ await (0, UtilitiesPage_1.runMultipleProcesses)(clusterName, page, modelerHomePage, modelerCreatePage, {
306
+ processName: processName,
307
+ uploadFromFile: 'Camunda_Simple_User_Task_3',
308
+ });
309
+ });
310
+ await _8_10_1.test.step('Navigate to Tasklist and Assert Both Processes Are Accessible', async () => {
311
+ await appsPage.clickCamundaApps();
312
+ await appsPage.clickTasklist(clusterName);
313
+ await (0, test_1.expect)(taskPanelPage.taskListPageBanner).toBeVisible({
314
+ timeout: 30000,
315
+ });
316
+ await taskPanelPage.clickProcessesTab();
317
+ await taskProcessesPage.clickpopupContinueButton();
318
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process1);
319
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process2);
320
+ });
321
+ await _8_10_1.test.step('Assert First Process Can Be Started From Tasklist', async () => {
322
+ await taskPanelPage.clickTasksTab();
323
+ const firstProcessTaskCount = await taskPanelPage.taskCount(process1);
324
+ await taskPanelPage.clickProcessesTab();
325
+ await taskProcessesPage.startProcess(process1);
326
+ const updatedFirstProcessTaskCount = await taskPanelPage.taskCount(process1);
327
+ (0, test_1.expect)(updatedFirstProcessTaskCount).toBe(firstProcessTaskCount + 1);
328
+ });
329
+ await _8_10_1.test.step('Assert Second Process Can Be Started From Tasklist', async () => {
330
+ await taskPanelPage.clickTasksTab();
331
+ const secondProcessTaskCount = await taskPanelPage.taskCount(process2);
332
+ await taskPanelPage.clickProcessesTab();
333
+ await taskProcessesPage.startProcess(process2);
334
+ const updatedSecondProcessTaskCount = await taskPanelPage.taskCount(process2);
335
+ (0, test_1.expect)(updatedSecondProcessTaskCount).toBe(secondProcessTaskCount + 1);
336
+ });
337
+ await _8_10_1.test.step('Navigate to Operate and Assert Both Processes Are Accessible', async () => {
338
+ await appsPage.clickCamundaApps();
339
+ await appsPage.clickOperate(clusterName);
340
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible({
341
+ timeout: 30000,
342
+ });
343
+ await operateHomePage.clickProcessesTab();
344
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process1);
345
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process2);
346
+ });
347
+ });
348
+ (0, _8_10_1.test)('RBA On User Flow - Permission for Selected Processes Only', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, clusterPage, clusterDetailsPage, taskPanelPage, taskProcessesPage, operateHomePage, ocIdentityHomePage, ocIdentityAuthorizationsPage, ocIdentityRolesPage, browser, loginPage, }, testInfo) => {
349
+ _8_10_1.test.slow();
350
+ const clusterName = clusterNames[testInfo.title];
351
+ const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
352
+ const processName = 'RBA_SELECTED_PERM' + randomString;
353
+ const role = `rbaSelectedProcessesPermission${randomString}`;
354
+ const process1 = processName + '1';
355
+ const process2 = processName + '2';
356
+ const testUser = {
357
+ username: process.env.C8_USERNAME_TEST_5,
358
+ password: process.env.C8_PASSWORD_TEST_5,
359
+ };
360
+ await _8_10_1.test.step('Navigate to OC Identity and Assign User To A Role', async () => {
361
+ await appsPage.clickCamundaApps();
362
+ await appsPage.clickAdmin(clusterName);
363
+ await ocIdentityHomePage.clickRolesTab();
364
+ await ocIdentityRolesPage.assignUserToRole(role, testUser.username);
365
+ });
366
+ await _8_10_1.test.step('Create Resource Authorization', async () => {
367
+ await ocIdentityHomePage.clickAuthorizationsTab();
368
+ await ocIdentityAuthorizationsPage.clickResourceTab();
369
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.resourceCreateAuthorization)(role));
370
+ });
371
+ await _8_10_1.test.step('Create Component Authorization', async () => {
372
+ await ocIdentityAuthorizationsPage.clickComponentTab();
373
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.componentAccessAuthorization)(role));
374
+ });
375
+ await _8_10_1.test.step('Grant Process Definition Authorization for First Process', async () => {
376
+ await ocIdentityAuthorizationsPage.clickProcessDefinitionTab();
377
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.processInstanceAllAuthorization)(role, process1));
378
+ });
379
+ await _8_10_1.test.step('Grant Process Definition Authorization for Second Process', async () => {
380
+ await ocIdentityAuthorizationsPage.clickProcessDefinitionTab();
381
+ await ocIdentityAuthorizationsPage.createAuthorization((0, roleAuthorizations_1.processInstanceAllAuthorization)(role, process2));
382
+ });
383
+ await _8_10_1.test.step('Navigate to Console and Enable RBA', async () => {
384
+ await (0, UtilitiesPage_1.enableAuthorizations)(clusterName, homePage, clusterPage, clusterDetailsPage, appsPage);
385
+ await (0, sleep_1.sleep)(20000);
386
+ });
387
+ await _8_10_1.test.step('Clear cookies and reset session', async () => {
388
+ await (0, resetSession_1.resetSession)(browser, page);
389
+ await loginPage.loginWithTestUser(testUser);
390
+ });
391
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
392
+ await appsPage.clickCamundaApps();
393
+ await appsPage.clickModeler();
394
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
395
+ timeout: 30000,
396
+ });
397
+ });
398
+ await _8_10_1.test.step('Navigate to Cross Component Test Project', async () => {
399
+ await homePage.clickSkipCustomization();
400
+ await modelerHomePage.createCrossComponentProjectFolder();
401
+ });
402
+ await _8_10_1.test.step('Create Two BPMN Diagrams with User Task and Start Process Instance', async () => {
403
+ await (0, UtilitiesPage_1.runMultipleProcesses)(clusterName, page, modelerHomePage, modelerCreatePage, {
404
+ processName: processName,
405
+ uploadFromFile: 'Camunda_Simple_User_Task_4',
406
+ });
407
+ });
408
+ await _8_10_1.test.step('Navigate to Tasklist and Assert Both Processes Are Accessible', async () => {
409
+ await appsPage.clickCamundaApps();
410
+ await appsPage.clickTasklist(clusterName);
411
+ await (0, test_1.expect)(taskPanelPage.taskListPageBanner).toBeVisible({
412
+ timeout: 30000,
413
+ });
414
+ await taskPanelPage.clickProcessesTab();
415
+ await taskProcessesPage.clickpopupContinueButton();
416
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process1);
417
+ await (0, expectTextWithPagination_1.expectTextWithPagination)(page, process2);
418
+ });
419
+ await _8_10_1.test.step('Assert First Process Can Be Started From Tasklist', async () => {
420
+ await taskPanelPage.clickTasksTab();
421
+ const firstProcessTaskCount = await taskPanelPage.taskCount(process1);
422
+ await taskPanelPage.clickProcessesTab();
423
+ await taskProcessesPage.startProcess(process1);
424
+ const updatedFirstProcessTaskCount = await taskPanelPage.taskCount(process1);
425
+ (0, test_1.expect)(updatedFirstProcessTaskCount).toBe(firstProcessTaskCount + 1);
426
+ });
427
+ await _8_10_1.test.step('Assert Second Process Can Be Started From Tasklist', async () => {
428
+ await taskPanelPage.clickTasksTab();
429
+ const secondProcessTaskCount = await taskPanelPage.taskCount(process2);
430
+ await taskPanelPage.clickProcessesTab();
431
+ await taskProcessesPage.startProcess(process2);
432
+ const updatedSecondProcessTaskCount = await taskPanelPage.taskCount(process2);
433
+ (0, test_1.expect)(updatedSecondProcessTaskCount).toBe(secondProcessTaskCount + 1);
434
+ });
435
+ await _8_10_1.test.step('Navigate to Operate and Assert Both Processes Are Accessible', async () => {
436
+ await appsPage.clickCamundaApps();
437
+ await appsPage.clickOperate(clusterName);
438
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible({
439
+ timeout: 30000,
440
+ });
441
+ await operateHomePage.clickProcessesTab();
442
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process1);
443
+ await (0, expectTextWithRetry_1.expectTextWithRetry)(page, process2);
444
+ });
445
+ });
446
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const test_1 = require("@playwright/test");
4
+ const _8_10_1 = require("../../fixtures/8.10");
5
+ const _setup_1 = require("../../test-setup.js");
6
+ const TaskPanelPage_1 = require("../../pages/8.10/TaskPanelPage");
7
+ const TaskDetailsPage_1 = require("../../pages/8.10/TaskDetailsPage");
8
+ const OperateHomePage_1 = require("../../pages/8.10/OperateHomePage");
9
+ const AppsPage_1 = require("../../pages/8.10/AppsPage");
10
+ const OperateProcessesPage_1 = require("../../pages/8.10/OperateProcessesPage");
11
+ const OperateProcessInstancePage_1 = require("../../pages/8.10/OperateProcessInstancePage");
12
+ const UtilitiesPage_1 = require("../../pages/8.10/UtilitiesPage");
13
+ const OptimizeHomePage_1 = require("../../pages/8.10/OptimizeHomePage");
14
+ const OptimizeCollectionsPage_1 = require("../../pages/8.10/OptimizeCollectionsPage");
15
+ const OptimizeReportPage_1 = require("../../pages/8.10/OptimizeReportPage");
16
+ const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
17
+ const users_1 = require("../../utils/users");
18
+ const testUser = (0, users_1.getTestUser)('thirteenthUser');
19
+ _8_10_1.test.describe.configure({ mode: 'parallel' });
20
+ _8_10_1.test.describe('Smoke Tests', () => {
21
+ const clusterName = 'Test Cluster';
22
+ _8_10_1.test.beforeEach(async ({ page, loginPage }, testInfo) => {
23
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, testUser, (testInfo.workerIndex + 1) * 1000);
24
+ });
25
+ _8_10_1.test.afterEach(async ({ page }, testInfo) => {
26
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
27
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
28
+ });
29
+ //Skipped due to bug: Tasklist
30
+ _8_10_1.test.skip('Most Common Flow User Flow With All Apps', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, }) => {
31
+ const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
32
+ const formName = 'New form' + randomString;
33
+ const processName = 'Zeebe_User_Task_Process' + randomString;
34
+ const userTaskName = 'zeebeUserTaskWithForm' + randomString;
35
+ const reportName = await (0, _setup_1.generateRandomStringAsync)(5);
36
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
37
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
38
+ timeout: 30000,
39
+ });
40
+ await appsPage.clickCamundaApps();
41
+ await appsPage.clickModeler();
42
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
43
+ timeout: 60000,
44
+ });
45
+ });
46
+ await _8_10_1.test.step('Create Form To Be Linked For Zeebe User Task', async () => {
47
+ await modelerHomePage.clickCrossComponentProjectFolder();
48
+ await modelerHomePage.clickDiagramTypeDropdown();
49
+ await modelerHomePage.clickFormOption();
50
+ await modelerHomePage.enterFormName(formName);
51
+ await modelerHomePage.assertFormBreadcrumbVisible(formName);
52
+ });
53
+ await _8_10_1.test.step('Add A BPMN Template To The Project', async () => {
54
+ await modelerHomePage.clickProjectBreadcrumb();
55
+ await modelerHomePage.clickDiagramTypeDropdown();
56
+ await modelerHomePage.clickBpmnTemplateOption();
57
+ });
58
+ await _8_10_1.test.step('Create BPMN Diagram with Two Zeebe User Tasks and Start Process Instance', async () => {
59
+ await (0, test_1.expect)(modelerCreatePage.generalPanel).toBeVisible({
60
+ timeout: 60000,
61
+ });
62
+ await modelerCreatePage.enterDiagramName(processName);
63
+ await modelerCreatePage.assertDiagramNameSet(processName);
64
+ await modelerCreatePage.addParallelUserTasks(2, userTaskName);
65
+ await modelerCreatePage.clickAppendElementButton();
66
+ await modelerCreatePage.clickAppendEndEventButton('parallelGateway');
67
+ await modelerCreatePage.clickUserTask(`${userTaskName}2`);
68
+ await modelerCreatePage.clickEmbedFormButton();
69
+ await modelerCreatePage.clickForm(formName);
70
+ await modelerCreatePage.clickEmbedButton();
71
+ await modelerCreatePage.assertFormEmbedded();
72
+ await modelerCreatePage.runProcessInstance(clusterName);
73
+ });
74
+ await _8_10_1.test.step('View Process Instance in Operate, complete User Task in Tasklist & assert process complete in Operate and Assert Process has been successfully imported in Optimize', async () => {
75
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
76
+ timeout: 60000,
77
+ });
78
+ await modelerCreatePage.clickViewProcessInstanceLink();
79
+ const operateTab = await page.waitForEvent('popup', { timeout: 30000 });
80
+ const operateTabHomePage = new OperateHomePage_1.OperateHomePage(operateTab);
81
+ const operateTabProcessesPage = new OperateProcessesPage_1.OperateProcessesPage(operateTab);
82
+ const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
83
+ const operateTabAppsPage = new AppsPage_1.AppsPage(operateTab);
84
+ const operateTabTaskPanelPage = new TaskPanelPage_1.TaskPanelPage(operateTab);
85
+ const operateTabTaskDetailsPage = new TaskDetailsPage_1.TaskDetailsPage(operateTab);
86
+ await (0, test_1.expect)(operateTabProcessInstancePage.activeIcon).toBeVisible({
87
+ timeout: 300000,
88
+ });
89
+ await operateTabAppsPage.clickCamundaApps();
90
+ await operateTabAppsPage.clickTasklist(clusterName);
91
+ await (0, UtilitiesPage_1.completeTaskWithRetry)(operateTabTaskPanelPage, operateTabTaskDetailsPage, `${userTaskName}1`, 'Medium');
92
+ await (0, UtilitiesPage_1.completeTaskWithRetry)(operateTabTaskPanelPage, operateTabTaskDetailsPage, `${userTaskName}2`, 'Medium');
93
+ await operateTabTaskPanelPage.filterBy('Completed');
94
+ await operateTabTaskPanelPage.openTask(`${userTaskName}1`);
95
+ await (0, test_1.expect)(operateTabTaskDetailsPage.detailsInfo.getByText(`${userTaskName}1`)).toBeVisible({ timeout: 30000 });
96
+ await operateTabTaskPanelPage.openTask(`${userTaskName}2`);
97
+ await (0, test_1.expect)(operateTabTaskDetailsPage.detailsInfo.getByText(`${userTaskName}2`)).toBeVisible({ timeout: 30000 });
98
+ await operateTabAppsPage.clickCamundaApps();
99
+ await operateTabAppsPage.clickOperate(clusterName);
100
+ await operateTabHomePage.clickProcessesTab();
101
+ await (0, test_1.expect)(operateTabProcessesPage.processCompletedCheckbox).toBeVisible({ timeout: 15000 });
102
+ await operateTabProcessesPage.clickProcessCompletedCheckbox();
103
+ await operateTabProcessesPage.clickProcessInstanceLink(processName);
104
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTabProcessInstancePage, operateTabProcessInstancePage.completedIcon, 'completed icon in Operate', 60000);
105
+ await operateTabAppsPage.clickCamundaApps();
106
+ await operateTabAppsPage.clickOptimize(clusterName);
107
+ const optimizeTabOptimizeCollectionsPage = new OptimizeCollectionsPage_1.OptimizeCollectionsPage(operateTab);
108
+ const optimizeTabOptimizeReportPage = new OptimizeReportPage_1.OptimizeReportPage(operateTab);
109
+ const optimizeTabOptimizeHomePage = new OptimizeHomePage_1.OptimizeHomePage(operateTab);
110
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTab, operateTab.getByRole('link', { name: processName }), `process ${processName} in Optimize`, 60000);
111
+ await optimizeTabOptimizeHomePage.clickCollectionsLink();
112
+ await optimizeTabOptimizeCollectionsPage.clickCreateNewButtonWithRetry();
113
+ await optimizeTabOptimizeCollectionsPage.clickReportOption();
114
+ await optimizeTabOptimizeReportPage.clickProcessSelectionButton();
115
+ await optimizeTabOptimizeReportPage.clickUserTaskProcess(processName);
116
+ await (0, test_1.expect)(optimizeTabOptimizeReportPage.versionSelection).toBeVisible({
117
+ timeout: 15000,
118
+ });
119
+ await optimizeTabOptimizeReportPage.clickVersionSelection();
120
+ await optimizeTabOptimizeReportPage.clickAlwaysDisplayLatestSelection();
121
+ await optimizeTabOptimizeReportPage.clickBlankReportButton();
122
+ await optimizeTabOptimizeReportPage.clickCreateReportLink();
123
+ await optimizeTabOptimizeReportPage.clickSelectDropdown();
124
+ await optimizeTabOptimizeReportPage.clickUserTaskOption();
125
+ await optimizeTabOptimizeReportPage.clickHeatMapButton();
126
+ await (0, test_1.expect)(optimizeTabOptimizeReportPage.tableOption).toBeVisible({
127
+ timeout: 15000,
128
+ });
129
+ await optimizeTabOptimizeReportPage.clickTableOption();
130
+ await optimizeTabOptimizeReportPage.clickReportName();
131
+ await optimizeTabOptimizeReportPage.clearReportName();
132
+ await optimizeTabOptimizeReportPage.fillReportName(reportName);
133
+ await optimizeTabOptimizeReportPage.clickSaveButton();
134
+ await optimizeTabOptimizeHomePage.clickCollectionsLink();
135
+ await (0, test_1.expect)(operateTab.getByText(reportName)).toBeVisible({
136
+ timeout: 30000,
137
+ });
138
+ await optimizeTabOptimizeCollectionsPage.clickMostRecentProcessReport(reportName);
139
+ await optimizeTabOptimizeReportPage.waitUntilLocatorIsVisible(optimizeTabOptimizeReportPage.oneUserTaskInstance.first(), operateTab);
140
+ await (0, test_1.expect)(optimizeTabOptimizeReportPage.oneUserTaskInstance).toHaveCount(2, { timeout: 60000 });
141
+ });
142
+ });
143
+ (0, _8_10_1.test)('Most Common REST Connector User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, operateHomePage, operateProcessesPage, operateProcessInstancePage, }) => {
144
+ _8_10_1.test.slow();
145
+ const randomString = await (0, _setup_1.generateRandomStringAsync)(3);
146
+ const processName = 'REST_Connector_Basic_Auth_Process' + randomString;
147
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
148
+ await appsPage.clickCamundaApps();
149
+ await appsPage.clickModeler();
150
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
151
+ timeout: 10000,
152
+ });
153
+ });
154
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
155
+ await modelerHomePage.clickCrossComponentProjectFolder();
156
+ await modelerHomePage.clickDiagramTypeDropdown();
157
+ await modelerHomePage.clickBpmnTemplateOption();
158
+ });
159
+ await _8_10_1.test.step('Create BPMN Diagram with REST Connector with Basic Auth and Start Process Instance', async () => {
160
+ await (0, UtilitiesPage_1.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, 'https://camunda.proxy.beeceptor.com/pre-prod/basic-auth-test', 'basic', '{message:response.body.message}', 'result', { username: 'username', password: 'password' });
161
+ await modelerCreatePage.runProcessInstance(clusterName);
162
+ });
163
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
164
+ await appsPage.clickCamundaApps();
165
+ await appsPage.clickOperate(clusterName);
166
+ await operateHomePage.clickProcessesTab();
167
+ await operateProcessesPage.clickProcessCompletedCheckbox();
168
+ await operateProcessesPage.clickProcessInstanceLink(processName);
169
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.completedIcon, { totalTimeout: 60000, maxRetries: 5 });
170
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.variablesList, { totalTimeout: 60000, maxRetries: 5 });
171
+ await (0, test_1.expect)(operateProcessInstancePage.connectorResultVariableName('message')).toBeVisible({
172
+ timeout: 15000,
173
+ });
174
+ await (0, test_1.expect)(operateProcessInstancePage
175
+ .connectorResultVariableName('message')
176
+ .getByText('"Message from Mock!"')).toBeVisible({
177
+ timeout: 15000,
178
+ });
179
+ });
180
+ });
181
+ });
@@ -0,0 +1 @@
1
+ export {};