@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.
- package/dist/pages/SM-8.10/IdentityTenantPage.js +2 -1
- package/dist/pages/SM-8.10/ModelerCreatePage.d.ts +1 -1
- package/dist/pages/SM-8.10/ModelerCreatePage.js +5 -1
- package/dist/pages/SM-8.10/OCIdentityClusterVariablesPage.js +7 -3
- package/dist/pages/SM-8.10/OperateProcessesPage.js +1 -1
- package/dist/pages/SM-8.10/PlayPage.js +3 -4
- package/dist/pages/SM-8.10/TaskDetailsPage.js +2 -2
- package/dist/pages/SM-8.10/TaskPanelPage.js +3 -1
- package/dist/pages/SM-8.10/UtilitiesPage.d.ts +4 -4
- package/dist/pages/SM-8.10/UtilitiesPage.js +42 -9
- package/dist/pages/SM-8.6/IdentityTenantPage.js +1 -0
- package/dist/pages/SM-8.7/IdentityTenantPage.js +1 -0
- package/dist/pages/SM-8.8/IdentityTenantPage.js +1 -0
- package/dist/pages/SM-8.9/IdentityTenantPage.js +2 -1
- package/dist/pages/SM-8.9/ModelerCreatePage.d.ts +1 -1
- package/dist/pages/SM-8.9/ModelerCreatePage.js +5 -1
- package/dist/pages/SM-8.9/OCIdentityClusterVariablesPage.js +7 -3
- package/dist/pages/SM-8.9/OperateProcessesPage.js +1 -1
- package/dist/pages/SM-8.9/PlayPage.js +3 -4
- package/dist/pages/SM-8.9/TaskDetailsPage.js +2 -2
- package/dist/pages/SM-8.9/TaskPanelPage.js +3 -1
- package/dist/pages/SM-8.9/UtilitiesPage.d.ts +4 -4
- package/dist/pages/SM-8.9/UtilitiesPage.js +42 -9
- package/dist/tests/SM-8.10/cluster-variables.spec.js +48 -12
- package/dist/tests/SM-8.10/connectors-user-flows.spec.js +7 -6
- package/dist/tests/SM-8.10/hto-user-flows.spec.js +7 -6
- package/dist/tests/SM-8.10/mt-enabled-user-flows.spec.js +8 -6
- package/dist/tests/SM-8.10/play.spec.js +9 -2
- package/dist/tests/SM-8.6/mt-enabled-user-flows.spec.js +8 -6
- package/dist/tests/SM-8.8/mt-enabled-user-flows.spec.js +8 -6
- package/dist/tests/SM-8.9/cluster-variables.spec.js +48 -12
- package/dist/tests/SM-8.9/connectors-user-flows.spec.js +7 -6
- package/dist/tests/SM-8.9/hto-user-flows.spec.js +7 -6
- package/dist/tests/SM-8.9/mt-enabled-user-flows.spec.js +8 -6
- package/dist/tests/SM-8.9/play.spec.js +9 -2
- package/dist/utils/apiHelpers.js +15 -5
- 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',
|
|
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',
|
|
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',
|
|
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',
|
|
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',
|
|
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',
|
|
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
|
-
|
|
129
|
-
|
|
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();
|
package/dist/utils/apiHelpers.js
CHANGED
|
@@ -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
|
|
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();
|