@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,479 @@
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 OperateProcessInstancePage_1 = require("../../pages/8.10/OperateProcessInstancePage");
7
+ const sleep_1 = require("../../utils/sleep");
8
+ const UtilitiesPage_1 = require("../../pages/8.10/UtilitiesPage");
9
+ const UtilitiesPage_2 = require("../../pages/8.10/UtilitiesPage");
10
+ const UtilitiesPage_3 = require("../../pages/8.10/UtilitiesPage");
11
+ const apiHelpers_1 = require("../../utils/apiHelpers");
12
+ const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
13
+ const users_1 = require("../../utils/users");
14
+ const connectorSecrets_1 = require("../../utils/connectorSecrets");
15
+ const testUser = (0, users_1.getTestUser)('seventeenthUser');
16
+ _8_10_1.test.describe.configure({ mode: 'parallel' });
17
+ _8_10_1.test.describe('Connectors User Flow Tests @tasklistV2', () => {
18
+ const defaultClusterName = 'Test Cluster';
19
+ const awsCluster = 'AWS Cluster';
20
+ _8_10_1.test.beforeEach(async ({ page, loginPage }, testInfo) => {
21
+ await (0, UtilitiesPage_1.loginWithRetry)(page, loginPage, testUser, (testInfo.workerIndex + 1) * 1000);
22
+ });
23
+ _8_10_1.test.afterEach(async ({ page }, testInfo) => {
24
+ await (0, _setup_1.captureScreenshot)(page, testInfo);
25
+ await (0, _setup_1.captureFailureVideo)(page, testInfo);
26
+ });
27
+ (0, _8_10_1.test)('REST Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
28
+ _8_10_1.test.slow();
29
+ const processName = 'REST_Connector_No_Auth_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
30
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
31
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
32
+ timeout: 40000,
33
+ });
34
+ await appsPage.clickCamundaApps();
35
+ await appsPage.clickModeler();
36
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
37
+ timeout: 120000,
38
+ });
39
+ });
40
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
41
+ await modelerHomePage.clickCrossComponentProjectFolder();
42
+ await modelerHomePage.clickDiagramTypeDropdown();
43
+ await modelerHomePage.clickBpmnTemplateOption();
44
+ });
45
+ await _8_10_1.test.step('Create BPMN Diagram with REST Connector and Start Process Instance', async () => {
46
+ await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, 'https://camunda.proxy.beeceptor.com/pre-prod/no-auth-test', 'noAuth', 'body');
47
+ await modelerCreatePage.runProcessInstance(defaultClusterName);
48
+ });
49
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
50
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
51
+ timeout: 120000,
52
+ });
53
+ await modelerCreatePage.clickViewProcessInstanceLink();
54
+ const operateTab = await page.waitForEvent('popup', { timeout: 60000 });
55
+ const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
56
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTabProcessInstancePage, operateTabProcessInstancePage.completedIcon, 'Completed icon', 60000);
57
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTab, operateTabProcessInstancePage.variablesList, 'Variable list', 30000);
58
+ await (0, test_1.expect)(operateTabProcessInstancePage.connectorResultVariableName('status')).toBeVisible({
59
+ timeout: 60000,
60
+ });
61
+ await (0, test_1.expect)(operateTab.getByText('"Awesome!"')).toBeVisible({
62
+ timeout: 60000,
63
+ });
64
+ });
65
+ });
66
+ (0, _8_10_1.test)('REST Connector Bearer Token Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, }) => {
67
+ _8_10_1.test.slow();
68
+ const processName = 'REST_Connector_Bearer_Auth_Process' +
69
+ (await (0, _setup_1.generateRandomStringAsync)(3));
70
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
71
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
72
+ timeout: 120000,
73
+ });
74
+ await appsPage.clickCamundaApps();
75
+ await appsPage.clickModeler();
76
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
77
+ timeout: 120000,
78
+ });
79
+ });
80
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
81
+ await modelerHomePage.clickCrossComponentProjectFolder();
82
+ await modelerHomePage.clickDiagramTypeDropdown();
83
+ await modelerHomePage.clickBpmnTemplateOption();
84
+ });
85
+ await _8_10_1.test.step('Create BPMN Diagram with REST Connector with Bearer Token Auth and Start Process Instance', async () => {
86
+ await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, 'https://camunda.proxy.beeceptor.com/pre-prod/bearer-auth-test', 'bearer', '{message:response.body}');
87
+ await modelerCreatePage.runProcessInstance(defaultClusterName);
88
+ await (0, _setup_1.performBearerTokenAuthPostRequest)('https://camunda.proxy.beeceptor.com/pre-prod/bearer-auth-test', 'thisisabearertoken');
89
+ });
90
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
91
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
92
+ timeout: 240000,
93
+ });
94
+ await modelerCreatePage.clickViewProcessInstanceLink();
95
+ const operateTab = await page.waitForEvent('popup', { timeout: 60000 });
96
+ const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
97
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTabProcessInstancePage, operateTabProcessInstancePage.completedIcon, 'Completed icon', 60000);
98
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTab, operateTabProcessInstancePage.variablesList, 'Variable list', 60000);
99
+ await (0, test_1.expect)(operateTabProcessInstancePage.connectorResultVariableName('message')).toBeVisible({
100
+ timeout: 60000,
101
+ });
102
+ await (0, test_1.expect)(operateTab.getByText('"Awesome!"')).toBeVisible({
103
+ timeout: 90000,
104
+ });
105
+ });
106
+ });
107
+ (0, _8_10_1.test)('Message Start Event Webhook Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, request, operateHomePage, operateProcessInstancePage, operateProcessesPage, }) => {
108
+ _8_10_1.test.slow();
109
+ const processName = 'Start_Event_Webhook_Connector_No_Auth_Process' +
110
+ (await (0, _setup_1.generateRandomStringAsync)(3));
111
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
112
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
113
+ timeout: 120000,
114
+ });
115
+ await appsPage.clickCamundaApps();
116
+ await appsPage.clickModeler();
117
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
118
+ timeout: 180000,
119
+ });
120
+ });
121
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
122
+ await modelerHomePage.clickCrossComponentProjectFolder();
123
+ await modelerHomePage.clickDiagramTypeDropdown();
124
+ await modelerHomePage.clickBpmnTemplateOption();
125
+ });
126
+ await _8_10_1.test.step('Create BPMN Diagram with Start Event Webhook Connector and Deploy Diagram', async () => {
127
+ await (0, test_1.expect)(modelerCreatePage.generalPanel).toBeVisible({
128
+ timeout: 120000,
129
+ });
130
+ await modelerCreatePage.enterDiagramName(processName);
131
+ await (0, sleep_1.sleep)(10000);
132
+ await modelerCreatePage.clickChangeTypeButton();
133
+ await (0, test_1.expect)(modelerCreatePage.webhookMessageStartEventConnectorOption).toBeVisible({
134
+ timeout: 30000,
135
+ });
136
+ await modelerCreatePage.clickWebhookStartEventConnectorOption();
137
+ await modelerCreatePage.clickAppendElementButton();
138
+ await modelerCreatePage.clickAppendEndEventButton();
139
+ await (0, sleep_1.sleep)(20000);
140
+ await page.reload();
141
+ await modelerCreatePage.deployDiagram(defaultClusterName);
142
+ });
143
+ await _8_10_1.test.step('Assert Webhook Is Active In Cluster And Make Authorization Request', async () => {
144
+ await modelerCreatePage.clickStartEventElement();
145
+ await modelerCreatePage.clickWebhookTab();
146
+ await (0, test_1.expect)(modelerCreatePage.webhookIsActiveButton).toBeVisible({
147
+ timeout: 60000,
148
+ });
149
+ await modelerCreatePage.clickWebhookIsActiveButton();
150
+ const url = await modelerCreatePage.copyWebhookUrlToClipboardButton.innerText({
151
+ timeout: 60000,
152
+ });
153
+ await (0, apiHelpers_1.sendRequestAndAssertResponse)(request, url);
154
+ });
155
+ await _8_10_1.test.step('Assert Diagram Has Successfully Completed in Operate', async () => {
156
+ await appsPage.clickCamundaApps();
157
+ await appsPage.clickOperate(defaultClusterName);
158
+ await (0, test_1.expect)(operateHomePage.processesTab).toBeVisible({
159
+ timeout: 120000,
160
+ });
161
+ await operateHomePage.clickProcessesTab();
162
+ await operateProcessesPage.clickProcessCompletedCheckbox();
163
+ await operateProcessesPage.clickProcessInstanceLink(processName);
164
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateProcessInstancePage, operateProcessInstancePage.completedIcon, 'Completed icon', 60000);
165
+ });
166
+ });
167
+ (0, _8_10_1.test)('Connector Secrets User Flow - GCP', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, operateHomePage, operateProcessesPage, operateProcessInstancePage, clusterPage, clusterSecretsPage, }) => {
168
+ _8_10_1.test.slow();
169
+ const processName = 'REST_Connector_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
170
+ await _8_10_1.test.step('Navigate to Connectors Secrets', async () => {
171
+ await homePage.clickClusters();
172
+ await clusterPage.clickClusterLink(defaultClusterName);
173
+ await clusterPage.clickConnectorSecretsTab(defaultClusterName);
174
+ await clusterSecretsPage.assertSecretsOrCreate(defaultClusterName, connectorSecrets_1.allConnectorSecrets['Connectors']);
175
+ });
176
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
177
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
178
+ timeout: 20000,
179
+ });
180
+ await appsPage.clickCamundaApps();
181
+ await appsPage.clickModeler();
182
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
183
+ timeout: 30000,
184
+ });
185
+ });
186
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
187
+ await modelerHomePage.clickCrossComponentProjectFolder();
188
+ await modelerHomePage.clickDiagramTypeDropdown();
189
+ await modelerHomePage.clickBpmnTemplateOption();
190
+ });
191
+ await _8_10_1.test.step('Create BPMN Diagram with REST Connector using secrets and Start Process Instance', async () => {
192
+ await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, 'secrets.endpoint_url', 'basic', '{message:response.body.message}', 'result', { username: 'secrets.username', password: 'secrets.password' });
193
+ await modelerCreatePage.runProcessInstance(defaultClusterName);
194
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible();
195
+ });
196
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
197
+ await appsPage.clickCamundaApps();
198
+ await appsPage.clickOperate(defaultClusterName);
199
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible();
200
+ await operateHomePage.clickProcessesTab();
201
+ await operateProcessesPage.clickProcessCompletedCheckbox();
202
+ await operateProcessesPage.clickProcessInstanceLink(processName);
203
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.completedIcon, {
204
+ postAction: async () => {
205
+ await page.reload();
206
+ },
207
+ });
208
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.variablesList, {
209
+ postAction: async () => {
210
+ await page.reload();
211
+ },
212
+ });
213
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.messageVariable.getByText('"Message from Mock!"'), {
214
+ postAction: async () => {
215
+ await page.reload();
216
+ },
217
+ });
218
+ });
219
+ });
220
+ (0, _8_10_1.test)('Connector Secrets User Flow - AWS', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorSettingsPage, operateHomePage, operateProcessesPage, operateProcessInstancePage, }) => {
221
+ _8_10_1.test.slow();
222
+ const processName = 'REST_Connector_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
223
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
224
+ await appsPage.clickCamundaApps();
225
+ await appsPage.clickModeler();
226
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
227
+ timeout: 30000,
228
+ });
229
+ });
230
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
231
+ await modelerHomePage.clickCrossComponentProjectFolder();
232
+ await modelerHomePage.clickDiagramTypeDropdown();
233
+ await modelerHomePage.clickBpmnTemplateOption();
234
+ });
235
+ await _8_10_1.test.step('Create BPMN Diagram with REST Connector using secrets and Start Process Instance', async () => {
236
+ await (0, UtilitiesPage_2.modelRestConnector)(modelerCreatePage, connectorSettingsPage, processName, 'secrets.endpoint_url', 'basic', '{message:response.body.message}', 'result', { username: 'secrets.username', password: 'secrets.password' });
237
+ await modelerCreatePage.runProcessInstance(awsCluster);
238
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible();
239
+ });
240
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
241
+ await appsPage.clickCamundaApps();
242
+ await appsPage.clickOperate(awsCluster);
243
+ await (0, test_1.expect)(operateHomePage.operateBanner).toBeVisible({
244
+ timeout: 30000,
245
+ });
246
+ await operateHomePage.clickProcessesTab();
247
+ await operateProcessesPage.clickProcessCompletedCheckbox();
248
+ await operateProcessesPage.clickProcessInstanceLink(processName);
249
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.completedIcon, {
250
+ postAction: async () => {
251
+ await page.reload();
252
+ },
253
+ });
254
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.variablesList, {
255
+ postAction: async () => {
256
+ await page.reload();
257
+ },
258
+ });
259
+ await (0, expectLocatorWithRetry_1.expectLocatorWithRetry)(page, operateProcessInstancePage.messageVariable.getByText('"Message from Mock!"'), {
260
+ postAction: async () => {
261
+ await page.reload();
262
+ },
263
+ });
264
+ });
265
+ });
266
+ (0, _8_10_1.test)('Marketplace Connector User Flow', async ({ page, homePage, appsPage, modelerHomePage, modelerCreatePage, connectorMarketplacePage, connectorSettingsPage, }) => {
267
+ _8_10_1.test.slow();
268
+ const processName = 'Public Holiday Marketplace Connector' +
269
+ (await (0, _setup_1.generateRandomStringAsync)(3));
270
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
271
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
272
+ timeout: 120000,
273
+ });
274
+ await appsPage.clickCamundaApps();
275
+ await appsPage.clickModeler();
276
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
277
+ timeout: 120000,
278
+ });
279
+ });
280
+ await _8_10_1.test.step('Navigate to Cross Component Test Project', async () => {
281
+ await modelerHomePage.clickCrossComponentProjectFolder();
282
+ });
283
+ await _8_10_1.test.step('Add A BPMN Template To The Project', async () => {
284
+ await modelerHomePage.clickDiagramTypeDropdown();
285
+ await modelerHomePage.clickBpmnTemplateOption();
286
+ });
287
+ await _8_10_1.test.step('Create Public Holiday Marketplace connector', async () => {
288
+ await (0, test_1.expect)(modelerCreatePage.generalPanel).toBeVisible({
289
+ timeout: 90000,
290
+ });
291
+ await modelerCreatePage.enterDiagramName(processName);
292
+ await (0, sleep_1.sleep)(10000);
293
+ await modelerCreatePage.clickAppendElementButton();
294
+ await modelerCreatePage.clickAppendTaskButton();
295
+ await modelerCreatePage.clickChangeTypeButton();
296
+ await (0, test_1.expect)(modelerCreatePage.marketPlaceButton).toBeVisible({
297
+ timeout: 120000,
298
+ });
299
+ await modelerCreatePage.clickMarketPlaceButton();
300
+ await connectorMarketplacePage.clickSearchForConnectorTextbox();
301
+ await connectorMarketplacePage.fillSearchForConnectorTextbox('Public Holiday Connector');
302
+ await (0, sleep_1.sleep)(10000);
303
+ await connectorMarketplacePage.downloadConnectorToProject();
304
+ await modelerCreatePage.clickPublicHolidayConnectorOption();
305
+ await connectorSettingsPage.clickInputTab();
306
+ await modelerCreatePage.clickPublicHolidayYearOption();
307
+ await modelerCreatePage.fillPublicHolidayYearOption('2000');
308
+ await modelerCreatePage.clickPublicHolidayCountryCodeOption();
309
+ await modelerCreatePage.fillPublicHolidayCountryCodeOption('NL');
310
+ await modelerCreatePage.clickAppendElementButton();
311
+ await modelerCreatePage.clickAppendEndEventButton();
312
+ await modelerCreatePage.clickCanvas();
313
+ await modelerCreatePage.assertThreeElementsVisible();
314
+ await modelerCreatePage.runProcessInstance(defaultClusterName);
315
+ });
316
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert result expression', async () => {
317
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
318
+ timeout: 120000,
319
+ });
320
+ await modelerCreatePage.clickViewProcessInstanceLink();
321
+ const operateTab = await page.waitForEvent('popup');
322
+ const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
323
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTabProcessInstancePage, operateTabProcessInstancePage.completedIcon, 'Completed icon', 60000);
324
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTab, operateTab.getByTestId('variables-list'), 'Variable list', 30000);
325
+ (0, test_1.expect)((await operateTabProcessInstancePage.connectorResultVariableName('publicHolidayList')).isVisible()).toBeTruthy();
326
+ await (0, test_1.expect)(operateTab.getByText('Christmas')).toBeVisible({
327
+ timeout: 60000,
328
+ });
329
+ });
330
+ });
331
+ (0, _8_10_1.test)('Intermediate Event Webhook Connector No Auth User Flow', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, request, operateHomePage, operateProcessInstancePage, operateProcessesPage, connectorSettingsPage, }) => {
332
+ const processName = 'Intermediate_Event_Webhook_Connector_No_Auth_Process' +
333
+ (await (0, _setup_1.generateRandomStringAsync)(3));
334
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
335
+ await (0, test_1.expect)(homePage.camundaComponentsButton).toBeVisible({
336
+ timeout: 120000,
337
+ });
338
+ await appsPage.clickCamundaApps();
339
+ await appsPage.clickModeler();
340
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
341
+ timeout: 180000,
342
+ });
343
+ });
344
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a BPMN Diagram Template', async () => {
345
+ await modelerHomePage.clickCrossComponentProjectFolder();
346
+ await modelerHomePage.clickDiagramTypeDropdown();
347
+ await modelerHomePage.clickBpmnTemplateOption();
348
+ });
349
+ await _8_10_1.test.step('Create BPMN Diagram with Intermediate Event Webhook Connector and Deploy Diagram', async () => {
350
+ await (0, test_1.expect)(modelerCreatePage.generalPanel).toBeVisible({
351
+ timeout: 120000,
352
+ });
353
+ await modelerCreatePage.enterDiagramName(processName);
354
+ await (0, sleep_1.sleep)(10000);
355
+ await modelerCreatePage.clickAppendElementButton();
356
+ await modelerCreatePage.clickIntermediateBoundaryEvent();
357
+ await modelerCreatePage.clickChangeTypeButton();
358
+ await modelerCreatePage.clickIntermediateWebhookConnectorOption();
359
+ await connectorSettingsPage.clickCorrelationTab();
360
+ await modelerCreatePage.clickCorrelationKeyProcessInput();
361
+ await modelerCreatePage.fillCorrelationKeyProcessInput('"test"');
362
+ await modelerCreatePage.clickCorrelationKeyPayloadInput();
363
+ await modelerCreatePage.fillCorrelationKeyPayloadInput('"test"');
364
+ await modelerCreatePage.clickAppendElementButton();
365
+ await modelerCreatePage.clickAppendEndEventButton();
366
+ await (0, sleep_1.sleep)(10000);
367
+ await page.reload();
368
+ await modelerCreatePage.runProcessInstance(defaultClusterName);
369
+ });
370
+ await _8_10_1.test.step('Assert Webhook Is Active In Cluster And Make Authorization Request', async () => {
371
+ await modelerCreatePage.clickSecondElement();
372
+ await modelerCreatePage.clickWebhookTab();
373
+ await (0, test_1.expect)(modelerCreatePage.webhookIsActiveButton).toBeVisible({
374
+ timeout: 120000,
375
+ });
376
+ await modelerCreatePage.clickWebhookIsActiveButton();
377
+ const url = await modelerCreatePage.copyWebhookUrlToClipboardButton.innerText();
378
+ const response = await request.post(url, {
379
+ data: {
380
+ test: 'test',
381
+ },
382
+ });
383
+ await (0, test_1.expect)(response.status()).toBe(200);
384
+ });
385
+ await _8_10_1.test.step('Assert Diagram Has Successfully Completed in Operate', async () => {
386
+ await (0, sleep_1.sleep)(90000);
387
+ await appsPage.clickCamundaApps();
388
+ await appsPage.clickOperate(defaultClusterName);
389
+ await (0, test_1.expect)(operateHomePage.processesTab).toBeVisible({ timeout: 120000 });
390
+ await operateHomePage.clickProcessesTab();
391
+ await operateProcessesPage.clickProcessCompletedCheckbox();
392
+ await operateProcessesPage.clickProcessInstanceLink(processName);
393
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateProcessInstancePage, operateProcessInstancePage.completedIcon, 'Completed icon', 60000);
394
+ });
395
+ });
396
+ (0, _8_10_1.test)('Document Handling Connectors User Flow - GCP', async ({ page, homePage, modelerHomePage, appsPage, modelerCreatePage, clusterPage, clusterDetailsPage, connectorMarketplacePage, }) => {
397
+ _8_10_1.test.slow();
398
+ const apiClientName = await (0, _setup_1.generateRandomStringAsync)(6);
399
+ const processName = 'Document_Handling_Connectors_User_Flow_GCP_Process' +
400
+ (await (0, _setup_1.generateRandomStringAsync)(3));
401
+ let credentials = {};
402
+ await _8_10_1.test.step('Create Zeebe API Client', async () => {
403
+ await homePage.clickClusters();
404
+ await clusterPage.clickClusterLink(defaultClusterName);
405
+ await clusterDetailsPage.clickAPITab();
406
+ credentials = await clusterDetailsPage.createAPIClientAndReturnVariables(apiClientName, false);
407
+ await clusterDetailsPage.clickCloseModalButton();
408
+ });
409
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
410
+ await appsPage.clickCamundaApps();
411
+ await appsPage.clickModeler();
412
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
413
+ timeout: 120000,
414
+ });
415
+ });
416
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a REST Connector Document Handling Flow', async () => {
417
+ await (0, UtilitiesPage_3.modelAndRunConnectorsDocHandlingDiagram)(modelerCreatePage, modelerHomePage, processName, page, connectorMarketplacePage, defaultClusterName, `"${credentials.zeebeUrl}"`, `"${credentials.zeebeClientId}"`, `"${credentials.zeebeClientSecret}"`);
418
+ });
419
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert variable values are correct', async () => {
420
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
421
+ timeout: 120000,
422
+ });
423
+ await modelerCreatePage.clickViewProcessInstanceLink();
424
+ const operateTabPromise = page.waitForEvent('popup', { timeout: 60000 });
425
+ const operateTab = await operateTabPromise;
426
+ const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
427
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTabProcessInstancePage, operateTabProcessInstancePage.completedIcon, 'completed icon');
428
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc', 'gcp');
429
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc', '14e564c347119f8bdde27c80ff5b3cb8d92709c5a6177b74cde568c5503c1f12');
430
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc', '72519');
431
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc', 'image/jpeg');
432
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc2', 'gcp');
433
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc2', '14e564c347119f8bdde27c80ff5b3cb8d92709c5a6177b74cde568c5503c1f12');
434
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc2', '72519');
435
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('doc2', 'image/jpeg');
436
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('uploadBatch', 'gcp');
437
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('uploadBatch', '201');
438
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('uploadDoc2', 'gcp');
439
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('uploadDoc2', '201');
440
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('uploadDoc2', 'gcp');
441
+ await operateTabProcessInstancePage.assertProcessVariableContainsText('GetDocUpload', '200');
442
+ });
443
+ });
444
+ //Skipped due to bug 1252: https://github.com/camunda/c8-cross-component-e2e-tests/issues/1252
445
+ _8_10_1.test.skip('Connectors Timer Event User Flow', async ({ page, modelerHomePage, appsPage, modelerCreatePage, connectorMarketplacePage, connectorTemplatePage, }) => {
446
+ _8_10_1.test.slow();
447
+ const processName = 'Connectors_Timer_Event_Process' + (await (0, _setup_1.generateRandomStringAsync)(3));
448
+ await _8_10_1.test.step('Navigate to Web Modeler', async () => {
449
+ await appsPage.clickCamundaApps();
450
+ await appsPage.clickModeler();
451
+ await (0, test_1.expect)(modelerHomePage.modelerPageBanner).toBeVisible({
452
+ timeout: 120000,
453
+ });
454
+ });
455
+ await _8_10_1.test.step('Open Cross Component Test Project and Create a REST Connector Document Handling Flow', async () => {
456
+ await (0, UtilitiesPage_1.modelAndRunConnectorsTimerEventDiagram)(modelerCreatePage, modelerHomePage, processName, page, connectorMarketplacePage, defaultClusterName, connectorTemplatePage);
457
+ });
458
+ await _8_10_1.test.step('View Process Instance in Operate, assert it completes and assert variable values are correct', async () => {
459
+ await (0, test_1.expect)(modelerCreatePage.viewProcessInstanceLink).toBeVisible({
460
+ timeout: 120000,
461
+ });
462
+ await modelerCreatePage.clickViewProcessInstanceLink();
463
+ const operateTabPromise = page.waitForEvent('popup', { timeout: 60000 });
464
+ const operateTab = await operateTabPromise;
465
+ const operateTabProcessInstancePage = new OperateProcessInstancePage_1.OperateProcessInstancePage(operateTab);
466
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTabProcessInstancePage, operateTabProcessInstancePage.activeIcon, 'Active icon', 60000);
467
+ await (0, UtilitiesPage_1.assertLocatorVisibleWithRetry)(operateTabProcessInstancePage, operateTabProcessInstancePage.completedIcon, 'Completed icon');
468
+ await (0, test_1.expect)(operateTab.getByText('["20A","20B"]')).toBeVisible({
469
+ timeout: 60000,
470
+ });
471
+ await (0, test_1.expect)(operateTab.getByText('seatNumbers')).toBeVisible({
472
+ timeout: 60000,
473
+ });
474
+ await (0, test_1.expect)(operateTab.getByText('paymentRequestId')).toBeVisible({
475
+ timeout: 60000,
476
+ });
477
+ });
478
+ });
479
+ });
@@ -0,0 +1 @@
1
+ export {};