@camunda/e2e-test-suite 0.0.331 → 0.0.333

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 (37) hide show
  1. package/dist/pages/SM-8.10/IdentityTenantPage.js +2 -1
  2. package/dist/pages/SM-8.10/ModelerCreatePage.d.ts +1 -1
  3. package/dist/pages/SM-8.10/ModelerCreatePage.js +5 -1
  4. package/dist/pages/SM-8.10/OCIdentityClusterVariablesPage.js +7 -3
  5. package/dist/pages/SM-8.10/OperateProcessesPage.js +1 -1
  6. package/dist/pages/SM-8.10/PlayPage.js +3 -4
  7. package/dist/pages/SM-8.10/TaskDetailsPage.js +2 -2
  8. package/dist/pages/SM-8.10/TaskPanelPage.js +3 -1
  9. package/dist/pages/SM-8.10/UtilitiesPage.d.ts +4 -4
  10. package/dist/pages/SM-8.10/UtilitiesPage.js +42 -9
  11. package/dist/pages/SM-8.6/IdentityTenantPage.js +1 -0
  12. package/dist/pages/SM-8.7/IdentityTenantPage.js +1 -0
  13. package/dist/pages/SM-8.8/IdentityTenantPage.js +1 -0
  14. package/dist/pages/SM-8.9/IdentityTenantPage.js +2 -1
  15. package/dist/pages/SM-8.9/ModelerCreatePage.d.ts +1 -1
  16. package/dist/pages/SM-8.9/ModelerCreatePage.js +5 -1
  17. package/dist/pages/SM-8.9/OCIdentityClusterVariablesPage.js +7 -3
  18. package/dist/pages/SM-8.9/OperateProcessesPage.js +1 -1
  19. package/dist/pages/SM-8.9/PlayPage.js +3 -4
  20. package/dist/pages/SM-8.9/TaskDetailsPage.js +2 -2
  21. package/dist/pages/SM-8.9/TaskPanelPage.js +3 -1
  22. package/dist/pages/SM-8.9/UtilitiesPage.d.ts +4 -4
  23. package/dist/pages/SM-8.9/UtilitiesPage.js +42 -9
  24. package/dist/tests/SM-8.10/cluster-variables.spec.js +48 -12
  25. package/dist/tests/SM-8.10/connectors-user-flows.spec.js +7 -6
  26. package/dist/tests/SM-8.10/hto-user-flows.spec.js +7 -6
  27. package/dist/tests/SM-8.10/mt-enabled-user-flows.spec.js +8 -6
  28. package/dist/tests/SM-8.10/play.spec.js +9 -2
  29. package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.js +8 -6
  30. package/dist/tests/SM-8.8/mt-enabled-user-flows.spec.js +8 -6
  31. package/dist/tests/SM-8.9/cluster-variables.spec.js +48 -12
  32. package/dist/tests/SM-8.9/connectors-user-flows.spec.js +7 -6
  33. package/dist/tests/SM-8.9/hto-user-flows.spec.js +7 -6
  34. package/dist/tests/SM-8.9/mt-enabled-user-flows.spec.js +8 -6
  35. package/dist/tests/SM-8.9/play.spec.js +9 -2
  36. package/dist/utils/apiHelpers.js +15 -5
  37. package/package.json +1 -1
@@ -6,6 +6,7 @@ const _setup_1 = require("../../test-setup.js");
6
6
  const sleep_1 = require("../../utils/sleep");
7
7
  const UtilitiesPage_1 = require("../../pages/SM-8.9/UtilitiesPage");
8
8
  const resetSession_1 = require("../../utils/resetSession");
9
+ const mtTenant = process.env.IS_MT === 'true' ? '<default>' : '';
9
10
  SM_8_9_1.test.describe.configure({ mode: 'parallel' });
10
11
  SM_8_9_1.test.describe('HTO User Flow Tests', () => {
11
12
  SM_8_9_1.test.beforeEach(async ({ navigationPage }, testInfo) => {
@@ -26,7 +27,7 @@ SM_8_9_1.test.describe('HTO User Flow Tests', () => {
26
27
  });
27
28
  await SM_8_9_1.test.step('Create BPMN Diagram with User Task and Start Process Instance', async () => {
28
29
  await modelerCreatePage.modelJobWorkerDiagram(processName);
29
- await modelerCreatePage.runProcessInstance();
30
+ await modelerCreatePage.runProcessInstance('', mtTenant);
30
31
  });
31
32
  await SM_8_9_1.test.step('View Process Instance in Operate, complete User Task in Tasklist & assert process complete in Operate', async () => {
32
33
  await navigationPage.goToOperate();
@@ -74,7 +75,7 @@ SM_8_9_1.test.describe('HTO User Flow Tests', () => {
74
75
  await modelerCreatePage.clickAppendElementButton();
75
76
  await modelerCreatePage.clickAppendEndEventButton('parallelGateway');
76
77
  await modelerCreatePage.setPriority(taskName, 1, 4);
77
- await modelerCreatePage.runProcessInstance();
78
+ await modelerCreatePage.runProcessInstance('', mtTenant);
78
79
  });
79
80
  await SM_8_9_1.test.step('Complete User Task in Tasklist & assert process complete in Operate', async () => {
80
81
  await navigationPage.goToTasklist();
@@ -113,7 +114,7 @@ SM_8_9_1.test.describe('HTO User Flow Tests', () => {
113
114
  });
114
115
  await SM_8_9_1.test.step('Create BPMN Diagram with User Task and Start Process Instance', async () => {
115
116
  await modelerCreatePage.modelCamundaUserTaskDiagram(processName);
116
- await modelerCreatePage.runProcessInstance('{"testVariable":"testValue"}');
117
+ await modelerCreatePage.runProcessInstance('{"testVariable":"testValue"}', mtTenant);
117
118
  await (0, sleep_1.sleep)(60000);
118
119
  });
119
120
  await SM_8_9_1.test.step('View Process Instance in Operate, Edit the Variable & Assert the Variable is Updated in Tasklist', async () => {
@@ -213,7 +214,7 @@ SM_8_9_1.test.describe('HTO User Flow Tests', () => {
213
214
  await modelerCreatePage.clickCandidateGroupsInput();
214
215
  await modelerCreatePage.fillCandidateGroupsInput(groupNameMultiple);
215
216
  await (0, sleep_1.sleep)(1000);
216
- await modelerCreatePage.runProcessInstance();
217
+ await modelerCreatePage.runProcessInstance('', mtTenant);
217
218
  });
218
219
  await SM_8_9_1.test.step('View User Tasks in Tasklist', async () => {
219
220
  await navigationPage.goToTasklist();
@@ -318,7 +319,7 @@ SM_8_9_1.test.describe('HTO User Flow Tests', () => {
318
319
  await modelerCreatePage.clickCandidateUsersInput();
319
320
  await modelerCreatePage.fillCandidateUsersInput(testUser);
320
321
  await (0, sleep_1.sleep)(1000);
321
- await modelerCreatePage.runProcessInstance();
322
+ await modelerCreatePage.runProcessInstance('', mtTenant);
322
323
  });
323
324
  await SM_8_9_1.test.step('View User Tasks in Tasklist', async () => {
324
325
  await navigationPage.goToTasklist();
@@ -383,7 +384,7 @@ SM_8_9_1.test.describe('HTO User Flow Tests', () => {
383
384
  await modelerHomePage.clickCrossComponentProjectFolder();
384
385
  });
385
386
  await SM_8_9_1.test.step('Create Two BPMN Diagrams with User Task and Start Process Instance', async () => {
386
- await (0, UtilitiesPage_1.runMultipleProcesses)(page, modelerHomePage, modelerCreatePage, 2, processName, processName);
387
+ await (0, UtilitiesPage_1.runMultipleProcesses)(page, modelerHomePage, modelerCreatePage, 2, processName, processName, mtTenant);
387
388
  });
388
389
  await SM_8_9_1.test.step('Navigate to Tasklist and Make Sure that the Two Deployed Processes Are Accessible', async () => {
389
390
  await navigationPage.goToTasklist();
@@ -8,6 +8,8 @@ const UtilitiesPage_1 = require("../../pages/SM-8.9/UtilitiesPage");
8
8
  const resetSession_1 = require("../../utils/resetSession");
9
9
  const expectTextWithRetry_1 = require("../../utils/assertionHelpers/expectTextWithRetry");
10
10
  const expectLocatorWithRetry_1 = require("../../utils/assertionHelpers/expectLocatorWithRetry");
11
+ const demoUserEmail = process.env.DEMO_USER_EMAIL || 'demo@example.org';
12
+ const demoUserDisplayText = `Demo User${demoUserEmail}`;
11
13
  if (process.env.IS_MT === 'true') {
12
14
  SM_8_9_1.test.describe.configure({ mode: 'parallel' });
13
15
  SM_8_9_1.test.describe('MT Enabled User Flows Test', () => {
@@ -42,7 +44,7 @@ if (process.env.IS_MT === 'true') {
42
44
  await SM_8_9_1.test.step('Create Tenant And Assign User in Management Identity', async () => {
43
45
  await navigationPage.goToManagementIdentity();
44
46
  await managementIdentityTenantPage.createTenant(tenantName);
45
- await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', 'Demo Userdemo@example.org');
47
+ await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', demoUserDisplayText);
46
48
  if (process.env.IS_OPTIMIZE !== 'false') {
47
49
  await managementIdentityTenantPage.assignClientToTenant('Optimize');
48
50
  }
@@ -141,7 +143,7 @@ if (process.env.IS_MT === 'true') {
141
143
  await SM_8_9_1.test.step('Create Tenant And Assign User in Management Identity', async () => {
142
144
  await navigationPage.goToManagementIdentity();
143
145
  await managementIdentityTenantPage.createTenant(tenantName);
144
- await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', 'Demo Userdemo@example.org');
146
+ await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', demoUserDisplayText);
145
147
  if (process.env.IS_OPTIMIZE !== 'false') {
146
148
  await managementIdentityTenantPage.assignClientToTenant('Optimize');
147
149
  }
@@ -337,7 +339,7 @@ if (process.env.IS_MT === 'true') {
337
339
  });
338
340
  await SM_8_9_1.test.step('Assign User To Default Tenant in Management Identity', async () => {
339
341
  await navigationPage.goToManagementIdentity();
340
- await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', 'Demo Userdemo@example.org');
342
+ await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', demoUserDisplayText);
341
343
  if (process.env.IS_OPTIMIZE !== 'false') {
342
344
  await managementIdentityTenantPage.assignClientToTenant('Optimize');
343
345
  }
@@ -410,13 +412,13 @@ if (process.env.IS_MT === 'true') {
410
412
  await SM_8_9_1.test.step('Create Two Tenants And Assign to Demo User in Management Identity', async () => {
411
413
  await navigationPage.goToManagementIdentity();
412
414
  await managementIdentityTenantPage.createTenant(tenantName1);
413
- await managementIdentityTenantPage.assignUserToTenant(tenantName1, 'demo', 'Demo Userdemo@example.org');
415
+ await managementIdentityTenantPage.assignUserToTenant(tenantName1, 'demo', demoUserDisplayText);
414
416
  if (process.env.IS_OPTIMIZE !== 'false') {
415
417
  await managementIdentityTenantPage.assignClientToTenant('Optimize');
416
418
  }
417
419
  await managementIdentityPage.clickTenantTab();
418
420
  await managementIdentityTenantPage.createTenant(tenantName2);
419
- await managementIdentityTenantPage.assignUserToTenant(tenantName2, 'demo', 'Demo Userdemo@example.org');
421
+ await managementIdentityTenantPage.assignUserToTenant(tenantName2, 'demo', demoUserDisplayText);
420
422
  if (process.env.IS_OPTIMIZE !== 'false') {
421
423
  await managementIdentityTenantPage.assignClientToTenant('Optimize');
422
424
  }
@@ -476,7 +478,7 @@ if (process.env.IS_MT === 'true') {
476
478
  await SM_8_9_1.test.step('Create Tenant And Assign User in Management Identity', async () => {
477
479
  await navigationPage.goToManagementIdentity();
478
480
  await managementIdentityTenantPage.createTenant(tenantName);
479
- await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', 'Demo Userdemo@example.org');
481
+ await managementIdentityTenantPage.assignUserToTenant(tenantName, 'demo', demoUserDisplayText);
480
482
  if (process.env.IS_OPTIMIZE !== 'false') {
481
483
  await managementIdentityTenantPage.assignClientToTenant('Optimize');
482
484
  }
@@ -125,8 +125,15 @@ SM_8_9_1.test.describe('Deploy and run a process in Play', () => {
125
125
  await modelerCreatePage.clickSecondPlacedGateway();
126
126
  await (0, sleep_1.sleep)(5000);
127
127
  await modelerCreatePage.switchToPlay();
128
- await modelerCreatePage.clickContinueToPlay();
129
- await (0, sleep_1.sleep)(5000);
128
+ // After diagram modification, Play may show a "Continue" button
129
+ // to redeploy, or it may show the diagram directly. Try clicking
130
+ // Continue if present, then wait for the diagram to be ready.
131
+ try {
132
+ await modelerCreatePage.clickContinueToPlay();
133
+ }
134
+ catch {
135
+ // Continue button not present; Play loaded directly
136
+ }
130
137
  await playPage.clickStartInstanceButton();
131
138
  await playPage.waitForNextElementToBeActive('zeebe-user-task' + randomString + '1');
132
139
  await playPage.waitForCompleteJobButtonToBeAvailable();
@@ -244,11 +244,16 @@ async function deployProcess(filePath, authToken, environment, clusterType) {
244
244
  buffer: fileContent,
245
245
  };
246
246
  const url = buildZeebeApiUrl('/v2/deployments', environment, clusterType);
247
+ const isMT = process.env.IS_MT === 'true';
248
+ const multipart = { resources };
249
+ if (isMT) {
250
+ multipart.tenantId = '<default>';
251
+ }
247
252
  const response = await apiRequestContext.post(url, {
248
253
  headers: {
249
254
  Authorization: authToken ?? '',
250
255
  },
251
- multipart: { resources },
256
+ multipart,
252
257
  });
253
258
  if (response.status() !== 200) {
254
259
  const body = await response.text();
@@ -272,14 +277,19 @@ exports.deployProcess = deployProcess;
272
277
  async function createProcessInstance(processDefinitionKey, authToken, environment, clusterType, variables) {
273
278
  apiRequestContext = await getApiRequestContext();
274
279
  const url = buildZeebeApiUrl('/v2/process-instances', environment, clusterType);
280
+ const isMT = process.env.IS_MT === 'true';
281
+ const data = {
282
+ processDefinitionKey: String(processDefinitionKey),
283
+ variables: variables ?? {},
284
+ };
285
+ if (isMT) {
286
+ data.tenantId = '<default>';
287
+ }
275
288
  const response = await apiRequestContext.post(url, {
276
289
  headers: {
277
290
  Authorization: authToken ?? '',
278
291
  },
279
- data: {
280
- processDefinitionKey: String(processDefinitionKey),
281
- variables: variables ?? {},
282
- },
292
+ data,
283
293
  });
284
294
  (0, test_1.expect)(response.status()).toBe(200);
285
295
  const responseBody = await response.json();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camunda/e2e-test-suite",
3
- "version": "0.0.331",
3
+ "version": "0.0.333",
4
4
  "description": "End-to-end test helpers for Camunda 8",
5
5
  "repository": {
6
6
  "type": "git",