@camunda/e2e-test-suite 0.0.876 → 0.0.878

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.
@@ -117,17 +117,16 @@ class ModelerCreatePage {
117
117
  this.appendElementButton = page
118
118
  .locator('[class="djs-create-pad open djs-append-create-pad"]')
119
119
  .first();
120
- this.appendTaskButton = page.getByTitle('Append task');
120
+ this.appendTaskButton = page.getByRole('button', { name: 'Append task' });
121
121
  this.changeTypeButton = page.getByRole('button', {
122
122
  name: 'Change element',
123
123
  exact: true,
124
124
  });
125
- this.userTaskOption = page
126
- .getByRole('listitem', { name: 'User task' })
127
- .locator('span')
128
- .first();
125
+ this.userTaskOption = page.getByRole('option', { name: 'User task' });
129
126
  this.priorityInput = page.getByRole('textbox', { name: 'priority' });
130
- this.appendEndEventButton = page.getByTitle('Append end event');
127
+ this.appendEndEventButton = page.getByRole('button', {
128
+ name: 'Append end event',
129
+ });
131
130
  this.dialog = page.getByRole('dialog');
132
131
  this.deployAndRunMainButton = page.getByRole('button', {
133
132
  name: 'Deploy & run',
@@ -159,10 +158,7 @@ class ModelerCreatePage {
159
158
  .getByText('New form');
160
159
  this.deploySubButton = page.locator('[data-test="deploy-action"]');
161
160
  this.cancelButton = page.getByRole('button', { name: 'Cancel' });
162
- this.restConnectorOption = page.getByRole('listitem', {
163
- name: 'REST Outbound Connector',
164
- exact: true,
165
- });
161
+ this.restConnectorOption = page.locator('[data-id="replace.template-io.camunda.connectors.HttpJson.v2"]');
166
162
  this.webhookMessageStartEventConnectorOption = page.getByRole('listitem', {
167
163
  name: 'Webhook Message Start Event Connector',
168
164
  exact: true,
@@ -180,7 +176,9 @@ class ModelerCreatePage {
180
176
  this.createEndEvent = page.getByTitle('Create end event');
181
177
  this.canvas = page.locator('rect').nth(1);
182
178
  this.endEventCanvas = page.locator('[class="bjs-container"]');
183
- this.connectToOtherElementButton = page.getByTitle('Connect to other element');
179
+ this.connectToOtherElementButton = page.getByRole('button', {
180
+ name: 'Connect to other element',
181
+ });
184
182
  this.firstPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
185
183
  this.secondPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
186
184
  this.payloadInput = page.locator('[class="fjs-input"]');
@@ -196,7 +194,9 @@ class ModelerCreatePage {
196
194
  this.publicHolidayCountryCodeOption = page.getByLabel('Countrycode');
197
195
  this.implementationSection = page.locator('[data-group-id="group-userTaskImplementation"]');
198
196
  this.implementationOptions = page.locator('#bio-properties-panel-userTaskImplementation');
199
- this.intermediateBoundaryEvent = page.getByTitle('Append intermediate/boundary');
197
+ this.intermediateBoundaryEvent = page.getByRole('button', {
198
+ name: 'Append intermediate/boundary',
199
+ });
200
200
  this.intermediateWebhookConnectorOption = page.getByRole('listitem', {
201
201
  name: 'Webhook Intermediate Event',
202
202
  });
@@ -230,7 +230,9 @@ class ModelerCreatePage {
230
230
  this.deployDiagramDialog = page.getByRole('dialog', {
231
231
  name: 'Deploy diagram',
232
232
  });
233
- this.appendGatewayButton = page.getByTitle('append gateway');
233
+ this.appendGatewayButton = page.getByRole('button', {
234
+ name: 'Append gateway',
235
+ });
234
236
  this.parallelGatewayOption = page.getByText('parallel gateway');
235
237
  this.firstPlacedGateway = page
236
238
  .locator('[data-element-id*="Gateway"]')
@@ -238,7 +240,7 @@ class ModelerCreatePage {
238
240
  this.secondPlacedGateway = page
239
241
  .locator('[data-element-id*="Gateway"]')
240
242
  .last();
241
- this.serviceTaskOption = page.getByRole('listitem', { name: 'Service Task' });
243
+ this.serviceTaskOption = page.getByRole('option', { name: 'Service task' });
242
244
  this.taskDefinitionPanel = page.locator('[data-group-id="group-taskDefinition"]');
243
245
  this.jobTypeInput = page.getByRole('textbox', { name: /job type/i });
244
246
  this.playTab = page.getByRole('tab', {
@@ -253,7 +255,9 @@ class ModelerCreatePage {
253
255
  this.candidateUsersInput = page.getByRole('textbox', {
254
256
  name: 'candidate users',
255
257
  });
256
- this.appendGatewayButton = page.getByTitle('append gateway');
258
+ this.appendGatewayButton = page.getByRole('button', {
259
+ name: 'Append gateway',
260
+ });
257
261
  this.parallelGatewayOption = page.getByText('parallel gateway');
258
262
  this.firstPlacedGateway = page
259
263
  .locator('[data-element-id*="Gateway"]')
@@ -113,16 +113,15 @@ class ModelerCreatePage {
113
113
  this.appendElementButton = page
114
114
  .locator('[class="djs-create-pad open djs-append-create-pad"]')
115
115
  .first();
116
- this.appendTaskButton = page.getByTitle('Append task');
116
+ this.appendTaskButton = page.getByRole('button', { name: 'Append task' });
117
117
  this.changeTypeButton = page.getByRole('button', {
118
118
  name: 'Change element',
119
119
  exact: true,
120
120
  });
121
- this.userTaskOption = page
122
- .getByRole('listitem', { name: 'User task' })
123
- .locator('span')
124
- .first();
125
- this.appendEndEventButton = page.getByTitle('Append end event');
121
+ this.userTaskOption = page.getByRole('option', { name: 'User task' });
122
+ this.appendEndEventButton = page.getByRole('button', {
123
+ name: 'Append end event',
124
+ });
126
125
  this.dialog = page.getByRole('dialog');
127
126
  this.deployAndRunMainButton = page.getByRole('button', {
128
127
  name: 'Deploy & run',
@@ -146,10 +145,7 @@ class ModelerCreatePage {
146
145
  this.deployMainButton = page.locator('[data-test="deploy-button"]');
147
146
  this.deploySubButton = page.locator('[data-test="deploy-action"]');
148
147
  this.cancelButton = page.getByRole('button', { name: 'Cancel' });
149
- this.restConnectorOption = page.getByRole('listitem', {
150
- name: 'REST Outbound Connector',
151
- exact: true,
152
- });
148
+ this.restConnectorOption = page.locator('[data-id="replace.template-io.camunda.connectors.HttpJson.v2"]');
153
149
  this.webhookMessageStartEventConnectorOption = page.getByRole('listitem', {
154
150
  name: 'Webhook Message Start Event Connector',
155
151
  exact: true,
@@ -165,7 +161,9 @@ class ModelerCreatePage {
165
161
  this.createEndEvent = page.getByTitle('Create end event');
166
162
  this.canvas = page.locator('rect').nth(1);
167
163
  this.endEventCanvas = page.locator('[class="bjs-container"]');
168
- this.connectToOtherElementButton = page.getByTitle('Connect to other element');
164
+ this.connectToOtherElementButton = page.getByRole('button', {
165
+ name: 'Connect to other element',
166
+ });
169
167
  this.firstPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
170
168
  this.secondPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
171
169
  this.payloadInput = page.locator('[class="fjs-input"]');
@@ -177,7 +175,9 @@ class ModelerCreatePage {
177
175
  this.publicHolidayCountryCodeOption = page.getByLabel('Countrycode');
178
176
  this.implementationSection = page.locator('[data-group-id="group-userTaskImplementation"]');
179
177
  this.implementationOptions = page.locator('#bio-properties-panel-userTaskImplementation');
180
- this.intermediateBoundaryEvent = page.getByTitle('Append intermediate/boundary');
178
+ this.intermediateBoundaryEvent = page.getByRole('button', {
179
+ name: 'Append intermediate/boundary',
180
+ });
181
181
  this.intermediateWebhookConnectorOption = page.getByRole('listitem', {
182
182
  name: 'Webhook Intermediate Event',
183
183
  });
@@ -204,7 +204,9 @@ class ModelerCreatePage {
204
204
  this.deployDiagramDialog = page.getByRole('dialog', {
205
205
  name: 'Deploy diagram',
206
206
  });
207
- this.appendGatewayButton = page.getByTitle('append gateway');
207
+ this.appendGatewayButton = page.getByRole('button', {
208
+ name: 'Append gateway',
209
+ });
208
210
  this.parallelGatewayOption = page.getByText('parallel gateway');
209
211
  this.firstPlacedGateway = page
210
212
  .locator('[data-element-id*="Gateway"]')
@@ -212,7 +214,7 @@ class ModelerCreatePage {
212
214
  this.secondPlacedGateway = page
213
215
  .locator('[data-element-id*="Gateway"]')
214
216
  .last();
215
- this.serviceTaskOption = page.getByRole('listitem', { name: 'Service Task' });
217
+ this.serviceTaskOption = page.getByRole('option', { name: 'Service task' });
216
218
  this.taskDefinitionPanel = page.locator('[data-group-id="group-taskDefinition"]');
217
219
  this.jobTypeInput = page.getByRole('textbox', { name: /job type/i });
218
220
  this.playTab = page.getByRole('tab', {
@@ -227,7 +229,9 @@ class ModelerCreatePage {
227
229
  this.candidateUsersInput = page.getByRole('textbox', {
228
230
  name: 'candidate users',
229
231
  });
230
- this.appendGatewayButton = page.getByTitle('append gateway');
232
+ this.appendGatewayButton = page.getByRole('button', {
233
+ name: 'Append gateway',
234
+ });
231
235
  this.parallelGatewayOption = page.getByText('parallel gateway');
232
236
  this.firstPlacedGateway = page
233
237
  .locator('[data-element-id*="Gateway"]')
@@ -222,26 +222,23 @@ class TaskDetailsPage {
222
222
  });
223
223
  }
224
224
  async assertPdfPreviewViewerExists() {
225
- const containers = this.page.locator('[class="fjs-documentPreview-single-document-container"]');
226
- const firstPdfViewer = containers
227
- .first()
228
- .locator('.fjs-documentPreview-pdf-viewer');
229
- const lastPdfViewer = containers
230
- .last()
231
- .locator('.fjs-documentPreview-pdf-viewer');
225
+ // Documents render in the order the platform created them, which is not
226
+ // the upload order, so the PDF can sit in any container - including a
227
+ // middle one. Scope the viewer lookup to every document container instead
228
+ // of only the first and the last one.
229
+ const pdfViewer = this.page
230
+ .locator('.fjs-documentPreview-document-container')
231
+ .locator('.fjs-documentPreview-pdf-viewer')
232
+ .first();
232
233
  // The PDF viewer can take longer to mount on AWS clusters; if the first
233
234
  // wait misses, reload once and give the second wait more headroom before
234
235
  // failing the test.
235
236
  try {
236
- await (0, test_1.expect)(firstPdfViewer.or(lastPdfViewer)).toBeVisible({
237
- timeout: 60000,
238
- });
237
+ await (0, test_1.expect)(pdfViewer).toBeVisible({ timeout: 60000 });
239
238
  }
240
239
  catch {
241
240
  await this.page.reload();
242
- await (0, test_1.expect)(firstPdfViewer.or(lastPdfViewer)).toBeVisible({
243
- timeout: 90000,
244
- });
241
+ await (0, test_1.expect)(pdfViewer).toBeVisible({ timeout: 90000 });
245
242
  }
246
243
  }
247
244
  async clickSubmitButton() {
@@ -116,17 +116,16 @@ class ModelerCreatePage {
116
116
  this.appendElementButton = page
117
117
  .locator('[class="djs-create-pad open djs-append-create-pad"]')
118
118
  .first();
119
- this.appendTaskButton = page.getByTitle('Append task');
119
+ this.appendTaskButton = page.getByRole('button', { name: 'Append task' });
120
120
  this.changeTypeButton = page.getByRole('button', {
121
121
  name: 'Change element',
122
122
  exact: true,
123
123
  });
124
- this.userTaskOption = page
125
- .getByRole('listitem', { name: 'User task' })
126
- .locator('span')
127
- .first();
124
+ this.userTaskOption = page.getByRole('option', { name: 'User task' });
128
125
  this.priorityInput = page.getByRole('textbox', { name: 'priority' });
129
- this.appendEndEventButton = page.getByTitle('Append end event');
126
+ this.appendEndEventButton = page.getByRole('button', {
127
+ name: 'Append end event',
128
+ });
130
129
  this.startInstanceMainButton = this.startInstanceMainButton = page
131
130
  .getByTitle('Deploys the current process (if not already deployed) and starts a new instance')
132
131
  .first();
@@ -161,10 +160,7 @@ class ModelerCreatePage {
161
160
  .getByText('New form');
162
161
  this.deploySubButton = page.locator('[data-test="deploy-action"]');
163
162
  this.cancelButton = page.getByRole('button', { name: 'Cancel' });
164
- this.restConnectorOption = page.getByRole('listitem', {
165
- name: 'REST Outbound Connector',
166
- exact: true,
167
- });
163
+ this.restConnectorOption = page.locator('[data-id="replace.template-io.camunda.connectors.HttpJson.v2"]');
168
164
  this.webhookMessageStartEventConnectorOption = page.getByRole('listitem', {
169
165
  name: 'Webhook Message Start Event Connector',
170
166
  exact: true,
@@ -182,7 +178,9 @@ class ModelerCreatePage {
182
178
  this.createEndEvent = page.getByTitle('Create end event');
183
179
  this.canvas = page.locator('rect').nth(1);
184
180
  this.endEventCanvas = page.locator('[class="bjs-container"]');
185
- this.connectToOtherElementButton = page.getByTitle('Connect to other element');
181
+ this.connectToOtherElementButton = page.getByRole('button', {
182
+ name: 'Connect to other element',
183
+ });
186
184
  this.firstPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
187
185
  this.secondPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
188
186
  this.payloadInput = page.locator('[class="fjs-input"]');
@@ -197,7 +195,9 @@ class ModelerCreatePage {
197
195
  this.publicHolidayCountryCodeOption = page.getByLabel('Countrycode');
198
196
  this.implementationSection = page.locator('[data-group-id="group-userTaskImplementation"]');
199
197
  this.implementationOptions = page.locator('#bio-properties-panel-userTaskImplementation');
200
- this.intermediateBoundaryEvent = page.getByTitle('Append intermediate/boundary');
198
+ this.intermediateBoundaryEvent = page.getByRole('button', {
199
+ name: 'Append intermediate/boundary',
200
+ });
201
201
  this.intermediateWebhookConnectorOption = page.getByRole('listitem', {
202
202
  name: 'Webhook Intermediate Event',
203
203
  });
@@ -233,7 +233,9 @@ class ModelerCreatePage {
233
233
  this.deployDiagramDialog = page.getByRole('dialog', {
234
234
  name: 'Deploy diagram',
235
235
  });
236
- this.appendGatewayButton = page.getByTitle('append gateway');
236
+ this.appendGatewayButton = page.getByRole('button', {
237
+ name: 'Append gateway',
238
+ });
237
239
  this.parallelGatewayOption = page.getByText('parallel gateway');
238
240
  this.firstPlacedGateway = page
239
241
  .locator('[data-element-id*="Gateway"]')
@@ -241,7 +243,7 @@ class ModelerCreatePage {
241
243
  this.secondPlacedGateway = page
242
244
  .locator('[data-element-id*="Gateway"]')
243
245
  .last();
244
- this.serviceTaskOption = page.getByRole('listitem', { name: 'Service Task' });
246
+ this.serviceTaskOption = page.getByRole('option', { name: 'Service task' });
245
247
  this.taskDefinitionPanel = page.locator('[data-group-id="group-taskDefinition"]');
246
248
  this.jobTypeInput = page.getByRole('textbox', { name: /job type/i });
247
249
  this.playTab = page.getByRole('tab', {
@@ -256,7 +258,9 @@ class ModelerCreatePage {
256
258
  this.candidateUsersInput = page.getByRole('textbox', {
257
259
  name: 'candidate users',
258
260
  });
259
- this.appendGatewayButton = page.getByTitle('append gateway');
261
+ this.appendGatewayButton = page.getByRole('button', {
262
+ name: 'Append gateway',
263
+ });
260
264
  this.parallelGatewayOption = page.getByText('parallel gateway');
261
265
  this.firstPlacedGateway = page
262
266
  .locator('[data-element-id*="Gateway"]')
@@ -116,17 +116,16 @@ class ModelerCreatePage {
116
116
  this.appendElementButton = page
117
117
  .locator('[class="djs-create-pad open djs-append-create-pad"]')
118
118
  .first();
119
- this.appendTaskButton = page.getByTitle('Append task');
119
+ this.appendTaskButton = page.getByRole('button', { name: 'Append task' });
120
120
  this.changeTypeButton = page.getByRole('button', {
121
121
  name: 'Change element',
122
122
  exact: true,
123
123
  });
124
- this.userTaskOption = page
125
- .getByRole('listitem', { name: 'User task' })
126
- .locator('span')
127
- .first();
124
+ this.userTaskOption = page.getByRole('option', { name: 'User task' });
128
125
  this.priorityInput = page.getByRole('textbox', { name: 'priority' });
129
- this.appendEndEventButton = page.getByTitle('Append end event');
126
+ this.appendEndEventButton = page.getByRole('button', {
127
+ name: 'Append end event',
128
+ });
130
129
  this.dialog = page.getByRole('dialog');
131
130
  this.deployAndRunMainButton = page.getByRole('button', {
132
131
  name: 'Deploy & run',
@@ -157,10 +156,7 @@ class ModelerCreatePage {
157
156
  .getByText('New form');
158
157
  this.deploySubButton = page.locator('[data-test="deploy-action"]');
159
158
  this.cancelButton = page.getByRole('button', { name: 'Cancel' });
160
- this.restConnectorOption = page.getByRole('listitem', {
161
- name: 'REST Outbound Connector',
162
- exact: true,
163
- });
159
+ this.restConnectorOption = page.locator('[data-id="replace.template-io.camunda.connectors.HttpJson.v2"]');
164
160
  this.webhookMessageStartEventConnectorOption = page.getByRole('listitem', {
165
161
  name: 'Webhook Message Start Event Connector',
166
162
  exact: true,
@@ -178,7 +174,9 @@ class ModelerCreatePage {
178
174
  this.createEndEvent = page.getByTitle('Create end event');
179
175
  this.canvas = page.locator('rect').nth(1);
180
176
  this.endEventCanvas = page.locator('[class="bjs-container"]');
181
- this.connectToOtherElementButton = page.getByTitle('Connect to other element');
177
+ this.connectToOtherElementButton = page.getByRole('button', {
178
+ name: 'Connect to other element',
179
+ });
182
180
  this.firstPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
183
181
  this.secondPlacedElement = page.locator('g:nth-child(2) > .djs-element > .djs-hit');
184
182
  this.payloadInput = page.locator('[class="fjs-input"]');
@@ -194,7 +192,9 @@ class ModelerCreatePage {
194
192
  this.publicHolidayCountryCodeOption = page.getByLabel('Countrycode');
195
193
  this.implementationSection = page.locator('[data-group-id="group-userTaskImplementation"]');
196
194
  this.implementationOptions = page.locator('#bio-properties-panel-userTaskImplementation');
197
- this.intermediateBoundaryEvent = page.getByTitle('Append intermediate/boundary');
195
+ this.intermediateBoundaryEvent = page.getByRole('button', {
196
+ name: 'Append intermediate/boundary',
197
+ });
198
198
  this.intermediateWebhookConnectorOption = page.getByRole('listitem', {
199
199
  name: 'Webhook Intermediate Event',
200
200
  });
@@ -229,7 +229,9 @@ class ModelerCreatePage {
229
229
  this.deployDiagramDialog = page.getByRole('dialog', {
230
230
  name: 'Deploy diagram',
231
231
  });
232
- this.appendGatewayButton = page.getByTitle('append gateway');
232
+ this.appendGatewayButton = page.getByRole('button', {
233
+ name: 'Append gateway',
234
+ });
233
235
  this.parallelGatewayOption = page.getByText('parallel gateway');
234
236
  this.firstPlacedGateway = page
235
237
  .locator('[data-element-id*="Gateway"]')
@@ -237,7 +239,7 @@ class ModelerCreatePage {
237
239
  this.secondPlacedGateway = page
238
240
  .locator('[data-element-id*="Gateway"]')
239
241
  .last();
240
- this.serviceTaskOption = page.getByRole('listitem', { name: 'Service Task' });
242
+ this.serviceTaskOption = page.getByRole('option', { name: 'Service task' });
241
243
  this.taskDefinitionPanel = page.locator('[data-group-id="group-taskDefinition"]');
242
244
  this.jobTypeInput = page.getByRole('textbox', { name: /job type/i });
243
245
  this.playTab = page.getByRole('tab', {
@@ -252,7 +254,9 @@ class ModelerCreatePage {
252
254
  this.candidateUsersInput = page.getByRole('textbox', {
253
255
  name: 'candidate users',
254
256
  });
255
- this.appendGatewayButton = page.getByTitle('append gateway');
257
+ this.appendGatewayButton = page.getByRole('button', {
258
+ name: 'Append gateway',
259
+ });
256
260
  this.parallelGatewayOption = page.getByText('parallel gateway');
257
261
  this.firstPlacedGateway = page
258
262
  .locator('[data-element-id*="Gateway"]')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camunda/e2e-test-suite",
3
- "version": "0.0.876",
3
+ "version": "0.0.878",
4
4
  "description": "End-to-end test helpers for Camunda 8",
5
5
  "repository": {
6
6
  "type": "git",