@crowdstrike/glide-core 0.13.1 → 0.14.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.
- package/dist/drawer.d.ts +2 -2
- package/dist/drawer.js +1 -1
- package/dist/drawer.styles.js +3 -3
- package/dist/dropdown.styles.js +3 -2
- package/dist/input.styles.js +1 -0
- package/dist/styles/variables.css +1 -1
- package/dist/textarea.styles.js +2 -0
- package/dist/toasts.d.ts +2 -2
- package/dist/toasts.toast.d.ts +1 -1
- package/dist/toasts.toast.js +1 -1
- package/dist/toasts.toast.styles.js +8 -0
- package/dist/tree.item.styles.js +2 -2
- package/package.json +8 -5
- package/dist/accordion.stories.d.ts +0 -6
- package/dist/accordion.test.basics.d.ts +0 -1
- package/dist/accordion.test.basics.js +0 -28
- package/dist/accordion.test.events.d.ts +0 -1
- package/dist/accordion.test.events.js +0 -28
- package/dist/accordion.test.focus.d.ts +0 -1
- package/dist/accordion.test.focus.js +0 -11
- package/dist/accordion.test.interactions.d.ts +0 -1
- package/dist/accordion.test.interactions.js +0 -75
- package/dist/button-group.button.test.basics.d.ts +0 -1
- package/dist/button-group.button.test.basics.js +0 -97
- package/dist/button-group.button.test.events.d.ts +0 -1
- package/dist/button-group.button.test.events.js +0 -15
- package/dist/button-group.button.test.focus.d.ts +0 -1
- package/dist/button-group.button.test.focus.js +0 -13
- package/dist/button-group.button.test.interactions.d.ts +0 -1
- package/dist/button-group.button.test.interactions.js +0 -42
- package/dist/button-group.stories.d.ts +0 -7
- package/dist/button-group.test.basics.d.ts +0 -1
- package/dist/button-group.test.basics.js +0 -148
- package/dist/button-group.test.events.d.ts +0 -1
- package/dist/button-group.test.events.js +0 -241
- package/dist/button-group.test.focus.d.ts +0 -1
- package/dist/button-group.test.focus.js +0 -39
- package/dist/button-group.test.interactions.d.ts +0 -1
- package/dist/button-group.test.interactions.js +0 -91
- package/dist/button.stories.d.ts +0 -7
- package/dist/button.test.basics.d.ts +0 -1
- package/dist/button.test.basics.js +0 -69
- package/dist/button.test.events.d.ts +0 -1
- package/dist/button.test.events.js +0 -102
- package/dist/checkbox-group.stories.d.ts +0 -6
- package/dist/checkbox-group.test.basics.d.ts +0 -1
- package/dist/checkbox-group.test.basics.js +0 -116
- package/dist/checkbox-group.test.events.d.ts +0 -1
- package/dist/checkbox-group.test.events.js +0 -111
- package/dist/checkbox-group.test.focus.d.ts +0 -1
- package/dist/checkbox-group.test.focus.js +0 -70
- package/dist/checkbox-group.test.form.d.ts +0 -1
- package/dist/checkbox-group.test.form.js +0 -131
- package/dist/checkbox-group.test.interactions.d.ts +0 -1
- package/dist/checkbox-group.test.interactions.js +0 -82
- package/dist/checkbox-group.test.validity.d.ts +0 -1
- package/dist/checkbox-group.test.validity.js +0 -145
- package/dist/checkbox.stories.d.ts +0 -5
- package/dist/checkbox.test.basics.d.ts +0 -1
- package/dist/checkbox.test.basics.js +0 -90
- package/dist/checkbox.test.events.d.ts +0 -1
- package/dist/checkbox.test.events.js +0 -105
- package/dist/checkbox.test.focus.d.ts +0 -1
- package/dist/checkbox.test.focus.js +0 -51
- package/dist/checkbox.test.form.d.ts +0 -1
- package/dist/checkbox.test.form.js +0 -133
- package/dist/checkbox.test.interactions.d.ts +0 -1
- package/dist/checkbox.test.interactions.js +0 -131
- package/dist/checkbox.test.validity.d.ts +0 -1
- package/dist/checkbox.test.validity.js +0 -128
- package/dist/drawer.stories.d.ts +0 -6
- package/dist/drawer.test.accessibility.d.ts +0 -1
- package/dist/drawer.test.accessibility.js +0 -22
- package/dist/drawer.test.basics.d.ts +0 -1
- package/dist/drawer.test.basics.js +0 -44
- package/dist/drawer.test.closing.d.ts +0 -1
- package/dist/drawer.test.closing.js +0 -40
- package/dist/drawer.test.events.d.ts +0 -1
- package/dist/drawer.test.events.js +0 -42
- package/dist/drawer.test.methods.d.ts +0 -1
- package/dist/drawer.test.methods.js +0 -35
- package/dist/dropdown.option.test.basics.d.ts +0 -1
- package/dist/dropdown.option.test.basics.js +0 -34
- package/dist/dropdown.option.test.basics.multiple.d.ts +0 -1
- package/dist/dropdown.option.test.basics.multiple.js +0 -36
- package/dist/dropdown.option.test.basics.single.d.ts +0 -1
- package/dist/dropdown.option.test.basics.single.js +0 -29
- package/dist/dropdown.option.test.events.d.ts +0 -1
- package/dist/dropdown.option.test.events.js +0 -36
- package/dist/dropdown.option.test.focus.d.ts +0 -1
- package/dist/dropdown.option.test.focus.js +0 -11
- package/dist/dropdown.option.test.interactions.multiple.d.ts +0 -1
- package/dist/dropdown.option.test.interactions.multiple.js +0 -42
- package/dist/dropdown.option.test.interactions.single.d.ts +0 -1
- package/dist/dropdown.option.test.interactions.single.js +0 -76
- package/dist/dropdown.stories.d.ts +0 -8
- package/dist/dropdown.test.basics.d.ts +0 -1
- package/dist/dropdown.test.basics.filterable.d.ts +0 -1
- package/dist/dropdown.test.basics.filterable.js +0 -108
- package/dist/dropdown.test.basics.js +0 -181
- package/dist/dropdown.test.basics.multiple.d.ts +0 -1
- package/dist/dropdown.test.basics.multiple.js +0 -259
- package/dist/dropdown.test.basics.single.d.ts +0 -1
- package/dist/dropdown.test.basics.single.js +0 -122
- package/dist/dropdown.test.events.d.ts +0 -1
- package/dist/dropdown.test.events.filterable.d.ts +0 -1
- package/dist/dropdown.test.events.filterable.js +0 -31
- package/dist/dropdown.test.events.js +0 -251
- package/dist/dropdown.test.events.multiple.d.ts +0 -1
- package/dist/dropdown.test.events.multiple.js +0 -446
- package/dist/dropdown.test.events.single.d.ts +0 -1
- package/dist/dropdown.test.events.single.js +0 -343
- package/dist/dropdown.test.focus.d.ts +0 -1
- package/dist/dropdown.test.focus.filterable.d.ts +0 -1
- package/dist/dropdown.test.focus.filterable.js +0 -140
- package/dist/dropdown.test.focus.js +0 -107
- package/dist/dropdown.test.focus.multiple.d.ts +0 -1
- package/dist/dropdown.test.focus.multiple.js +0 -170
- package/dist/dropdown.test.focus.single.d.ts +0 -1
- package/dist/dropdown.test.focus.single.js +0 -42
- package/dist/dropdown.test.form.d.ts +0 -1
- package/dist/dropdown.test.form.js +0 -74
- package/dist/dropdown.test.form.multiple.d.ts +0 -1
- package/dist/dropdown.test.form.multiple.js +0 -151
- package/dist/dropdown.test.form.single.d.ts +0 -1
- package/dist/dropdown.test.form.single.js +0 -129
- package/dist/dropdown.test.interactions.d.ts +0 -1
- package/dist/dropdown.test.interactions.filterable.d.ts +0 -1
- package/dist/dropdown.test.interactions.filterable.js +0 -805
- package/dist/dropdown.test.interactions.js +0 -696
- package/dist/dropdown.test.interactions.multiple.d.ts +0 -1
- package/dist/dropdown.test.interactions.multiple.js +0 -1026
- package/dist/dropdown.test.interactions.single.d.ts +0 -1
- package/dist/dropdown.test.interactions.single.js +0 -569
- package/dist/dropdown.test.validity.d.ts +0 -1
- package/dist/dropdown.test.validity.js +0 -181
- package/dist/form-controls-layout.stories.d.ts +0 -10
- package/dist/form-controls-layout.test.basics.d.ts +0 -2
- package/dist/form-controls-layout.test.basics.js +0 -75
- package/dist/form-controls-layout.test.interactions.d.ts +0 -2
- package/dist/form-controls-layout.test.interactions.js +0 -26
- package/dist/icon-button.stories.d.ts +0 -6
- package/dist/icon-button.test.basics.d.ts +0 -1
- package/dist/icon-button.test.basics.js +0 -43
- package/dist/icon-button.test.focus.d.ts +0 -1
- package/dist/icon-button.test.focus.js +0 -13
- package/dist/input.stories.d.ts +0 -8
- package/dist/input.test.basics.d.ts +0 -1
- package/dist/input.test.basics.js +0 -138
- package/dist/input.test.events.d.ts +0 -1
- package/dist/input.test.events.js +0 -98
- package/dist/input.test.focus.d.ts +0 -1
- package/dist/input.test.focus.js +0 -58
- package/dist/input.test.form.d.ts +0 -1
- package/dist/input.test.form.js +0 -74
- package/dist/input.test.validity.d.ts +0 -1
- package/dist/input.test.validity.js +0 -258
- package/dist/label.test.basics.d.ts +0 -1
- package/dist/label.test.basics.js +0 -136
- package/dist/menu.button.test.basics.d.ts +0 -1
- package/dist/menu.button.test.basics.js +0 -43
- package/dist/menu.link.test.basics.d.ts +0 -1
- package/dist/menu.link.test.basics.js +0 -47
- package/dist/menu.options.test.basics.d.ts +0 -2
- package/dist/menu.options.test.basics.js +0 -44
- package/dist/menu.options.test.events.d.ts +0 -1
- package/dist/menu.options.test.events.js +0 -19
- package/dist/menu.stories.d.ts +0 -11
- package/dist/menu.test.basics.d.ts +0 -1
- package/dist/menu.test.basics.js +0 -178
- package/dist/menu.test.events.d.ts +0 -3
- package/dist/menu.test.events.js +0 -125
- package/dist/menu.test.focus.d.ts +0 -2
- package/dist/menu.test.focus.js +0 -102
- package/dist/menu.test.interactions.d.ts +0 -3
- package/dist/menu.test.interactions.js +0 -1069
- package/dist/modal.icon-button.test.basics.d.ts +0 -1
- package/dist/modal.icon-button.test.basics.js +0 -46
- package/dist/modal.stories.d.ts +0 -13
- package/dist/modal.tertiary-icon.test.basics.d.ts +0 -1
- package/dist/modal.tertiary-icon.test.basics.js +0 -60
- package/dist/modal.test.accessibility.d.ts +0 -1
- package/dist/modal.test.accessibility.js +0 -38
- package/dist/modal.test.basics.d.ts +0 -3
- package/dist/modal.test.basics.js +0 -204
- package/dist/modal.test.close.d.ts +0 -1
- package/dist/modal.test.close.js +0 -35
- package/dist/modal.test.events.d.ts +0 -1
- package/dist/modal.test.events.js +0 -99
- package/dist/modal.test.lock-scroll.d.ts +0 -1
- package/dist/modal.test.lock-scroll.js +0 -67
- package/dist/modal.test.methods.d.ts +0 -1
- package/dist/modal.test.methods.js +0 -20
- package/dist/modal.test.scrollbars.d.ts +0 -1
- package/dist/modal.test.scrollbars.js +0 -18
- package/dist/radio-group.stories.d.ts +0 -6
- package/dist/radio-group.test.basics.d.ts +0 -2
- package/dist/radio-group.test.basics.js +0 -324
- package/dist/radio-group.test.events.d.ts +0 -2
- package/dist/radio-group.test.events.js +0 -278
- package/dist/radio-group.test.focus.d.ts +0 -2
- package/dist/radio-group.test.focus.js +0 -95
- package/dist/radio-group.test.form.d.ts +0 -1
- package/dist/radio-group.test.form.js +0 -124
- package/dist/radio-group.test.validity.d.ts +0 -1
- package/dist/radio-group.test.validity.js +0 -311
- package/dist/split-button.primary-button.test.basics.d.ts +0 -1
- package/dist/split-button.primary-button.test.basics.js +0 -31
- package/dist/split-button.primary-button.test.focus.d.ts +0 -1
- package/dist/split-button.primary-button.test.focus.js +0 -14
- package/dist/split-button.primary-link.test.basics.d.ts +0 -1
- package/dist/split-button.primary-link.test.basics.js +0 -30
- package/dist/split-button.primary-link.test.focus.d.ts +0 -1
- package/dist/split-button.primary-link.test.focus.js +0 -15
- package/dist/split-button.secondary-button.test.basics.d.ts +0 -1
- package/dist/split-button.secondary-button.test.basics.js +0 -58
- package/dist/split-button.secondary-button.test.focus.d.ts +0 -1
- package/dist/split-button.secondary-button.test.focus.js +0 -14
- package/dist/split-button.secondary-button.test.interactions.d.ts +0 -2
- package/dist/split-button.secondary-button.test.interactions.js +0 -30
- package/dist/split-button.stories.d.ts +0 -13
- package/dist/split-button.test.basics.d.ts +0 -2
- package/dist/split-button.test.basics.js +0 -87
- package/dist/split-button.test.interactions.d.ts +0 -4
- package/dist/split-button.test.interactions.js +0 -51
- package/dist/tab.group.test.basics.d.ts +0 -3
- package/dist/tab.group.test.basics.js +0 -234
- package/dist/tab.group.test.interactions.d.ts +0 -3
- package/dist/tab.group.test.interactions.js +0 -434
- package/dist/tab.test.basics.d.ts +0 -1
- package/dist/tab.test.basics.js +0 -50
- package/dist/tabs.stories.d.ts +0 -8
- package/dist/tag.stories.d.ts +0 -7
- package/dist/tag.test.basics.d.ts +0 -1
- package/dist/tag.test.basics.js +0 -28
- package/dist/tag.test.events.d.ts +0 -1
- package/dist/tag.test.events.js +0 -93
- package/dist/tag.test.focus.d.ts +0 -1
- package/dist/tag.test.focus.js +0 -10
- package/dist/tag.test.interactions.d.ts +0 -1
- package/dist/tag.test.interactions.js +0 -36
- package/dist/textarea.stories.d.ts +0 -5
- package/dist/textarea.test.basics.d.ts +0 -1
- package/dist/textarea.test.basics.js +0 -177
- package/dist/textarea.test.events.d.ts +0 -1
- package/dist/textarea.test.events.js +0 -106
- package/dist/textarea.test.form.d.ts +0 -1
- package/dist/textarea.test.form.js +0 -71
- package/dist/textarea.test.validity.d.ts +0 -1
- package/dist/textarea.test.validity.js +0 -204
- package/dist/toasts.stories.d.ts +0 -7
- package/dist/toasts.test.basics.d.ts +0 -1
- package/dist/toasts.test.basics.js +0 -115
- package/dist/toasts.toast.test.basics.d.ts +0 -1
- package/dist/toasts.toast.test.basics.js +0 -139
- package/dist/toggle.stories.d.ts +0 -4
- package/dist/toggle.test.basics.d.ts +0 -1
- package/dist/toggle.test.basics.js +0 -69
- package/dist/toggle.test.events.d.ts +0 -1
- package/dist/toggle.test.events.js +0 -30
- package/dist/toggle.test.focus.d.ts +0 -1
- package/dist/toggle.test.focus.js +0 -9
- package/dist/toggle.test.interactions.d.ts +0 -1
- package/dist/toggle.test.interactions.js +0 -81
- package/dist/tooltip.stories.d.ts +0 -7
- package/dist/tooltip.test.basics.d.ts +0 -1
- package/dist/tooltip.test.basics.js +0 -100
- package/dist/tooltip.test.interactions.d.ts +0 -1
- package/dist/tooltip.test.interactions.js +0 -203
- package/dist/tree.item.icon-button.test.basics.d.ts +0 -1
- package/dist/tree.item.icon-button.test.basics.js +0 -22
- package/dist/tree.item.menu.test.basics.d.ts +0 -1
- package/dist/tree.item.menu.test.basics.js +0 -86
- package/dist/tree.item.test.basics.d.ts +0 -2
- package/dist/tree.item.test.basics.js +0 -138
- package/dist/tree.stories.d.ts +0 -9
- package/dist/tree.test.aria.d.ts +0 -1
- package/dist/tree.test.aria.js +0 -86
- package/dist/tree.test.basics.d.ts +0 -3
- package/dist/tree.test.basics.js +0 -130
- package/dist/tree.test.events.d.ts +0 -2
- package/dist/tree.test.events.js +0 -19
- package/dist/tree.test.focus.d.ts +0 -1
- package/dist/tree.test.focus.js +0 -383
@@ -1,203 +0,0 @@
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-unused-expressions */
|
2
|
-
import './tooltip.js';
|
3
|
-
import { aTimeout, assert, expect, fixture, html } from '@open-wc/testing';
|
4
|
-
import { sendKeys } from '@web/test-runner-commands';
|
5
|
-
import GlideCoreTooltip from './tooltip.js';
|
6
|
-
GlideCoreTooltip.shadowRootOptions.mode = 'open';
|
7
|
-
it('is open when opened programmatically', async () => {
|
8
|
-
const component = await fixture(html `<glide-core-tooltip aria-label="Label">
|
9
|
-
Tooltip
|
10
|
-
<span slot="target" tabindex="0">Target</span>
|
11
|
-
</glide-core-tooltip>`);
|
12
|
-
component.open = true;
|
13
|
-
// Wait for Floating UI.
|
14
|
-
await aTimeout(0);
|
15
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
16
|
-
expect(tooltip?.checkVisibility()).to.be.true;
|
17
|
-
});
|
18
|
-
it('is open when `open` and enabled programmatically', async () => {
|
19
|
-
const component = await fixture(html `<glide-core-tooltip aria-label="Label" open disabled>
|
20
|
-
Tooltip
|
21
|
-
<span slot="target" tabindex="0">Target</span>
|
22
|
-
</glide-core-tooltip>`);
|
23
|
-
component.disabled = false;
|
24
|
-
// Wait for Floating UI.
|
25
|
-
await aTimeout(0);
|
26
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
27
|
-
expect(tooltip?.checkVisibility()).to.be.true;
|
28
|
-
});
|
29
|
-
it('is not open when `open` and disabled programmatically', async () => {
|
30
|
-
const component = await fixture(html `<glide-core-tooltip aria-label="Label" open>
|
31
|
-
Tooltip
|
32
|
-
<span slot="target" tabindex="0">Target</span>
|
33
|
-
</glide-core-tooltip>`);
|
34
|
-
// Wait for Floating UI.
|
35
|
-
await aTimeout(0);
|
36
|
-
component.disabled = true;
|
37
|
-
// Wait for Floating UI.
|
38
|
-
await aTimeout(0);
|
39
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
40
|
-
expect(tooltip?.checkVisibility()).to.be.false;
|
41
|
-
});
|
42
|
-
it('is not open when opened programmatically and disabled', async () => {
|
43
|
-
const component = await fixture(html `<glide-core-tooltip aria-label="Label" disabled>
|
44
|
-
Tooltip
|
45
|
-
<span slot="target" tabindex="0">Target</span>
|
46
|
-
</glide-core-tooltip>`);
|
47
|
-
component.open = true;
|
48
|
-
// Wait for Floating UI.
|
49
|
-
await aTimeout(0);
|
50
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
51
|
-
expect(tooltip?.checkVisibility()).to.be.false;
|
52
|
-
});
|
53
|
-
it('is visible on "focusin"', async () => {
|
54
|
-
const component = await fixture(html `<glide-core-tooltip>
|
55
|
-
Tooltip
|
56
|
-
<span slot="target" tabindex="0">Target</span>
|
57
|
-
</glide-core-tooltip>`);
|
58
|
-
component.shadowRoot
|
59
|
-
?.querySelector('[data-test="target"]')
|
60
|
-
?.dispatchEvent(new FocusEvent('focusin'));
|
61
|
-
// Wait for Floating UI.
|
62
|
-
await aTimeout(0);
|
63
|
-
expect(component.shadowRoot
|
64
|
-
?.querySelector('[data-test="tooltip"]')
|
65
|
-
?.checkVisibility()).to.be.true;
|
66
|
-
});
|
67
|
-
it('is hidden on "focusin" when disabled', async () => {
|
68
|
-
const component = await fixture(html `<glide-core-tooltip disabled>
|
69
|
-
Tooltip
|
70
|
-
<span slot="target" tabindex="0">Target</span>
|
71
|
-
</glide-core-tooltip>`);
|
72
|
-
component.shadowRoot
|
73
|
-
?.querySelector('[data-test="target"]')
|
74
|
-
?.dispatchEvent(new FocusEvent('focusin'));
|
75
|
-
// Wait for Floating UI.
|
76
|
-
await aTimeout(0);
|
77
|
-
expect(component.shadowRoot
|
78
|
-
?.querySelector('[data-test="tooltip"]')
|
79
|
-
?.checkVisibility()).to.be.false;
|
80
|
-
});
|
81
|
-
it('is hidden on "blur"', async () => {
|
82
|
-
const component = await fixture(html `<glide-core-tooltip>
|
83
|
-
Tooltip
|
84
|
-
<span slot="target" tabindex="0">Target</span>
|
85
|
-
</glide-core-tooltip>`);
|
86
|
-
const target = component.shadowRoot?.querySelector('[data-test="target"]');
|
87
|
-
target?.dispatchEvent(new FocusEvent('focusin'));
|
88
|
-
// Wait for Floating UI.
|
89
|
-
await aTimeout(0);
|
90
|
-
target?.dispatchEvent(new FocusEvent('focusout'));
|
91
|
-
expect(component.shadowRoot
|
92
|
-
?.querySelector('[data-test="tooltip"]')
|
93
|
-
?.checkVisibility()).to.be.false;
|
94
|
-
});
|
95
|
-
it('is hidden on Escape', async () => {
|
96
|
-
const component = await fixture(html `<glide-core-tooltip>
|
97
|
-
Tooltip
|
98
|
-
<span slot="target" tabindex="0">Target</span>
|
99
|
-
</glide-core-tooltip>`);
|
100
|
-
component.shadowRoot
|
101
|
-
?.querySelector('[data-test="target"]')
|
102
|
-
?.dispatchEvent(new FocusEvent('focusin'));
|
103
|
-
// Wait for Floating UI.
|
104
|
-
await aTimeout(0);
|
105
|
-
component.querySelector('span')?.focus();
|
106
|
-
await sendKeys({ press: 'Escape' });
|
107
|
-
expect(component.shadowRoot
|
108
|
-
?.querySelector('[data-test="tooltip"]')
|
109
|
-
?.checkVisibility()).to.be.false;
|
110
|
-
});
|
111
|
-
it('is visible on "mouseover"', async () => {
|
112
|
-
const component = await fixture(html `<glide-core-tooltip>
|
113
|
-
Tooltip
|
114
|
-
<span slot="target" tabindex="0">Target</span>
|
115
|
-
</glide-core-tooltip>`);
|
116
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
117
|
-
assert(tooltip);
|
118
|
-
tooltip.dataset.openDelay = '0';
|
119
|
-
component.shadowRoot
|
120
|
-
?.querySelector('[data-test="component"')
|
121
|
-
?.dispatchEvent(new MouseEvent('mouseover'));
|
122
|
-
// Wait for Floating UI and the open delay.
|
123
|
-
await aTimeout(0);
|
124
|
-
expect(tooltip.checkVisibility()).to.be.true;
|
125
|
-
});
|
126
|
-
it('is hidden on "mouseover" when disabled', async () => {
|
127
|
-
const component = await fixture(html `<glide-core-tooltip disabled>
|
128
|
-
Tooltip
|
129
|
-
<span slot="target" tabindex="0">Target</span>
|
130
|
-
</glide-core-tooltip>`);
|
131
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
132
|
-
assert(tooltip);
|
133
|
-
tooltip.dataset.openDelay = '0';
|
134
|
-
component.shadowRoot
|
135
|
-
?.querySelector('[data-test="component"')
|
136
|
-
?.dispatchEvent(new MouseEvent('mouseover'));
|
137
|
-
// Wait for Floating UI.
|
138
|
-
await aTimeout(0);
|
139
|
-
expect(tooltip.checkVisibility()).to.be.false;
|
140
|
-
});
|
141
|
-
it('is hidden on "mouseout"', async () => {
|
142
|
-
const component = await fixture(html `<glide-core-tooltip>
|
143
|
-
Tooltip
|
144
|
-
<span slot="target" tabindex="0">Target</span>
|
145
|
-
</glide-core-tooltip>`);
|
146
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
147
|
-
assert(tooltip);
|
148
|
-
tooltip.dataset.openDelay = '0';
|
149
|
-
component.shadowRoot
|
150
|
-
?.querySelector('[data-test="component"')
|
151
|
-
?.dispatchEvent(new MouseEvent('mouseover'));
|
152
|
-
// Wait for Floating UI and the open delay.
|
153
|
-
await aTimeout(0);
|
154
|
-
tooltip.dataset.closeDelay = '0';
|
155
|
-
component.shadowRoot
|
156
|
-
?.querySelector('[data-test="component"')
|
157
|
-
?.dispatchEvent(new MouseEvent('mouseout'));
|
158
|
-
// Wait for the close delay.
|
159
|
-
await aTimeout(0);
|
160
|
-
expect(tooltip.checkVisibility()).to.be.false;
|
161
|
-
});
|
162
|
-
it('remains hidden if "mouseout" fires before the "mouseover" delay', async () => {
|
163
|
-
const component = await fixture(html `<glide-core-tooltip>
|
164
|
-
Tooltip
|
165
|
-
<span slot="target" tabindex="0">Target</span>
|
166
|
-
</glide-core-tooltip>`);
|
167
|
-
const tooltip = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
168
|
-
assert(tooltip);
|
169
|
-
tooltip.dataset.openDelay = '1';
|
170
|
-
tooltip.dataset.closeDelay = '0';
|
171
|
-
component.shadowRoot
|
172
|
-
?.querySelector('[data-test="component"')
|
173
|
-
?.dispatchEvent(new MouseEvent('mouseover'));
|
174
|
-
expect(tooltip?.checkVisibility()).to.be.false;
|
175
|
-
component.shadowRoot
|
176
|
-
?.querySelector('[data-test="component"')
|
177
|
-
?.dispatchEvent(new MouseEvent('mouseout'));
|
178
|
-
await aTimeout(1);
|
179
|
-
expect(tooltip.checkVisibility()).to.be.false;
|
180
|
-
});
|
181
|
-
// This would be better served by a visual regression test. It exists only
|
182
|
-
// to meet our coverage threshold, so the `middlewareData.arrow.y` branch
|
183
|
-
// is hit.
|
184
|
-
it('positions the tooltip when `placement="right"`', async () => {
|
185
|
-
const component = await fixture(html `<glide-core-tooltip
|
186
|
-
placement="right"
|
187
|
-
style="align-items: center; display: flex; height: 100vh; justify-content:center; width: 100vw;"
|
188
|
-
>
|
189
|
-
Tooltip
|
190
|
-
<span slot="target" tabindex="0">Target</span>
|
191
|
-
</glide-core-tooltip>`);
|
192
|
-
component.shadowRoot
|
193
|
-
?.querySelector('[data-test="target"]')
|
194
|
-
?.dispatchEvent(new FocusEvent('focusin'));
|
195
|
-
// Wait for Floating UI.
|
196
|
-
await aTimeout(0);
|
197
|
-
const tooltipContainer = component.shadowRoot?.querySelector('[data-test="tooltip"]');
|
198
|
-
const arrow = component.shadowRoot?.querySelector('[data-test="arrow"]');
|
199
|
-
expect(tooltipContainer?.style.left).to.not.be.empty.string;
|
200
|
-
expect(tooltipContainer?.style.top).to.not.be.empty.string;
|
201
|
-
expect(arrow?.style.left).to.be.empty.string;
|
202
|
-
expect(arrow?.style.top).to.not.be.empty.string;
|
203
|
-
});
|
@@ -1 +0,0 @@
|
|
1
|
-
export {};
|
@@ -1,22 +0,0 @@
|
|
1
|
-
import { expect, fixture, html } from '@open-wc/testing';
|
2
|
-
import GlideCoreTreeItemIconButton from './tree.item.icon-button.js';
|
3
|
-
import expectArgumentError from './library/expect-argument-error.js';
|
4
|
-
GlideCoreTreeItemIconButton.shadowRootOptions.mode = 'open';
|
5
|
-
it('registers', async () => {
|
6
|
-
expect(window.customElements.get('glide-core-tree-item-icon-button')).to.equal(GlideCoreTreeItemIconButton);
|
7
|
-
});
|
8
|
-
it('throws if it does not have a default slot', async () => {
|
9
|
-
await expectArgumentError(() => {
|
10
|
-
return fixture(html `
|
11
|
-
<glide-core-tree-item-icon-button></glide-core-tree-item-icon-button>
|
12
|
-
`);
|
13
|
-
});
|
14
|
-
});
|
15
|
-
it('passes its label to the icon button', async () => {
|
16
|
-
const component = await fixture(html `
|
17
|
-
<glide-core-tree-item-icon-button label="My label"
|
18
|
-
>Hello</glide-core-tree-item-icon-button
|
19
|
-
>
|
20
|
-
`);
|
21
|
-
expect(component.shadowRoot?.querySelector('glide-core-icon-button')?.label).to.equal('My label');
|
22
|
-
});
|
@@ -1 +0,0 @@
|
|
1
|
-
export {};
|
@@ -1,86 +0,0 @@
|
|
1
|
-
import { assert, expect, fixture, html, waitUntil } from '@open-wc/testing';
|
2
|
-
import GlideCoreMenu from './menu.js';
|
3
|
-
import GlideCoreTreeItemMenu from './tree.item.menu.js';
|
4
|
-
import expectArgumentError from './library/expect-argument-error.js';
|
5
|
-
import sinon from 'sinon';
|
6
|
-
GlideCoreTreeItemMenu.shadowRootOptions.mode = 'open';
|
7
|
-
GlideCoreMenu.shadowRootOptions.mode = 'open';
|
8
|
-
it('registers', async () => {
|
9
|
-
expect(window.customElements.get('glide-core-tree-item-menu')).to.equal(GlideCoreTreeItemMenu);
|
10
|
-
});
|
11
|
-
it('throws if it does not have a default slot', async () => {
|
12
|
-
await expectArgumentError(() => {
|
13
|
-
return fixture(html `
|
14
|
-
<glide-core-tree-item-menu></glide-core-tree-item-menu>
|
15
|
-
`);
|
16
|
-
});
|
17
|
-
});
|
18
|
-
it('throws if the default slot is the incorrect type', async () => {
|
19
|
-
await expectArgumentError(() => {
|
20
|
-
return fixture(html `
|
21
|
-
<glide-core-tree-item-menu>
|
22
|
-
<button>Button</button>
|
23
|
-
</glide-core-tree-item-menu>
|
24
|
-
`);
|
25
|
-
});
|
26
|
-
// Menu is rendered asynchronously outside of Tree Menu Item's lifecycle
|
27
|
-
// and asserts against its default slot. That assertion, which is expected
|
28
|
-
// to fail in this case, results in an unhandled rejection that gets logged.
|
29
|
-
// `console.error` is stubbed so the logs aren't muddied.
|
30
|
-
const stub = sinon.stub(console, 'error');
|
31
|
-
// Menu asserts against its default slot once on `firstUpdated` and again
|
32
|
-
// on "slotchange". So we wait until the stub is called twice before restoring
|
33
|
-
// it.
|
34
|
-
await waitUntil(() => stub.calledTwice);
|
35
|
-
stub.restore();
|
36
|
-
});
|
37
|
-
it('defaults the placement of the menu to bottom start', async () => {
|
38
|
-
const component = await fixture(html `
|
39
|
-
<glide-core-tree-item-menu>
|
40
|
-
<glide-core-menu-link label="One" url="/one"> </glide-core-menu-link>
|
41
|
-
</glide-core-tree-item-menu>
|
42
|
-
`);
|
43
|
-
expect(component.shadowRoot?.querySelector('glide-core-menu')?.placement).to.equal('bottom-start');
|
44
|
-
});
|
45
|
-
it('can set placement of the menu', async () => {
|
46
|
-
const component = await fixture(html `
|
47
|
-
<glide-core-tree-item-menu placement="bottom-end">
|
48
|
-
<glide-core-menu-link label="One" url="/one"> </glide-core-menu-link>
|
49
|
-
</glide-core-tree-item-menu>
|
50
|
-
`);
|
51
|
-
expect(component.shadowRoot?.querySelector('glide-core-menu')?.placement).to.equal('bottom-end');
|
52
|
-
});
|
53
|
-
it('can be opened programmatically', async () => {
|
54
|
-
const component = await fixture(html `
|
55
|
-
<glide-core-tree-item-menu>
|
56
|
-
<glide-core-menu-link label="One" url="/one"> </glide-core-menu-link>
|
57
|
-
</glide-core-tree-item-menu>
|
58
|
-
`);
|
59
|
-
expect(component.shadowRoot
|
60
|
-
?.querySelector('glide-core-menu')
|
61
|
-
?.getAttribute('open')).to.equal(null);
|
62
|
-
component.click();
|
63
|
-
await component.updateComplete;
|
64
|
-
expect(component.shadowRoot
|
65
|
-
?.querySelector('glide-core-menu')
|
66
|
-
?.getAttribute('open')).to.equal('');
|
67
|
-
});
|
68
|
-
it('can set a custom icon', async () => {
|
69
|
-
const component = await fixture(html `
|
70
|
-
<glide-core-tree-item-menu placement="bottom-end">
|
71
|
-
<svg data-test-custom-icon="true" slot="icon"></svg>
|
72
|
-
<glide-core-menu-link label="One" url="/one"> </glide-core-menu-link>
|
73
|
-
</glide-core-tree-item-menu>
|
74
|
-
`);
|
75
|
-
const menu = component.shadowRoot?.querySelector('glide-core-menu');
|
76
|
-
assert(menu);
|
77
|
-
const menuTarget = menu.shadowRoot
|
78
|
-
?.querySelector('slot[name="target"]')
|
79
|
-
?.assignedElements()[0];
|
80
|
-
assert(menuTarget);
|
81
|
-
const icon = menuTarget
|
82
|
-
?.querySelector('slot[name="icon"]')
|
83
|
-
?.assignedElements()[0];
|
84
|
-
assert(icon instanceof SVGElement);
|
85
|
-
expect(icon.dataset.testCustomIcon).to.equal('true');
|
86
|
-
});
|
@@ -1,138 +0,0 @@
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-unused-expressions */
|
2
|
-
import './menu.link.js';
|
3
|
-
import './tree.item.menu.js';
|
4
|
-
import { expect, fixture, html } from '@open-wc/testing';
|
5
|
-
import Menu from './menu.js';
|
6
|
-
import TreeItem from './tree.item.js';
|
7
|
-
import TreeItemMenu from './tree.item.menu.js';
|
8
|
-
TreeItem.shadowRootOptions.mode = 'open';
|
9
|
-
TreeItemMenu.shadowRootOptions.mode = 'open';
|
10
|
-
Menu.shadowRootOptions.mode = 'open';
|
11
|
-
it('registers', () => {
|
12
|
-
expect(window.customElements.get('glide-core-tree-item')).to.equal(TreeItem);
|
13
|
-
});
|
14
|
-
it('renders and sets default attributes', async () => {
|
15
|
-
const component = await fixture(html `
|
16
|
-
<glide-core-tree-item label="Item"></glide-core-tree-item>
|
17
|
-
`);
|
18
|
-
expect(component.expanded).to.be.false;
|
19
|
-
expect(component.label).to.equal('Item');
|
20
|
-
expect(component.level).to.equal(1);
|
21
|
-
expect(component.shadowRoot?.querySelector('.expand-icon-container')).to.be
|
22
|
-
.ok;
|
23
|
-
});
|
24
|
-
it('does not render expand-icon-container if remove-indentation is set', async () => {
|
25
|
-
const component = await fixture(html `
|
26
|
-
<glide-core-tree-item
|
27
|
-
label="Item"
|
28
|
-
remove-indentation
|
29
|
-
></glide-core-tree-item>
|
30
|
-
`);
|
31
|
-
expect(component.shadowRoot?.querySelector('.expand-icon-container')).to.be
|
32
|
-
.null;
|
33
|
-
});
|
34
|
-
it('renders with a prefix slot', async () => {
|
35
|
-
await fixture(html `
|
36
|
-
<glide-core-tree-item label="Item">
|
37
|
-
<span slot="prefix" data-prefix>prefix</span>
|
38
|
-
</glide-core-tree-item>
|
39
|
-
`);
|
40
|
-
expect(document.querySelector('[data-prefix]')).to.be.ok;
|
41
|
-
});
|
42
|
-
it('adds label to menu target', async () => {
|
43
|
-
const component = await fixture(html `
|
44
|
-
<glide-core-tree-item label="Item">
|
45
|
-
<glide-core-tree-item-menu slot="menu" data-menu>
|
46
|
-
<glide-core-menu-link label="Move" url="/move"> </glide-core-menu-link>
|
47
|
-
</glide-core-tree-item-menu>
|
48
|
-
</glide-core-tree-item>
|
49
|
-
`);
|
50
|
-
const menuTarget = component
|
51
|
-
.querySelector('glide-core-tree-item-menu')
|
52
|
-
?.shadowRoot?.querySelector('glide-core-menu')
|
53
|
-
?.querySelector('glide-core-icon-button');
|
54
|
-
expect(menuTarget?.label).to.equal('Actions for Item');
|
55
|
-
});
|
56
|
-
it('renders with a suffix slot', async () => {
|
57
|
-
await fixture(html `
|
58
|
-
<glide-core-tree-item label="Item">
|
59
|
-
<span slot="suffix" data-suffix>suffix</span>
|
60
|
-
</glide-core-tree-item>
|
61
|
-
`);
|
62
|
-
expect(document.querySelector('[data-suffix]')).to.be.ok;
|
63
|
-
});
|
64
|
-
it('does not have an expand icon if there are no child tree items', async () => {
|
65
|
-
const component = await fixture(html `
|
66
|
-
<glide-core-tree-item label="Item"></glide-core-tree-item>
|
67
|
-
`);
|
68
|
-
expect(component.shadowRoot?.querySelector('.expand-icon')).to.equal(null);
|
69
|
-
});
|
70
|
-
it('can expand', async () => {
|
71
|
-
const component = await fixture(html `
|
72
|
-
<glide-core-tree-item label="Item">
|
73
|
-
<glide-core-tree-item label="Child Item 1"></glide-core-tree-item>
|
74
|
-
</glide-core-tree-item>
|
75
|
-
`);
|
76
|
-
expect([
|
77
|
-
...component.shadowRoot.querySelector('.component').classList,
|
78
|
-
]).to.deep.equal(['component']);
|
79
|
-
expect([
|
80
|
-
...component.shadowRoot.querySelector('.expand-icon').classList,
|
81
|
-
]).to.deep.equal(['expand-icon']);
|
82
|
-
component.toggleExpand();
|
83
|
-
await component.updateComplete;
|
84
|
-
expect([
|
85
|
-
...component.shadowRoot.querySelector('.component').classList,
|
86
|
-
]).to.deep.equal(['component', 'expanded']);
|
87
|
-
expect([
|
88
|
-
...component.shadowRoot.querySelector('.expand-icon').classList,
|
89
|
-
]).to.deep.equal(['expand-icon', 'expand-icon-expanded']);
|
90
|
-
});
|
91
|
-
it('renders child and grandchild tree items', async () => {
|
92
|
-
const component = await fixture(html `
|
93
|
-
<glide-core-tree-item expanded label="Item">
|
94
|
-
<glide-core-tree-item label="Child Item 1"></glide-core-tree-item>
|
95
|
-
<glide-core-tree-item label="Child Item 2">
|
96
|
-
<glide-core-tree-item label="Grandchild Item 1"></glide-core-tree-item>
|
97
|
-
</glide-core-tree-item>
|
98
|
-
</glide-core-tree-item>
|
99
|
-
`);
|
100
|
-
expect(component.shadowRoot?.querySelector('.expand-icon')).to.be.ok;
|
101
|
-
const childItems = component.slotElements;
|
102
|
-
expect(childItems?.length).to.equal(2);
|
103
|
-
expect(childItems?.[0].level).to.equal(2, 'Children are level 2');
|
104
|
-
const grandchildItems = childItems?.[1].slotElements;
|
105
|
-
expect(grandchildItems?.length).to.equal(1);
|
106
|
-
expect(grandchildItems?.[0].level).to.equal(3, 'Grandchildren are level 3');
|
107
|
-
});
|
108
|
-
it('sets the level for tree items programmatically added later', async () => {
|
109
|
-
const component = await fixture(html `
|
110
|
-
<glide-core-tree-item expanded label="Item"></glide-core-tree-item>
|
111
|
-
`);
|
112
|
-
const newItem = Object.assign(document.createElement('glide-core-tree-item'), {
|
113
|
-
label: 'Child',
|
114
|
-
});
|
115
|
-
component.append(newItem);
|
116
|
-
await component.updateComplete;
|
117
|
-
expect(newItem.level).to.equal(2);
|
118
|
-
});
|
119
|
-
it('can select child and grandchild items', async () => {
|
120
|
-
const component = await fixture(html `
|
121
|
-
<glide-core-tree-item expanded label="Item">
|
122
|
-
<glide-core-tree-item label="Child Item 1"></glide-core-tree-item>
|
123
|
-
<glide-core-tree-item label="Child Item 2">
|
124
|
-
<glide-core-tree-item label="Grandchild Item 1"></glide-core-tree-item>
|
125
|
-
</glide-core-tree-item>
|
126
|
-
</glide-core-tree-item>
|
127
|
-
`);
|
128
|
-
const childItems = component.slotElements;
|
129
|
-
const grandchildItems = childItems?.[1].slotElements;
|
130
|
-
component.selectItem(childItems[0]);
|
131
|
-
expect(childItems[0].selected).to.be.true;
|
132
|
-
expect(childItems[1].selected).to.be.false;
|
133
|
-
expect(grandchildItems[0].selected).to.be.false;
|
134
|
-
component.selectItem(grandchildItems[0]);
|
135
|
-
expect(childItems[0].selected).to.be.false;
|
136
|
-
expect(childItems[1].selected).to.be.false;
|
137
|
-
expect(grandchildItems[0].selected).to.be.true;
|
138
|
-
});
|
package/dist/tree.stories.d.ts
DELETED
@@ -1,9 +0,0 @@
|
|
1
|
-
import './icon-button.js';
|
2
|
-
import './icons/storybook.js';
|
3
|
-
import './menu.link.js';
|
4
|
-
import './tree.item.icon-button.js';
|
5
|
-
import './tree.js';
|
6
|
-
import type { Meta, StoryObj } from '@storybook/web-components';
|
7
|
-
declare const meta: Meta;
|
8
|
-
export default meta;
|
9
|
-
export declare const Tree: StoryObj;
|
package/dist/tree.test.aria.d.ts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export {};
|
package/dist/tree.test.aria.js
DELETED
@@ -1,86 +0,0 @@
|
|
1
|
-
import { expect, fixture, html } from '@open-wc/testing';
|
2
|
-
import GlideCoreTree from './tree.js';
|
3
|
-
import GlideCoreTreeItem from './tree.item.js';
|
4
|
-
GlideCoreTree.shadowRootOptions.mode = 'open';
|
5
|
-
GlideCoreTreeItem.shadowRootOptions.mode = 'open';
|
6
|
-
it('is accessible', async () => {
|
7
|
-
const component = await fixture(html `
|
8
|
-
<glide-core-tree>
|
9
|
-
<glide-core-tree-item label="Child Item 1"></glide-core-tree-item>
|
10
|
-
<glide-core-tree-item label="Child Item 2">
|
11
|
-
<glide-core-tree-item label="Grandchild Item 1"></glide-core-tree-item>
|
12
|
-
</glide-core-tree-item>
|
13
|
-
</glide-core-tree>
|
14
|
-
`);
|
15
|
-
await expect(component).to.be.accessible();
|
16
|
-
});
|
17
|
-
it('sets roles tree and treeitem', async () => {
|
18
|
-
const component = await fixture(html `
|
19
|
-
<glide-core-tree>
|
20
|
-
<glide-core-tree-item label="Child Item 1"></glide-core-tree-item>
|
21
|
-
<glide-core-tree-item label="Child Item 2">
|
22
|
-
<glide-core-tree-item label="Grandchild Item 1"></glide-core-tree-item>
|
23
|
-
</glide-core-tree-item>
|
24
|
-
</glide-core-tree>
|
25
|
-
`);
|
26
|
-
const childItems = component.slotElements;
|
27
|
-
expect(component.shadowRoot?.firstElementChild?.getAttribute('role')).to.equal('tree');
|
28
|
-
expect(childItems[0].shadowRoot?.querySelector('.component')?.getAttribute('role')).to.equal('treeitem');
|
29
|
-
expect(childItems[1].shadowRoot?.querySelector('.component')?.getAttribute('role')).to.equal('treeitem');
|
30
|
-
expect(childItems[1].slotElements[0].shadowRoot
|
31
|
-
?.querySelector('.component')
|
32
|
-
?.getAttribute('role')).to.equal('treeitem');
|
33
|
-
});
|
34
|
-
it('sets aria-expanded correctly', async () => {
|
35
|
-
const component = await fixture(html `
|
36
|
-
<glide-core-tree>
|
37
|
-
<glide-core-tree-item label="Child Item 1"></glide-core-tree-item>
|
38
|
-
<glide-core-tree-item label="Child Item 2">
|
39
|
-
<glide-core-tree-item label="Grandchild Item 1"></glide-core-tree-item>
|
40
|
-
</glide-core-tree-item>
|
41
|
-
<glide-core-tree-item label="Expanded child item" expanded>
|
42
|
-
<glide-core-tree-item label="Grandchild Item 2"></glide-core-tree-item>
|
43
|
-
</glide-core-tree-item>
|
44
|
-
</glide-core-tree>
|
45
|
-
`);
|
46
|
-
const childItems = component.slotElements;
|
47
|
-
expect(childItems[0].getAttribute('aria-expanded')).to.equal(null, 'does not set at all if there are no child items');
|
48
|
-
expect(childItems[1].shadowRoot
|
49
|
-
?.querySelector('.component')
|
50
|
-
?.getAttribute('aria-expanded')).to.equal('false', 'sets to string "false" if not expanded');
|
51
|
-
childItems[1].toggleExpand();
|
52
|
-
await childItems[1].updateComplete;
|
53
|
-
expect(childItems[1].shadowRoot
|
54
|
-
?.querySelector('.component')
|
55
|
-
?.getAttribute('aria-expanded')).to.equal('true', 'sets to string "true" after being expanded');
|
56
|
-
expect(childItems[2].shadowRoot
|
57
|
-
?.querySelector('.component')
|
58
|
-
?.getAttribute('aria-expanded')).to.equal('true', 'sets to string "true" if starts as expanded');
|
59
|
-
});
|
60
|
-
it('sets aria-selected correctly', async () => {
|
61
|
-
const component = await fixture(html `
|
62
|
-
<glide-core-tree>
|
63
|
-
<glide-core-tree-item label="Child Item 1">
|
64
|
-
<glide-core-tree-item label="Grandchild Item 1"></glide-core-tree-item>
|
65
|
-
</glide-core-tree-item>
|
66
|
-
<glide-core-tree-item label="Child Item 2"></glide-core-tree-item>
|
67
|
-
<glide-core-tree-item
|
68
|
-
label="Child Item 3"
|
69
|
-
selected
|
70
|
-
></glide-core-tree-item>
|
71
|
-
</glide-core-tree>
|
72
|
-
`);
|
73
|
-
const childItems = component.slotElements;
|
74
|
-
expect(childItems[0].getAttribute('aria-selected')).to.equal(null, 'does not set at all if there are child items');
|
75
|
-
expect(childItems[1].shadowRoot
|
76
|
-
?.querySelector('.component')
|
77
|
-
?.getAttribute('aria-selected')).to.equal('false', 'sets to string "false" if not selected');
|
78
|
-
expect(childItems[2].shadowRoot
|
79
|
-
?.querySelector('.component')
|
80
|
-
?.getAttribute('aria-selected')).to.equal('true', 'sets to string "true" if starts as selected');
|
81
|
-
component.selectItem(childItems[1]);
|
82
|
-
await childItems[1].updateComplete;
|
83
|
-
expect(childItems[1].shadowRoot
|
84
|
-
?.querySelector('.component')
|
85
|
-
?.getAttribute('aria-selected')).to.equal('true', 'sets to string "true" after being selected');
|
86
|
-
});
|