Skip to content

Commit 0b20a9c

Browse files
committed
Wait for wrapper.setProps
1 parent b7e29da commit 0b20a9c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+498
-488
lines changed

tests/unit/components/AdjustableSidebarWidth.spec.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ describe('AdjustableSidebarWidth', () => {
210210
expect(FocusTrap.mock.results[0].value.start).toHaveBeenCalledTimes(0);
211211
expect(FocusTrap.mock.results[0].value.stop).toHaveBeenCalledTimes(0);
212212
// trigger opening externally
213-
wrapper.setProps({ shownOnMobile: true });
213+
await wrapper.setProps({ shownOnMobile: true });
214214
await flushPromises();
215215
// assert open class attached
216216
expect(aside.classes()).toContain('show-on-mobile');
@@ -225,7 +225,7 @@ describe('AdjustableSidebarWidth', () => {
225225
expect(FocusTrap.mock.results[0].value.start).toHaveBeenCalledTimes(1);
226226
expect(FocusTrap.mock.results[0].value.stop).toHaveBeenCalledTimes(0);
227227
// close again
228-
wrapper.setProps({ shownOnMobile: false });
228+
await wrapper.setProps({ shownOnMobile: false });
229229
await flushPromises();
230230
// assert class
231231
expect(aside.classes()).not.toContain('show-on-mobile');
@@ -244,7 +244,7 @@ describe('AdjustableSidebarWidth', () => {
244244
// assert not open
245245
const aside = wrapper.findComponent('.aside');
246246
// trigger opening externally
247-
wrapper.setProps({ shownOnMobile: true });
247+
await wrapper.setProps({ shownOnMobile: true });
248248
await flushPromises();
249249
// assert open class attached
250250
expect(aside.classes()).toContain('show-on-mobile');
@@ -291,13 +291,13 @@ describe('AdjustableSidebarWidth', () => {
291291
const aside = wrapper.findComponent({ ref: 'aside' });
292292
expect(aside.classes()).not.toContain('hide-on-large');
293293
expect(aside.classes()).not.toContain('sidebar-transitioning');
294-
wrapper.setProps({ hiddenOnLarge: true });
294+
await wrapper.setProps({ hiddenOnLarge: true });
295295
expect(aside.classes()).toContain('hide-on-large');
296296
expect(aside.classes()).toContain('sidebar-transitioning');
297297
expect(aside.attributes()).toMatchObject({
298298
'aria-hidden': 'true',
299299
});
300-
wrapper.setProps({ hiddenOnLarge: false });
300+
await wrapper.setProps({ hiddenOnLarge: false });
301301
expect(wrapper.findComponent({ ref: 'aside' }).classes()).not.toContain('hide-on-large');
302302
expect(aside.classes()).toContain('sidebar-transitioning');
303303
await wrapper.vm.$nextTick();
@@ -468,7 +468,7 @@ describe('AdjustableSidebarWidth', () => {
468468
assertWidth(wrapper, 300); // wrapper is minimum 20% of the screen (1000px)
469469
});
470470

471-
it('force closes the nav, if dragging below the forceClose threshold', () => {
471+
it('force closes the nav, if dragging below the forceClose threshold', async () => {
472472
const wrapper = createWrapper();
473473
const aside = wrapper.findComponent('.aside');
474474
// assert dragging
@@ -483,7 +483,7 @@ describe('AdjustableSidebarWidth', () => {
483483
assertWidth(wrapper, 300); // wrapper is minimum 30% of the screen (1000px)
484484
expect(wrapper.emitted('update:hiddenOnLarge')).toEqual([[true]]);
485485
// simulate event is handled on parent
486-
wrapper.setProps({
486+
await wrapper.setProps({
487487
hiddenOnLarge: true,
488488
});
489489
// drag open now
@@ -498,7 +498,7 @@ describe('AdjustableSidebarWidth', () => {
498498
it('removes any locks or listeners upon destruction', async () => {
499499
const wrapper = createWrapper();
500500
await flushPromises();
501-
wrapper.setProps({ shownOnMobile: true });
501+
await wrapper.setProps({ shownOnMobile: true });
502502
await flushPromises();
503503
wrapper.destroy();
504504
expect(FocusTrap.mock.results[0].value.destroy).toHaveBeenCalledTimes(1);
@@ -612,7 +612,7 @@ describe('AdjustableSidebarWidth', () => {
612612
setContentWidth(wrapper, 99);
613613
expect(store.state.contentWidth).toBe(0);
614614
// setup an external close
615-
wrapper.setProps({ hiddenOnLarge: true });
615+
await wrapper.setProps({ hiddenOnLarge: true });
616616
const aside = wrapper.findComponent('.aside');
617617
aside.trigger('transitionstart', { propertyName: 'width' });
618618
aside.trigger('transitionend', { propertyName: 'width' });
@@ -621,7 +621,7 @@ describe('AdjustableSidebarWidth', () => {
621621
expect(store.state.contentWidth).toBe(99);
622622
// prepare for an external open
623623
setContentWidth(wrapper, 1099);
624-
wrapper.setProps({ hiddenOnLarge: false });
624+
await wrapper.setProps({ hiddenOnLarge: false });
625625
aside.trigger('transitionstart', { propertyName: 'width' });
626626
// assert its the same, until transitions end
627627
expect(store.state.contentWidth).toBe(99);

tests/unit/components/Article.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,8 +150,8 @@ describe('Article', () => {
150150
});
151151

152152
describe('without hero section', () => {
153-
beforeEach(() => {
154-
wrapper.setProps({ sections: [] });
153+
beforeEach(async () => {
154+
await wrapper.setProps({ sections: [] });
155155
});
156156

157157
it('does not provide a page title', () => {

tests/unit/components/Article/Layouts/ContentAndMedia.spec.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,14 @@ describe('ContentAndMedia', () => {
3636
expect(wrapper.is('div.content-and-media')).toBe(true);
3737
});
3838

39-
it('renders the `mediaPosition` classname', () => {
39+
it('renders the `mediaPosition` classname', async () => {
4040
expect(wrapper.is('.content-and-media.media-trailing')).toBe(true);
4141

42-
wrapper.setProps({ mediaPosition: MediaPosition.leading });
42+
await wrapper.setProps({ mediaPosition: MediaPosition.leading });
4343
expect(wrapper.classes('media-leading')).toBe(true);
4444
expect(wrapper.classes('media-trailing')).toBe(false);
4545

46-
wrapper.setProps({ mediaPosition: MediaPosition.trailing });
46+
await wrapper.setProps({ mediaPosition: MediaPosition.trailing });
4747
expect(wrapper.classes('media-leading')).toBe(false);
4848
expect(wrapper.classes('media-trailing')).toBe(true);
4949
});

tests/unit/components/Article/Layouts/FullWidth.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,8 @@ describe('FullWidth', () => {
8181
},
8282
];
8383

84-
beforeEach(() => {
85-
wrapper.setProps({ content });
84+
beforeEach(async () => {
85+
await wrapper.setProps({ content });
8686
});
8787

8888
it('groups headings and subsequent content with `LinkableElement`', () => {

tests/unit/components/Asset.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,11 +112,11 @@ describe('Asset', () => {
112112
expect(videoAsset.props('alt')).toBe(video.alt);
113113
});
114114

115-
it('passes down `deviceFrame` to `ReplayableVideoAsset`', () => {
115+
it('passes down `deviceFrame` to `ReplayableVideoAsset`', async () => {
116116
const wrapper = mountAsset('video', { video });
117117
let videoAsset = wrapper.findComponent(ReplayableVideoAsset);
118118
expect(videoAsset.props('deviceFrame')).toBeFalsy();
119-
wrapper.setProps({
119+
await wrapper.setProps({
120120
deviceFrame: 'phone',
121121
});
122122
videoAsset = wrapper.findComponent(ReplayableVideoAsset);

tests/unit/components/BaseDropdown.spec.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@ describe('BaseDropdown', () => {
3131
expect(wrapper.classes()).toEqual(['form-element']);
3232
});
3333

34-
it('renders a `select` component', () => {
34+
it('renders a `select` component', async () => {
3535
const wrapper = createWrapper();
3636
// assert select is rendered with correct classes
3737
const select = wrapper.findComponent('select');
3838
expect(select.exists()).toBe(true);
3939
expect(select.classes()).toContain('form-dropdown');
40-
wrapper.setProps({ value: '' });
40+
await wrapper.setProps({ value: '' });
4141
expect(select.classes()).toContain('form-dropdown-selectnone');
4242
});
4343

@@ -136,7 +136,7 @@ describe('BaseDropdown', () => {
136136
expect(icon.attributes()).toHaveProperty('aria-hidden', 'true');
137137
});
138138

139-
it('passes `form-dropdown-selectnone` if value is empty', () => {
139+
it('passes `form-dropdown-selectnone` if value is empty', async () => {
140140
let scopedSlotProps = {};
141141
const wrapper = createWrapper({
142142
scopedSlots: {
@@ -148,7 +148,7 @@ describe('BaseDropdown', () => {
148148
});
149149
expect(scopedSlotProps.dropdownClasses)
150150
.toContainEqual({ [EmptyClass]: false, 'no-eyebrow': true });
151-
wrapper.setProps({
151+
await wrapper.setProps({
152152
value: '',
153153
});
154154
expect(scopedSlotProps.dropdownClasses)

tests/unit/components/ContentNode/Aside.spec.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ describe('Aside', () => {
2323
expect(wrapper.attributes('aria-label')).toBe('note');
2424
});
2525

26-
it('renders a label', () => {
26+
it('renders a label', async () => {
2727
const wrapper = shallowMount(Aside, {
2828
propsData: {
2929
kind: 'experiment',
@@ -33,27 +33,27 @@ describe('Aside', () => {
3333
expect(label.exists()).toBe(true);
3434
expect(label.text()).toBe('aside-kind.experiment');
3535

36-
wrapper.setProps({ kind: 'important' });
36+
await wrapper.setProps({ kind: 'important' });
3737
label = wrapper.findComponent('.label');
3838
expect(label.exists()).toBe(true);
3939
expect(label.text()).toBe('aside-kind.important');
4040

41-
wrapper.setProps({ kind: 'note' });
41+
await wrapper.setProps({ kind: 'note' });
4242
label = wrapper.findComponent('.label');
4343
expect(label.exists()).toBe(true);
4444
expect(label.text()).toBe('aside-kind.note');
4545

46-
wrapper.setProps({ kind: 'tip' });
46+
await wrapper.setProps({ kind: 'tip' });
4747
label = wrapper.findComponent('.label');
4848
expect(label.exists()).toBe(true);
4949
expect(label.text()).toBe('aside-kind.tip');
5050

51-
wrapper.setProps({ kind: 'warning' });
51+
await wrapper.setProps({ kind: 'warning' });
5252
label = wrapper.findComponent('.label');
5353
expect(label.exists()).toBe(true);
5454
expect(label.text()).toBe('aside-kind.warning');
5555

56-
wrapper.setProps({ kind: 'note', name: 'Custom Name' });
56+
await wrapper.setProps({ kind: 'note', name: 'Custom Name' });
5757
label = wrapper.findComponent('.label');
5858
expect(label.exists()).toBe(true);
5959
expect(label.text()).toBe('Custom Name');

tests/unit/components/ContentNode/CodeListing.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ describe('CodeListing', () => {
179179
await flushPromises();
180180

181181
expect(wrapper.findComponent('.syntax-keyword').text()).toBe('let');
182-
wrapper.setProps({
182+
await wrapper.setProps({
183183
content: ['print("Some Text")'],
184184
});
185185
await flushPromises();
@@ -197,7 +197,7 @@ describe('CodeListing', () => {
197197
await flushPromises();
198198

199199
expect(wrapper.classes()).not.toContain('single-line');
200-
wrapper.setProps({
200+
await wrapper.setProps({
201201
content: content.slice(0, 1),
202202
});
203203

tests/unit/components/ContentNode/CollapsibleCodeListing.spec.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -87,24 +87,24 @@ describe('CollapsibleCodeListing', () => {
8787
expect(containers.at(2).contains('.code-line')).toBe(true);
8888
});
8989

90-
it('adds collapsed class to all collapsible containers when collapsed', () => {
90+
it('adds collapsed class to all collapsible containers when collapsed', async () => {
9191
expect(wrapper.findAll('.collapsed').length).toBe(0);
92-
wrapper.setProps({ collapsed: true });
92+
await wrapper.setProps({ collapsed: true });
9393
expect(wrapper.findAll('.collapsed').length).toBe(1);
9494
});
9595

96-
it('does not show line numbers when showLineNumbers is false', () => {
96+
it('does not show line numbers when showLineNumbers is false', async () => {
9797
let number = wrapper.element.querySelector('.code-number');
9898
expect(number.style.display).toBe('');
99-
wrapper.setProps({ showLineNumbers: false });
99+
await wrapper.setProps({ showLineNumbers: false });
100100
number = wrapper.element.querySelector('.code-number');
101101
expect(number.style.display).toBe('none');
102102
});
103103

104104
it('adds a class `single-line` if only one line of code is provided', async () => {
105105
expect(wrapper.classes()).not.toContain('single-line');
106106

107-
wrapper.setProps({
107+
await wrapper.setProps({
108108
content: [
109109
{
110110
collapsible: false,

tests/unit/components/ContentNode/Row.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ describe('Row', () => {
2626
expect(wrapper.text()).toContain('Slot Content');
2727
});
2828

29-
it('renders with columns in mind', () => {
29+
it('renders with columns in mind', async () => {
3030
const wrapper = createWrapper({
3131
propsData: {
3232
columns: { large: 4 },
@@ -36,7 +36,7 @@ describe('Row', () => {
3636
expect(wrapper.vm.style).toHaveProperty('--col-count-large', 4);
3737
expect(wrapper.vm.style).toHaveProperty('--col-count-medium', undefined);
3838
expect(wrapper.vm.style).toHaveProperty('--col-count-small', 1);
39-
wrapper.setProps({
39+
await wrapper.setProps({
4040
columns: {
4141
large: 3,
4242
medium: 5,

0 commit comments

Comments
 (0)