@leaflink/dom-testing-utils 0.0.0-PR-143--b0c0342 → 0.0.0-PR-143--66c6611

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.
@@ -0,0 +1,68 @@
1
+ import userEvent from '@testing-library/user-event';
2
+ import { render, screen } from '@testing-library/vue';
3
+ import assertSelectElementItems from '../assertSelectElementItems';
4
+ // single-select template
5
+ const singleTemplate = `
6
+ <div>
7
+ <label for="color-select">Color</label>
8
+ <select id="color-select">
9
+ <option value="apple">Apple</option>
10
+ <option value="banana">Banana</option>
11
+ <option value="cherry">Cherry</option>
12
+ </select>
13
+ </div>
14
+ `;
15
+ const multipleTemplate = `
16
+ <div>
17
+ <label for="fruit-select">Fruits</label>
18
+ <select id="fruit-select" multiple>
19
+ <option value="apple">Apple</option>
20
+ <option value="banana">Banana</option>
21
+ <option value="cherry">Cherry</option>
22
+ </select>
23
+ </div>
24
+ `;
25
+ it('asserts a selected option for a single-select element by label', async () => {
26
+ const { container } = render({ template: singleTemplate });
27
+ const selectSingle = screen.getByLabelText('Color');
28
+ await userEvent.selectOptions(selectSingle, 'banana');
29
+ // should not throw
30
+ assertSelectElementItems({
31
+ label: 'Color',
32
+ values: 'banana',
33
+ withinElement: container,
34
+ });
35
+ });
36
+ it('asserts a single selected option by label', async () => {
37
+ const { container } = render({ template: singleTemplate });
38
+ const select = screen.getByLabelText('Fruits');
39
+ await userEvent.selectOptions(select, 'banana');
40
+ // should not throw
41
+ assertSelectElementItems({
42
+ label: 'Fruits',
43
+ values: 'banana',
44
+ withinElement: container,
45
+ });
46
+ });
47
+ it('asserts multiple selected options by element', async () => {
48
+ const { container } = render({ template: multipleTemplate });
49
+ const select = screen.getByLabelText('Fruits');
50
+ await userEvent.selectOptions(select, ['apple', 'cherry']);
51
+ // should not throw
52
+ assertSelectElementItems({
53
+ element: select,
54
+ values: ['apple', 'cherry'],
55
+ withinElement: container,
56
+ });
57
+ });
58
+ it('throws when selected values do not match expected', async () => {
59
+ const { container } = render({ template: multipleTemplate });
60
+ const select = screen.getByLabelText('Fruits');
61
+ await userEvent.selectOptions(select, 'apple');
62
+ expect(() => assertSelectElementItems({
63
+ label: 'Fruits',
64
+ values: ['banana'],
65
+ withinElement: container,
66
+ })).toThrow();
67
+ });
68
+ //# sourceMappingURL=assertSelectElementItems.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assertSelectElementItems.spec.js","sourceRoot":"src/","sources":["utils/__tests__/assertSelectElementItems.spec.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,wBAAwB,MAAM,6BAA6B,CAAC;AAEnE,yBAAyB;AACzB,MAAM,cAAc,GAAG;;;;;;;;;CAStB,CAAC;AAEF,MAAM,gBAAgB,GAAG;;;;;;;;;GAStB,CAAC;AAEJ,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;IAC9E,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,CAAoB,OAAO,CAAC,CAAC;IACvE,MAAM,SAAS,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAEtD,mBAAmB;IACnB,wBAAwB,CAAC;QACvB,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,QAAQ;QAChB,aAAa,EAAE,SAAwB;KACxC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;IACzD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAoB,QAAQ,CAAC,CAAC;IAClE,MAAM,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEhD,mBAAmB;IACnB,wBAAwB,CAAC;QACvB,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,QAAQ;QAChB,aAAa,EAAE,SAAwB;KACxC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;IAC5D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAoB,QAAQ,CAAC,CAAC;IAClE,MAAM,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE3D,mBAAmB;IACnB,wBAAwB,CAAC;QACvB,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC3B,aAAa,EAAE,SAAwB;KACxC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAoB,QAAQ,CAAC,CAAC;IAClE,MAAM,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE/C,MAAM,CAAC,GAAG,EAAE,CACV,wBAAwB,CAAC;QACvB,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,CAAC,QAAQ,CAAC;QAClB,aAAa,EAAE,SAAwB;KACxC,CAAC,CACH,CAAC,OAAO,EAAE,CAAC;AACd,CAAC,CAAC,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { render, screen } from '@testing-library/vue';
2
+ import getSelectElementItems from '../getSelectElementItems';
3
+ import setSelectElementItems from '../setSelectElementItems';
4
+ const singleTemplate = `
5
+ <div>
6
+ <label for="color-select">Color</label>
7
+ <select id="color-select">
8
+ <option value="apple">Apple</option>
9
+ <option value="banana">Banana</option>
10
+ <option value="cherry">Cherry</option>
11
+ </select>
12
+ </div>
13
+ `;
14
+ const multipleTemplate = `
15
+ <div>
16
+ <label for="fruit-select">Fruits</label>
17
+ <select id="fruit-select" multiple>
18
+ <option value="apple">Apple</option>
19
+ <option value="banana">Banana</option>
20
+ <option value="cherry">Cherry</option>
21
+ </select>
22
+ </div>
23
+ `;
24
+ it('sets a single-select option by label', async () => {
25
+ const { container } = render({ template: singleTemplate });
26
+ await setSelectElementItems({
27
+ label: 'Color',
28
+ selectedOptionValues: ['apple'],
29
+ withinElement: container,
30
+ });
31
+ const select = screen.getByLabelText('Color');
32
+ expect(getSelectElementItems({ element: select, withinElement: container })).toEqual(['apple']);
33
+ });
34
+ it('sets multiple-select options by element', async () => {
35
+ const { container } = render({ template: multipleTemplate });
36
+ const select = screen.getByLabelText('Fruits');
37
+ await setSelectElementItems({
38
+ element: select,
39
+ selectedOptionValues: ['apple', 'cherry'],
40
+ withinElement: container,
41
+ });
42
+ expect(getSelectElementItems({ element: select, withinElement: container })).toEqual([
43
+ 'apple',
44
+ 'cherry',
45
+ ]);
46
+ });
47
+ it('throws when selecting multiple values on a single-select', async () => {
48
+ const { container } = render({ template: singleTemplate });
49
+ await expect(setSelectElementItems({
50
+ label: 'Color',
51
+ selectedOptionValues: ['apple', 'banana'],
52
+ withinElement: container,
53
+ })).rejects.toThrow(/Cannot select multiple options on a single-select element/);
54
+ });
55
+ it('throws when neither element nor label is provided', async () => {
56
+ const { container } = render({ template: singleTemplate });
57
+ await expect(setSelectElementItems({ selectedOptionValues: ['apple'], withinElement: container })).rejects.toThrow(/a select element or its associated label is required/);
58
+ });
59
+ //# sourceMappingURL=setSelectElementItems.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setSelectElementItems.spec.js","sourceRoot":"src/","sources":["utils/__tests__/setSelectElementItems.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,qBAAqB,MAAM,0BAA0B,CAAC;AAC7D,OAAO,qBAAqB,MAAM,0BAA0B,CAAC;AAE7D,MAAM,cAAc,GAAG;;;;;;;;;CAStB,CAAC;AAEF,MAAM,gBAAgB,GAAG;;;;;;;;;CASxB,CAAC;AAEF,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC3D,MAAM,qBAAqB,CAAC;QAC1B,KAAK,EAAE,OAAO;QACd,oBAAoB,EAAE,CAAC,OAAO,CAAC;QAC/B,aAAa,EAAE,SAAwB;KACxC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAoB,OAAO,CAAC,CAAC;IACjE,MAAM,CAAC,qBAAqB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,SAAwB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AACjH,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;IACvD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAoB,QAAQ,CAAC,CAAC;IAElE,MAAM,qBAAqB,CAAC;QAC1B,OAAO,EAAE,MAAM;QACf,oBAAoB,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QACzC,aAAa,EAAE,SAAwB;KACxC,CAAC,CAAC;IAEH,MAAM,CAAC,qBAAqB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,SAAwB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QAClG,OAAO;QACP,QAAQ;KACT,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;IACxE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,CACV,qBAAqB,CAAC;QACpB,KAAK,EAAE,OAAO;QACd,oBAAoB,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QACzC,aAAa,EAAE,SAAwB;KACxC,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,2DAA2D,CAAC,CAAC;AACjF,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC3D,MAAM,MAAM,CACV,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,SAAwB,EAAE,CAAC,CACpG,CAAC,OAAO,CAAC,OAAO,CAAC,sDAAsD,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC"}
@@ -0,0 +1,48 @@
1
+ import { render, screen } from '@testing-library/vue';
2
+ import getSelectElementItems from '../getSelectElementItems';
3
+ import setSelectElementRandomItems from '../setSelectElementRandomItems';
4
+ const template = `
5
+ <div>
6
+ <label for="fruit-select">Fruits</label>
7
+ <select id="fruit-select" multiple>
8
+ <option value="apple">Apple</option>
9
+ <option value="banana">Banana</option>
10
+ <option value="cherry">Cherry</option>
11
+ </select>
12
+ </div>
13
+ `;
14
+ it('selects random options by label', async () => {
15
+ const { container } = render({ template });
16
+ const select = screen.getByLabelText('Fruits');
17
+ const selected = await setSelectElementRandomItems({
18
+ label: 'Fruits',
19
+ numOfItems: 2,
20
+ withinElement: container,
21
+ });
22
+ expect(getSelectElementItems({ element: select, withinElement: container })).toEqual(expect.arrayContaining(selected));
23
+ expect(selected).toHaveLength(2);
24
+ });
25
+ it('selects random options by element', async () => {
26
+ const { container } = render({ template });
27
+ const select = screen.getByLabelText('Fruits');
28
+ const selected = await setSelectElementRandomItems({
29
+ element: select,
30
+ numOfItems: 1,
31
+ withinElement: container,
32
+ });
33
+ expect(getSelectElementItems({ element: select, withinElement: container })).toEqual(expect.arrayContaining(selected));
34
+ expect(selected).toHaveLength(1);
35
+ });
36
+ it('throws when requesting more items than available', async () => {
37
+ const { container } = render({ template });
38
+ await expect(setSelectElementRandomItems({
39
+ label: 'Fruits',
40
+ numOfItems: 5,
41
+ withinElement: container,
42
+ })).rejects.toThrow();
43
+ });
44
+ it('throws when neither element nor label is provided', async () => {
45
+ const { container } = render({ template });
46
+ await expect(setSelectElementRandomItems({ numOfItems: 1, withinElement: container })).rejects.toThrow();
47
+ });
48
+ //# sourceMappingURL=setSelectElementRandomItems.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setSelectElementRandomItems.spec.js","sourceRoot":"src/","sources":["utils/__tests__/setSelectElementRandomItems.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,qBAAqB,MAAM,0BAA0B,CAAC;AAC7D,OAAO,2BAA2B,MAAM,gCAAgC,CAAC;AAEzE,MAAM,QAAQ,GAAG;;;;;;;;;CAShB,CAAC;AAEF,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;IAC/C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAoB,QAAQ,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAAC;QACjD,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,CAAC;QACb,aAAa,EAAE,SAAwB;KACxC,CAAC,CAAC;IAEH,MAAM,CAAC,qBAAqB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,SAAwB,EAAE,CAAC,CAAC,CAAC,OAAO,CACjG,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CACjC,CAAC;IACF,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IACjD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAoB,QAAQ,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAAC;QACjD,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,CAAC;QACb,aAAa,EAAE,SAAwB;KACxC,CAAC,CAAC;IAEH,MAAM,CAAC,qBAAqB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,SAAwB,EAAE,CAAC,CAAC,CAAC,OAAO,CACjG,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CACjC,CAAC;IACF,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;IAChE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3C,MAAM,MAAM,CACV,2BAA2B,CAAC;QAC1B,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,CAAC;QACb,aAAa,EAAE,SAAwB;KACxC,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3C,MAAM,MAAM,CACV,2BAA2B,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,SAAwB,EAAE,CAAC,CACxF,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC"}
@@ -24,6 +24,9 @@ export default async function setSelectElementItems({ element, label, selectedOp
24
24
  if (!selectElement) {
25
25
  throw new Error('Could not find select element');
26
26
  }
27
+ else if (!selectElement.multiple && selectedOptionValues.length > 1) {
28
+ throw new Error('Cannot select multiple options on a single-select element');
29
+ }
27
30
  await userEvent.selectOptions(selectElement, selectedOptionValues);
28
31
  }
29
32
  //# sourceMappingURL=setSelectElementItems.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setSelectElementItems.js","sourceRoot":"src/","sources":["utils/setSelectElementItems.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAEpD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAahE;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAClD,OAAO,EACP,KAAK,EACL,oBAAoB,EACpB,aAAa,GACa;IAC1B,IAAI,aAAa,GAA6B,IAAI,CAAC;IAEnD,IAAI,OAAO,EAAE,CAAC;QACZ,aAAa,GAAG,OAAO,CAAC;IAC1B,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,aAAa,GAAG,uBAAuB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,SAAS,CAAC,aAAa,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"setSelectElementItems.js","sourceRoot":"src/","sources":["utils/setSelectElementItems.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAEpD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAahE;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,qBAAqB,CAAC,EAClD,OAAO,EACP,KAAK,EACL,oBAAoB,EACpB,aAAa,GACa;IAC1B,IAAI,aAAa,GAA6B,IAAI,CAAC;IAEnD,IAAI,OAAO,EAAE,CAAC;QACZ,aAAa,GAAG,OAAO,CAAC;IAC1B,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,aAAa,GAAG,uBAAuB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;SAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IAED,MAAM,SAAS,CAAC,aAAa,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;AACrE,CAAC"}
@@ -18,4 +18,4 @@ export interface SetSelectElementRandomItemsArgs {
18
18
  * @param [args.withinElement] Root container to scope the query; defaults to document.body.
19
19
  * @returns The array of selected option values.
20
20
  */
21
- export default function setSelectElementRandomItems({ element, label, numOfItems, withinElement, }: SetSelectElementRandomItemsArgs): Promise<HTMLOptionElement[]>;
21
+ export default function setSelectElementRandomItems({ element, label, numOfItems, withinElement, }: SetSelectElementRandomItemsArgs): Promise<string[]>;
@@ -36,6 +36,6 @@ export default async function setSelectElementRandomItems({ element, label, numO
36
36
  }
37
37
  const selectedOptionValues = getRandomItemsFromArray(availableOptions, numOfItems);
38
38
  await userEvent.selectOptions(selectElement, selectedOptionValues);
39
- return selectedOptionValues;
39
+ return selectedOptionValues.map(({ value }) => value);
40
40
  }
41
41
  //# sourceMappingURL=setSelectElementRandomItems.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setSelectElementRandomItems.js","sourceRoot":"src/","sources":["utils/setSelectElementRandomItems.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAEpD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAahE;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,2BAA2B,CAAC,EACxD,OAAO,EACP,KAAK,EACL,UAAU,EACV,aAAa,GACmB;IAChC,IAAI,aAAa,GAA6B,IAAI,CAAC;IAEnD,IAAI,OAAO,EAAE,CAAC;QACZ,aAAa,GAAG,OAAO,CAAC;IAC1B,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,aAAa,GAAG,uBAAuB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,sBAAsB;IACtB,MAAM,SAAS,CAAC,eAAe,CAC7B,aAAa,EACb,CAAC,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAC7D,CAAC;IAEF,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IAExG,mCAAmC;IACnC,IAAI,gBAAgB,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,0BAA0B,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;IACnF,MAAM,SAAS,CAAC,aAAa,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;IAEnE,OAAO,oBAAoB,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"setSelectElementRandomItems.js","sourceRoot":"src/","sources":["utils/setSelectElementRandomItems.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAEpD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAahE;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,2BAA2B,CAAC,EACxD,OAAO,EACP,KAAK,EACL,UAAU,EACV,aAAa,GACmB;IAChC,IAAI,aAAa,GAA6B,IAAI,CAAC;IAEnD,IAAI,OAAO,EAAE,CAAC;QACZ,aAAa,GAAG,OAAO,CAAC;IAC1B,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,aAAa,GAAG,uBAAuB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,sBAAsB;IACtB,MAAM,SAAS,CAAC,eAAe,CAC7B,aAAa,EACb,CAAC,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAC7D,CAAC;IAEF,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IAExG,mCAAmC;IACnC,IAAI,gBAAgB,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,0BAA0B,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;IACnF,MAAM,SAAS,CAAC,aAAa,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC;IAEnE,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leaflink/dom-testing-utils",
3
- "version": "0.0.0-PR-143--b0c0342",
3
+ "version": "0.0.0-PR-143--66c6611",
4
4
  "description": "Frontend DOM testing utilities",
5
5
  "engines": {
6
6
  "node": ">=18",