@onecx/angular-testing 4.11.0

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 (55) hide show
  1. package/README.md +7 -0
  2. package/esm2020/index.mjs +26 -0
  3. package/esm2020/lib/harnesses/button.harness.mjs +31 -0
  4. package/esm2020/lib/harnesses/div.harness.mjs +28 -0
  5. package/esm2020/lib/harnesses/input.harness.mjs +39 -0
  6. package/esm2020/lib/harnesses/list-item.harness.mjs +14 -0
  7. package/esm2020/lib/harnesses/menu-item.harness.mjs +11 -0
  8. package/esm2020/lib/harnesses/p-tableCheckbox.harness.mjs +18 -0
  9. package/esm2020/lib/harnesses/p.harness.mjs +30 -0
  10. package/esm2020/lib/harnesses/primeng/p-button-directive.harness.mjs +23 -0
  11. package/esm2020/lib/harnesses/primeng/p-button.harness.mjs +14 -0
  12. package/esm2020/lib/harnesses/primeng/p-chart.harness.mjs +11 -0
  13. package/esm2020/lib/harnesses/primeng/p-checkbox.harness.mjs +27 -0
  14. package/esm2020/lib/harnesses/primeng/p-dialog.harness.mjs +25 -0
  15. package/esm2020/lib/harnesses/primeng/p-dropdown.harness.mjs +49 -0
  16. package/esm2020/lib/harnesses/primeng/p-menu.harness.mjs +21 -0
  17. package/esm2020/lib/harnesses/primeng/p-multiSelect.harness.mjs +60 -0
  18. package/esm2020/lib/harnesses/primeng/p-multiSelectListItem.harness.mjs +14 -0
  19. package/esm2020/lib/harnesses/primeng/p-paginator.harness.mjs +21 -0
  20. package/esm2020/lib/harnesses/primeng/p-picklist.harness.mjs +64 -0
  21. package/esm2020/lib/harnesses/primeng/p-selectButton.harness.mjs +9 -0
  22. package/esm2020/lib/harnesses/span.harness.mjs +17 -0
  23. package/esm2020/lib/harnesses/table-header-column.harness.mjs +19 -0
  24. package/esm2020/lib/harnesses/table-row.harness.mjs +19 -0
  25. package/esm2020/lib/harnesses/utils/primeicon.utils.mjs +2 -0
  26. package/esm2020/onecx-angular-testing.mjs +5 -0
  27. package/fesm2015/onecx-angular-testing.mjs +710 -0
  28. package/fesm2015/onecx-angular-testing.mjs.map +1 -0
  29. package/fesm2020/onecx-angular-testing.mjs +537 -0
  30. package/fesm2020/onecx-angular-testing.mjs.map +1 -0
  31. package/index.d.ts +25 -0
  32. package/lib/harnesses/button.harness.d.ts +15 -0
  33. package/lib/harnesses/div.harness.d.ts +13 -0
  34. package/lib/harnesses/input.harness.d.ts +14 -0
  35. package/lib/harnesses/list-item.harness.d.ts +7 -0
  36. package/lib/harnesses/menu-item.harness.d.ts +6 -0
  37. package/lib/harnesses/p-tableCheckbox.harness.d.ts +10 -0
  38. package/lib/harnesses/p.harness.d.ts +14 -0
  39. package/lib/harnesses/primeng/p-button-directive.harness.d.ts +13 -0
  40. package/lib/harnesses/primeng/p-button.harness.d.ts +10 -0
  41. package/lib/harnesses/primeng/p-chart.harness.d.ts +6 -0
  42. package/lib/harnesses/primeng/p-checkbox.harness.d.ts +14 -0
  43. package/lib/harnesses/primeng/p-dialog.harness.d.ts +13 -0
  44. package/lib/harnesses/primeng/p-dropdown.harness.d.ts +18 -0
  45. package/lib/harnesses/primeng/p-menu.harness.d.ts +8 -0
  46. package/lib/harnesses/primeng/p-multiSelect.harness.d.ts +19 -0
  47. package/lib/harnesses/primeng/p-multiSelectListItem.harness.d.ts +7 -0
  48. package/lib/harnesses/primeng/p-paginator.harness.d.ts +12 -0
  49. package/lib/harnesses/primeng/p-picklist.harness.d.ts +38 -0
  50. package/lib/harnesses/primeng/p-selectButton.harness.d.ts +5 -0
  51. package/lib/harnesses/span.harness.d.ts +11 -0
  52. package/lib/harnesses/table-header-column.harness.d.ts +9 -0
  53. package/lib/harnesses/table-row.harness.d.ts +10 -0
  54. package/lib/harnesses/utils/primeicon.utils.d.ts +2 -0
  55. package/package.json +34 -0
@@ -0,0 +1,710 @@
1
+ import { __awaiter } from 'tslib';
2
+ import { ComponentHarness, HarnessPredicate, ContentContainerComponentHarness, TestKey } from '@angular/cdk/testing';
3
+ export * from '@angular/cdk/testing';
4
+ export * from '@angular/cdk/testing/testbed';
5
+
6
+ class PButtonDirectiveHarness extends ComponentHarness {
7
+ static with(options) {
8
+ return new HarnessPredicate(PButtonDirectiveHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
9
+ }
10
+ getId() {
11
+ return __awaiter(this, void 0, void 0, function* () {
12
+ return yield (yield this.host()).getAttribute('id');
13
+ });
14
+ }
15
+ click() {
16
+ return __awaiter(this, void 0, void 0, function* () {
17
+ yield (yield this.host()).click();
18
+ });
19
+ }
20
+ getLabel() {
21
+ return __awaiter(this, void 0, void 0, function* () {
22
+ return yield (yield this.host()).text();
23
+ });
24
+ }
25
+ getIcon() {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ return yield (yield this.host()).getAttribute('ng-reflect-icon');
28
+ });
29
+ }
30
+ getDisabled() {
31
+ return __awaiter(this, void 0, void 0, function* () {
32
+ return yield (yield this.host()).getProperty('disabled');
33
+ });
34
+ }
35
+ }
36
+ PButtonDirectiveHarness.hostSelector = 'button[pButton]';
37
+
38
+ class PButtonHarness extends ComponentHarness {
39
+ static with(options) {
40
+ return new HarnessPredicate(PButtonHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
41
+ }
42
+ getId() {
43
+ return __awaiter(this, void 0, void 0, function* () {
44
+ return yield (yield this.host()).getAttribute('id');
45
+ });
46
+ }
47
+ click() {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ yield (yield this.locatorFor('button')()).click();
50
+ });
51
+ }
52
+ }
53
+ PButtonHarness.hostSelector = 'p-button';
54
+
55
+ class PChartHarness extends ComponentHarness {
56
+ getType() {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ return yield (yield this.host()).getAttribute('ng-reflect-type');
59
+ });
60
+ }
61
+ getOptions() {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ return yield (yield this.host()).getAttribute('ng-reflect-options');
64
+ });
65
+ }
66
+ }
67
+ PChartHarness.hostSelector = 'p-chart';
68
+
69
+ class DivHarness extends ComponentHarness {
70
+ static with(options) {
71
+ return new HarnessPredicate(DivHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
72
+ }
73
+ getByClass(c) {
74
+ return __awaiter(this, void 0, void 0, function* () {
75
+ return (yield (yield this.host()).hasClass(c)) ? c : '';
76
+ });
77
+ }
78
+ checkHasClass(value) {
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ return yield (yield this.host()).hasClass(value);
81
+ });
82
+ }
83
+ getText() {
84
+ return __awaiter(this, void 0, void 0, function* () {
85
+ return yield (yield this.host()).text();
86
+ });
87
+ }
88
+ getClassList() {
89
+ return __awaiter(this, void 0, void 0, function* () {
90
+ const host = yield this.host();
91
+ const attributeString = yield host.getAttribute('class');
92
+ if (attributeString) {
93
+ return attributeString.trim().split(' ');
94
+ }
95
+ return [];
96
+ });
97
+ }
98
+ click() {
99
+ return __awaiter(this, void 0, void 0, function* () {
100
+ yield (yield this.host()).click();
101
+ });
102
+ }
103
+ }
104
+ DivHarness.hostSelector = 'div';
105
+
106
+ class InputHarness extends ComponentHarness {
107
+ static with(options) {
108
+ return new HarnessPredicate(InputHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
109
+ }
110
+ getId() {
111
+ return __awaiter(this, void 0, void 0, function* () {
112
+ return yield (yield this.host()).getAttribute('id');
113
+ });
114
+ }
115
+ getValue() {
116
+ return __awaiter(this, void 0, void 0, function* () {
117
+ return yield (yield this.host()).getProperty('value');
118
+ });
119
+ }
120
+ getChecked() {
121
+ return __awaiter(this, void 0, void 0, function* () {
122
+ return yield (yield this.host()).getProperty('checked');
123
+ });
124
+ }
125
+ setValue(value) {
126
+ return __awaiter(this, void 0, void 0, function* () {
127
+ if (value instanceof Date) {
128
+ yield (yield this.host()).setInputValue(`${value.toLocaleDateString([], {
129
+ month: '2-digit',
130
+ day: '2-digit',
131
+ year: 'numeric',
132
+ })} ${value.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })}`);
133
+ }
134
+ else {
135
+ yield (yield this.host()).clear();
136
+ if (value) {
137
+ yield (yield this.host()).sendKeys(value);
138
+ }
139
+ yield (yield this.host()).setInputValue(value);
140
+ }
141
+ });
142
+ }
143
+ getTestElement() {
144
+ return __awaiter(this, void 0, void 0, function* () {
145
+ return yield this.host();
146
+ });
147
+ }
148
+ click() {
149
+ return __awaiter(this, void 0, void 0, function* () {
150
+ yield (yield this.host()).click();
151
+ });
152
+ }
153
+ }
154
+ InputHarness.hostSelector = 'input';
155
+
156
+ class PCheckboxHarness extends ComponentHarness {
157
+ constructor() {
158
+ super(...arguments);
159
+ this.getCheckBoxDiv = this.locatorForOptional(DivHarness.with({ class: 'p-checkbox-box' }));
160
+ }
161
+ static with(options) {
162
+ return new HarnessPredicate(PCheckboxHarness, options).addOption('inputid', options.inputid, (harness, inputid) => HarnessPredicate.stringMatches(harness.getId(), inputid));
163
+ }
164
+ isChecked() {
165
+ return __awaiter(this, void 0, void 0, function* () {
166
+ return (yield this.locatorFor(InputHarness)()).getChecked();
167
+ });
168
+ }
169
+ getId() {
170
+ return __awaiter(this, void 0, void 0, function* () {
171
+ return yield (yield this.host()).getAttribute('inputId');
172
+ });
173
+ }
174
+ isHidden() {
175
+ return __awaiter(this, void 0, void 0, function* () {
176
+ const attr = yield (yield this.host()).getAttribute('hidden');
177
+ return Boolean(attr);
178
+ });
179
+ }
180
+ click() {
181
+ var _a;
182
+ return __awaiter(this, void 0, void 0, function* () {
183
+ yield ((_a = (yield this.getCheckBoxDiv())) === null || _a === void 0 ? void 0 : _a.click());
184
+ });
185
+ }
186
+ }
187
+ PCheckboxHarness.hostSelector = 'p-checkbox';
188
+
189
+ class PDialogHarness extends ContentContainerComponentHarness {
190
+ constructor() {
191
+ super(...arguments);
192
+ this.getHeader = this.locatorForOptional(DivHarness.with({ class: 'p-dialog-header' }));
193
+ this.getFooter = this.locatorForOptional(DivHarness.with({ class: 'p-dialog-footer' }));
194
+ }
195
+ getDialogTitle() {
196
+ var _a;
197
+ return __awaiter(this, void 0, void 0, function* () {
198
+ return yield ((_a = (yield this.getHeader())) === null || _a === void 0 ? void 0 : _a.getText());
199
+ });
200
+ }
201
+ close() {
202
+ return __awaiter(this, void 0, void 0, function* () {
203
+ if (yield this.isVisible()) {
204
+ yield (yield this.host()).sendKeys(TestKey.ESCAPE);
205
+ }
206
+ else {
207
+ console.warn('Unable to close CustomGroupColumnSelectionDialog, because it is not open.');
208
+ }
209
+ });
210
+ }
211
+ isVisible() {
212
+ return __awaiter(this, void 0, void 0, function* () {
213
+ return (yield (yield this.host()).getAttribute('ng-reflect-visible')) === 'true' ? true : false;
214
+ });
215
+ }
216
+ }
217
+ PDialogHarness.hostSelector = 'p-dialog';
218
+
219
+ class ListItemHarness extends ComponentHarness {
220
+ getText() {
221
+ return __awaiter(this, void 0, void 0, function* () {
222
+ return yield (yield this.host()).text();
223
+ });
224
+ }
225
+ isSelected() {
226
+ return __awaiter(this, void 0, void 0, function* () {
227
+ return (yield (yield this.host()).getAttribute('aria-selected')) === 'true' ? true : false;
228
+ });
229
+ }
230
+ selectItem() {
231
+ return __awaiter(this, void 0, void 0, function* () {
232
+ yield (yield this.host()).click();
233
+ });
234
+ }
235
+ }
236
+ ListItemHarness.hostSelector = 'li';
237
+
238
+ class PDropdownHarness extends ContentContainerComponentHarness {
239
+ static with(options) {
240
+ return new HarnessPredicate(PDropdownHarness, options).addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
241
+ }
242
+ getId() {
243
+ return __awaiter(this, void 0, void 0, function* () {
244
+ return yield (yield this.host()).getAttribute('id');
245
+ });
246
+ }
247
+ getDefaultText() {
248
+ var _a;
249
+ return __awaiter(this, void 0, void 0, function* () {
250
+ return (_a = (yield this.locatorForOptional('span.p-placeholder')())) === null || _a === void 0 ? void 0 : _a.text();
251
+ });
252
+ }
253
+ isOpen() {
254
+ return __awaiter(this, void 0, void 0, function* () {
255
+ return (yield this.locatorFor('div')()).hasClass('p-dropdown-open');
256
+ });
257
+ }
258
+ open() {
259
+ return __awaiter(this, void 0, void 0, function* () {
260
+ if (!(yield this.isOpen())) {
261
+ yield (yield this.locatorFor('div')()).click();
262
+ }
263
+ else {
264
+ console.warn('Unable to open dropdown, because it is already open.');
265
+ }
266
+ });
267
+ }
268
+ close() {
269
+ return __awaiter(this, void 0, void 0, function* () {
270
+ if (yield this.isOpen()) {
271
+ yield (yield this.locatorFor('div')()).click();
272
+ }
273
+ else {
274
+ console.warn('Unable to close dropdown, because it is not open.');
275
+ }
276
+ });
277
+ }
278
+ getDropdownItems() {
279
+ return __awaiter(this, void 0, void 0, function* () {
280
+ yield this.open();
281
+ const dropdownItems = this.locatorForAll(ListItemHarness)();
282
+ return yield dropdownItems;
283
+ });
284
+ }
285
+ selectedDropdownItem(position) {
286
+ return __awaiter(this, void 0, void 0, function* () {
287
+ const selectedColumnGroup = yield Promise.all((yield this.getDropdownItems()).filter((listItem) => listItem.isSelected()));
288
+ return selectedColumnGroup[position];
289
+ });
290
+ }
291
+ selectedDropdownItemText(position) {
292
+ return __awaiter(this, void 0, void 0, function* () {
293
+ return (yield this.selectedDropdownItem(position)).getText();
294
+ });
295
+ }
296
+ hasClearOption() {
297
+ return __awaiter(this, void 0, void 0, function* () {
298
+ return (yield this.locatorFor('div')()).hasClass('p-dropdown-clearable');
299
+ });
300
+ }
301
+ }
302
+ PDropdownHarness.hostSelector = 'p-dropdown';
303
+
304
+ class MenuItemHarness extends ComponentHarness {
305
+ getText() {
306
+ return __awaiter(this, void 0, void 0, function* () {
307
+ return yield (yield this.host()).text();
308
+ });
309
+ }
310
+ selectItem() {
311
+ return __awaiter(this, void 0, void 0, function* () {
312
+ yield (yield this.host()).click();
313
+ });
314
+ }
315
+ }
316
+ MenuItemHarness.hostSelector = 'li > a';
317
+
318
+ class PMenuHarness extends ContentContainerComponentHarness {
319
+ getHarnessLoaderForPMenuOverlay() {
320
+ return __awaiter(this, void 0, void 0, function* () {
321
+ return this.documentRootLocatorFactory().harnessLoaderForOptional('.p-menu-overlay');
322
+ });
323
+ }
324
+ isOpen() {
325
+ return __awaiter(this, void 0, void 0, function* () {
326
+ return !!(yield this.getHarnessLoaderForPMenuOverlay());
327
+ });
328
+ }
329
+ getAllMenuItems() {
330
+ var _a;
331
+ return __awaiter(this, void 0, void 0, function* () {
332
+ if (yield this.isOpen()) {
333
+ return yield ((_a = (yield this.getHarnessLoaderForPMenuOverlay())) === null || _a === void 0 ? void 0 : _a.getAllHarnesses(MenuItemHarness));
334
+ }
335
+ else {
336
+ console.warn('Cannot get menu items because menu is closed.');
337
+ }
338
+ return [];
339
+ });
340
+ }
341
+ }
342
+ PMenuHarness.hostSelector = 'p-menu';
343
+
344
+ class PMultiSelectListItemHarness extends ComponentHarness {
345
+ getTestElement() {
346
+ return __awaiter(this, void 0, void 0, function* () {
347
+ return yield this.host();
348
+ });
349
+ }
350
+ click() {
351
+ return __awaiter(this, void 0, void 0, function* () {
352
+ yield (yield this.host()).click();
353
+ });
354
+ }
355
+ getText() {
356
+ return __awaiter(this, void 0, void 0, function* () {
357
+ return yield (yield this.host()).text();
358
+ });
359
+ }
360
+ }
361
+ PMultiSelectListItemHarness.hostSelector = 'li';
362
+
363
+ class PMultiSelectHarness extends ComponentHarness {
364
+ static with(options) {
365
+ return new HarnessPredicate(PMultiSelectHarness, options)
366
+ .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))
367
+ .addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
368
+ }
369
+ getId() {
370
+ return __awaiter(this, void 0, void 0, function* () {
371
+ return yield (yield this.host()).getAttribute('id');
372
+ });
373
+ }
374
+ getByClass(c) {
375
+ return __awaiter(this, void 0, void 0, function* () {
376
+ return (yield (yield this.host()).hasClass(c)) ? c : '';
377
+ });
378
+ }
379
+ getHarnessLoaderForPMultiSelectPanel() {
380
+ return __awaiter(this, void 0, void 0, function* () {
381
+ const rootLocator = this.documentRootLocatorFactory();
382
+ return rootLocator.harnessLoaderFor('.p-multiselect-panel');
383
+ });
384
+ }
385
+ getAllOptions() {
386
+ return __awaiter(this, void 0, void 0, function* () {
387
+ if (!(yield this.isOpen())) {
388
+ yield this.open();
389
+ }
390
+ return yield (yield this.getHarnessLoaderForPMultiSelectPanel()).getAllHarnesses(PMultiSelectListItemHarness);
391
+ });
392
+ }
393
+ isOpen() {
394
+ return __awaiter(this, void 0, void 0, function* () {
395
+ return yield (yield this.locatorFor('div')()).hasClass('p-multiselect-open');
396
+ });
397
+ }
398
+ open() {
399
+ return __awaiter(this, void 0, void 0, function* () {
400
+ if (!(yield this.isOpen())) {
401
+ yield (yield this.locatorFor('div')()).click();
402
+ }
403
+ else {
404
+ console.warn('Unable to open multiSelect, because it is already open.');
405
+ }
406
+ });
407
+ }
408
+ close() {
409
+ return __awaiter(this, void 0, void 0, function* () {
410
+ if (yield this.isOpen()) {
411
+ yield (yield this.locatorFor('div')()).click();
412
+ }
413
+ else {
414
+ console.warn('Unable to close multiSelect, because it is not open.');
415
+ }
416
+ });
417
+ }
418
+ isHighlighted(PMultiSelectListItem) {
419
+ return __awaiter(this, void 0, void 0, function* () {
420
+ return yield (yield PMultiSelectListItem.getTestElement()).hasClass('p-highlight');
421
+ });
422
+ }
423
+ getSelectedOptions() {
424
+ return __awaiter(this, void 0, void 0, function* () {
425
+ const allOptions = yield this.getAllOptions();
426
+ const selectedOptions = [];
427
+ for (let index = 0; index < allOptions.length; index++) {
428
+ const option = allOptions[index];
429
+ if (yield this.isHighlighted(option)) {
430
+ selectedOptions.push(yield option.getText());
431
+ }
432
+ }
433
+ return selectedOptions;
434
+ });
435
+ }
436
+ }
437
+ PMultiSelectHarness.hostSelector = 'p-multiSelect';
438
+
439
+ class ButtonHarness extends ComponentHarness {
440
+ static with(options) {
441
+ return new HarnessPredicate(ButtonHarness, options)
442
+ .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id))
443
+ .addOption('icon', options.icon, (harness, icon) => HarnessPredicate.stringMatches(harness.getIcon(), icon))
444
+ .addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
445
+ }
446
+ getId() {
447
+ return __awaiter(this, void 0, void 0, function* () {
448
+ return yield (yield this.host()).getAttribute('id');
449
+ });
450
+ }
451
+ getIcon() {
452
+ return __awaiter(this, void 0, void 0, function* () {
453
+ return yield (yield this.host()).getAttribute('icon');
454
+ });
455
+ }
456
+ getByClass(c) {
457
+ return __awaiter(this, void 0, void 0, function* () {
458
+ return (yield (yield this.host()).hasClass(c)) ? c : '';
459
+ });
460
+ }
461
+ click() {
462
+ return __awaiter(this, void 0, void 0, function* () {
463
+ if (!(yield this.isDisabled())) {
464
+ yield (yield this.host()).click();
465
+ }
466
+ else {
467
+ console.warn('Button cannot be clicked, because it is disabled!');
468
+ }
469
+ });
470
+ }
471
+ isDisabled() {
472
+ return __awaiter(this, void 0, void 0, function* () {
473
+ return yield (yield this.host()).getProperty('disabled');
474
+ });
475
+ }
476
+ }
477
+ ButtonHarness.hostSelector = 'button';
478
+
479
+ class PPicklistControlsButtonsHarness extends ContentContainerComponentHarness {
480
+ constructor() {
481
+ super(...arguments);
482
+ this.getButtons = this.locatorForAll(ButtonHarness);
483
+ }
484
+ static with(options) {
485
+ return new HarnessPredicate(PPicklistControlsButtonsHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
486
+ }
487
+ getByClass(c) {
488
+ return __awaiter(this, void 0, void 0, function* () {
489
+ return (yield (yield this.host()).hasClass(c)) ? c : '';
490
+ });
491
+ }
492
+ }
493
+ PPicklistControlsButtonsHarness.hostSelector = '.p-picklist-buttons';
494
+ class PPicklistListWrapperHarness extends ContentContainerComponentHarness {
495
+ constructor() {
496
+ super(...arguments);
497
+ this.getHeader = this.locatorFor(DivHarness.with({ class: 'p-picklist-header' }));
498
+ this.getAllListItems = this.locatorForAll(ListItemHarness);
499
+ }
500
+ static with(options) {
501
+ return new HarnessPredicate(PPicklistListWrapperHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
502
+ }
503
+ getByClass(c) {
504
+ return __awaiter(this, void 0, void 0, function* () {
505
+ return (yield (yield this.host()).hasClass(c)) ? c : '';
506
+ });
507
+ }
508
+ }
509
+ PPicklistListWrapperHarness.hostSelector = '.p-picklist-list-wrapper';
510
+ class PPicklistHarness extends ContentContainerComponentHarness {
511
+ constructor() {
512
+ super(...arguments);
513
+ this.getPicklistSourceControls = this.locatorFor(PPicklistControlsButtonsHarness.with({ class: 'p-picklist-source-controls' }));
514
+ this.getPicklistTransferControls = this.locatorFor(PPicklistControlsButtonsHarness.with({ class: 'p-picklist-transfer-buttons' }));
515
+ this.getPicklistTargetControls = this.locatorFor(PPicklistControlsButtonsHarness.with({ class: 'p-picklist-target-controls' }));
516
+ this.getPicklistSource = this.locatorFor(PPicklistListWrapperHarness.with({ class: 'p-picklist-source-wrapper' }));
517
+ this.getPicklistTarget = this.locatorFor(PPicklistListWrapperHarness.with({ class: 'p-picklist-target-wrapper' }));
518
+ }
519
+ getSourceControlsButtons() {
520
+ return __awaiter(this, void 0, void 0, function* () {
521
+ return yield (yield this.getPicklistSourceControls()).getButtons();
522
+ });
523
+ }
524
+ getTransferControlsButtons() {
525
+ return __awaiter(this, void 0, void 0, function* () {
526
+ return yield (yield this.getPicklistTransferControls()).getButtons();
527
+ });
528
+ }
529
+ getTargetControlsButtons() {
530
+ return __awaiter(this, void 0, void 0, function* () {
531
+ return yield (yield this.getPicklistTargetControls()).getButtons();
532
+ });
533
+ }
534
+ getSourceHeader() {
535
+ return __awaiter(this, void 0, void 0, function* () {
536
+ return yield (yield (yield this.getPicklistSource()).getHeader()).getText();
537
+ });
538
+ }
539
+ getTargetHeader() {
540
+ return __awaiter(this, void 0, void 0, function* () {
541
+ return yield (yield (yield this.getPicklistTarget()).getHeader()).getText();
542
+ });
543
+ }
544
+ getSourceListItems() {
545
+ return __awaiter(this, void 0, void 0, function* () {
546
+ return yield (yield this.getPicklistSource()).getAllListItems();
547
+ });
548
+ }
549
+ getTargetListItems() {
550
+ return __awaiter(this, void 0, void 0, function* () {
551
+ return yield (yield this.getPicklistTarget()).getAllListItems();
552
+ });
553
+ }
554
+ }
555
+ PPicklistHarness.hostSelector = 'p-picklist';
556
+
557
+ class PSelectButtonHarness extends ContentContainerComponentHarness {
558
+ constructor() {
559
+ super(...arguments);
560
+ this.getAllButtons = this.locatorForAll('div > div');
561
+ }
562
+ }
563
+ PSelectButtonHarness.hostSelector = 'p-selectbutton';
564
+
565
+ class SpanHarness extends ComponentHarness {
566
+ static with(options) {
567
+ return new HarnessPredicate(SpanHarness, options).addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c));
568
+ }
569
+ getByClass(c) {
570
+ return __awaiter(this, void 0, void 0, function* () {
571
+ return (yield (yield this.host()).hasClass(c)) ? c : '';
572
+ });
573
+ }
574
+ checkHasClass(value) {
575
+ return __awaiter(this, void 0, void 0, function* () {
576
+ return yield (yield this.host()).hasClass(value);
577
+ });
578
+ }
579
+ getText() {
580
+ return __awaiter(this, void 0, void 0, function* () {
581
+ return yield (yield this.host()).text();
582
+ });
583
+ }
584
+ }
585
+ SpanHarness.hostSelector = 'span';
586
+
587
+ class PPaginatorHarness extends ContentContainerComponentHarness {
588
+ constructor() {
589
+ super(...arguments);
590
+ this.getCurrentPageReport = this.locatorFor(SpanHarness.with({ class: 'p-paginator-current' }));
591
+ this.getRowsPerPageOptions = this.locatorFor(PDropdownHarness);
592
+ this.getNextPageButton = this.locatorFor(ButtonHarness.with({ class: 'p-paginator-next' }));
593
+ }
594
+ getCurrentPageReportText() {
595
+ return __awaiter(this, void 0, void 0, function* () {
596
+ return yield (yield this.getCurrentPageReport()).getText();
597
+ });
598
+ }
599
+ clickNextPage() {
600
+ return __awaiter(this, void 0, void 0, function* () {
601
+ ;
602
+ (yield this.getNextPageButton()).click();
603
+ });
604
+ }
605
+ }
606
+ PPaginatorHarness.hostSelector = 'p-paginator';
607
+
608
+ class PTableCheckboxHarness extends ComponentHarness {
609
+ static with(options = {}) {
610
+ return new HarnessPredicate(this, options).addOption('isSelected', options.isSelected, (harness, selected) => __awaiter(this, void 0, void 0, function* () {
611
+ return (yield harness.isChecked()) === selected;
612
+ }));
613
+ }
614
+ isChecked() {
615
+ return __awaiter(this, void 0, void 0, function* () {
616
+ const allChecked = yield this.locatorForAll('.pi-check')();
617
+ return allChecked.length === 1;
618
+ });
619
+ }
620
+ checkBox() {
621
+ return __awaiter(this, void 0, void 0, function* () {
622
+ const checkBoxElement = yield this.locatorFor('.p-checkbox-box')();
623
+ return checkBoxElement.click();
624
+ });
625
+ }
626
+ }
627
+ PTableCheckboxHarness.hostSelector = 'p-tableCheckbox';
628
+
629
+ class PHarness extends ComponentHarness {
630
+ static with(options) {
631
+ return new HarnessPredicate(PHarness, options)
632
+ .addOption('class', options.class, (harness, c) => HarnessPredicate.stringMatches(harness.getByClass(c), c))
633
+ .addOption('id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.hasId(id), id));
634
+ }
635
+ getByClass(c) {
636
+ return __awaiter(this, void 0, void 0, function* () {
637
+ return (yield (yield this.host()).hasClass(c)) ? c : '';
638
+ });
639
+ }
640
+ hasId(id) {
641
+ return __awaiter(this, void 0, void 0, function* () {
642
+ return (yield (yield this.host()).matchesSelector('#' + id)) ? id : '';
643
+ });
644
+ }
645
+ checkHasClass(value) {
646
+ return __awaiter(this, void 0, void 0, function* () {
647
+ return yield (yield this.host()).hasClass(value);
648
+ });
649
+ }
650
+ getText() {
651
+ return __awaiter(this, void 0, void 0, function* () {
652
+ return yield (yield this.host()).text();
653
+ });
654
+ }
655
+ getClassList() {
656
+ return __awaiter(this, void 0, void 0, function* () {
657
+ const host = yield this.host();
658
+ const attributeString = yield host.getAttribute('class');
659
+ if (attributeString) {
660
+ return attributeString.trim().split(' ');
661
+ }
662
+ return [];
663
+ });
664
+ }
665
+ }
666
+ PHarness.hostSelector = 'p';
667
+
668
+ class TableHeaderColumnHarness extends ContentContainerComponentHarness {
669
+ constructor() {
670
+ super(...arguments);
671
+ this.getSortButton = this.locatorFor(ButtonHarness.with({
672
+ class: 'sortButton',
673
+ }));
674
+ this.getFilterMultiSelect = this.locatorFor(PMultiSelectHarness.with({
675
+ class: 'filterMultiSelect',
676
+ }));
677
+ }
678
+ getText() {
679
+ return __awaiter(this, void 0, void 0, function* () {
680
+ return (yield this.host()).text();
681
+ });
682
+ }
683
+ }
684
+ TableHeaderColumnHarness.hostSelector = 'th';
685
+
686
+ class TableRowHarness extends ContentContainerComponentHarness {
687
+ constructor() {
688
+ super(...arguments);
689
+ this.getAllActionButtons = this.locatorForAll('button');
690
+ this.getViewButton = this.locatorForOptional(ButtonHarness.with({ class: 'viewTableRowButton' }));
691
+ this.getEditButton = this.locatorForOptional(ButtonHarness.with({ class: 'editTableRowButton' }));
692
+ this.getDeleteButton = this.locatorForOptional(ButtonHarness.with({ class: 'deleteTableRowButton' }));
693
+ }
694
+ getData() {
695
+ return __awaiter(this, void 0, void 0, function* () {
696
+ const tds = yield this.locatorForAll('td')();
697
+ const isActionsTd = yield Promise.all(tds.map((t) => t.hasClass('actions')));
698
+ const textTds = tds.filter((_v, index) => !isActionsTd[index]);
699
+ return Promise.all(textTds.map((t) => t.text()));
700
+ });
701
+ }
702
+ }
703
+ TableRowHarness.hostSelector = 'tbody > tr';
704
+
705
+ /**
706
+ * Generated bundle index. Do not edit.
707
+ */
708
+
709
+ export { ButtonHarness, DivHarness, InputHarness, ListItemHarness, MenuItemHarness, PButtonDirectiveHarness, PButtonHarness, PChartHarness, PCheckboxHarness, PDialogHarness, PDropdownHarness, PHarness, PMenuHarness, PMultiSelectHarness, PMultiSelectListItemHarness, PPaginatorHarness, PPicklistControlsButtonsHarness, PPicklistHarness, PPicklistListWrapperHarness, PSelectButtonHarness, PTableCheckboxHarness, SpanHarness, TableHeaderColumnHarness, TableRowHarness };
710
+ //# sourceMappingURL=onecx-angular-testing.mjs.map