diff --git a/docs/api/wrapper/setChecked.md b/docs/api/wrapper/setChecked.md index f0b49c0b7..64d0d1738 100644 --- a/docs/api/wrapper/setChecked.md +++ b/docs/api/wrapper/setChecked.md @@ -12,9 +12,14 @@ Sets checked value for input element of type checkbox or radio and updates `v-mo import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const radioInput = wrapper.find('input[type="radio"]') -radioInput.setChecked() +test('setChecked demo', async () => { + const wrapper = mount(Foo) + const radioInput = wrapper.find('input[type="radio"]') + + await radioInput.setChecked() + + expect(radioInput.element.checked).toBeTruthy() +}) ``` - **Note:** diff --git a/docs/api/wrapper/setData.md b/docs/api/wrapper/setData.md index ca622d3d3..ef8323ca3 100644 --- a/docs/api/wrapper/setData.md +++ b/docs/api/wrapper/setData.md @@ -16,7 +16,11 @@ setData works by recursively calling Vue.set. import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setData({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setData demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setData({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` diff --git a/docs/api/wrapper/setProps.md b/docs/api/wrapper/setProps.md index 7b6ed8fe0..9fc39cc7d 100644 --- a/docs/api/wrapper/setProps.md +++ b/docs/api/wrapper/setProps.md @@ -14,9 +14,13 @@ Sets `Wrapper` `vm` props and forces update. import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setProps({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setProps demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setProps({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` You can also pass a `propsData` object, which will initialize the Vue instance with passed values. diff --git a/docs/api/wrapper/setSelected.md b/docs/api/wrapper/setSelected.md index 85767740a..fa953f672 100644 --- a/docs/api/wrapper/setSelected.md +++ b/docs/api/wrapper/setSelected.md @@ -8,10 +8,14 @@ Selects an option element and updates `v-model` bound data. import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const options = wrapper.find('select').findAll('option') +test('setSelected demo', async () => { + const wrapper = mount(Foo) + const options = wrapper.find('select').findAll('option') -options.at(1).setSelected() + await options.at(1).setSelected() + + expect(wrapper.find('option:checked').element.value).toBe('bar') +}) ``` - **Note:** diff --git a/docs/api/wrapper/setValue.md b/docs/api/wrapper/setValue.md index f74e0c3dd..efe2a29f4 100644 --- a/docs/api/wrapper/setValue.md +++ b/docs/api/wrapper/setValue.md @@ -12,17 +12,28 @@ Sets value of a text-control input or select element and updates `v-model` bound import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) +test('setValue demo', async () => { + const wrapper = mount(Foo) -const textInput = wrapper.find('input[type="text"]') -textInput.setValue('some value') + const textInput = wrapper.find('input[type="text"]') + await textInput.setValue('some value') -const select = wrapper.find('select') -select.setValue('option value') + expect(wrapper.find('input[type="text"]').element.value).toBe('some value') -// requires + const multiselect = wrapper.find('select') + await multiselect.setValue(['value1', 'value3']) + + const selectedOptions = Array.from(multiselect.element.selectedOptions).map( + o => o.value + ) + expect(selectedOptions).toEqual(['value1', 'value3']) +}) ``` - **Note:** diff --git a/docs/guides/common-tips.md b/docs/guides/common-tips.md index 44ebf4211..9401a6093 100644 --- a/docs/guides/common-tips.md +++ b/docs/guides/common-tips.md @@ -153,9 +153,11 @@ describe('ParentComponent', () => { You can directly manipulate the state of the component using the `setData` or `setProps` method on the wrapper: ```js -wrapper.setData({ count: 10 }) +it('manipulates state', async () => { + await wrapper.setData({ count: 10 }) -wrapper.setProps({ foo: 'bar' }) + await wrapper.setProps({ foo: 'bar' }) +}) ``` ### Mocking Props diff --git a/docs/ja/api/wrapper/setChecked.md b/docs/ja/api/wrapper/setChecked.md index a8de51572..c8a06701a 100644 --- a/docs/ja/api/wrapper/setChecked.md +++ b/docs/ja/api/wrapper/setChecked.md @@ -11,9 +11,14 @@ checkbox 型もしくは radio 型の input 要素の checked の値をセット import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const radioInput = wrapper.find('input[type="radio"]') -radioInput.setChecked() +test('setChecked demo', async () => { + const wrapper = mount(Foo) + const radioInput = wrapper.find('input[type="radio"]') + + await radioInput.setChecked() + + expect(radioInput.element.checked).toBeTruthy() +}) ``` - **注:** diff --git a/docs/ja/api/wrapper/setData.md b/docs/ja/api/wrapper/setData.md index 50f5fa2eb..0fe2a33c2 100644 --- a/docs/ja/api/wrapper/setData.md +++ b/docs/ja/api/wrapper/setData.md @@ -16,7 +16,11 @@ setData は再帰的に Vue.set を実行することで動作します。 import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setData({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setData demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setData({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` diff --git a/docs/ja/api/wrapper/setProps.md b/docs/ja/api/wrapper/setProps.md index 62427734e..6f72b03c7 100644 --- a/docs/ja/api/wrapper/setProps.md +++ b/docs/ja/api/wrapper/setProps.md @@ -14,9 +14,13 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setProps({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setProps demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setProps({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` 渡された値で Vue インスタンス を初期化する `propsData` オブジェクトを渡すことができます。 diff --git a/docs/ja/api/wrapper/setSelected.md b/docs/ja/api/wrapper/setSelected.md index fb2fe3ad8..f5e123e28 100644 --- a/docs/ja/api/wrapper/setSelected.md +++ b/docs/ja/api/wrapper/setSelected.md @@ -8,10 +8,14 @@ option 要素を選択します。そして、 `v-model` に束縛されてい import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const options = wrapper.find('select').findAll('option') +test('setSelected demo', async () => { + const wrapper = mount(Foo) + const options = wrapper.find('select').findAll('option') -options.at(1).setSelected() + await options.at(1).setSelected() + + expect(wrapper.find('option:checked').element.value).toBe('bar') +}) ``` - **注:** diff --git a/docs/ja/api/wrapper/setValue.md b/docs/ja/api/wrapper/setValue.md index f8c1eabe3..0c9e3fc1b 100644 --- a/docs/ja/api/wrapper/setValue.md +++ b/docs/ja/api/wrapper/setValue.md @@ -12,17 +12,28 @@ text コントロールの input 要素の 値をセットします。そして import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) +test('setValue demo', async () => { + const wrapper = mount(Foo) -const textInput = wrapper.find('input[type="text"]') -textInput.setValue('some value') + const textInput = wrapper.find('input[type="text"]') + await textInput.setValue('some value') -const select = wrapper.find('select') -select.setValue('option value') + expect(wrapper.find('input[type="text"]').element.value).toBe('some value') -// requires + const multiselect = wrapper.find('select') + await multiselect.setValue(['value1', 'value3']) + + const selectedOptions = Array.from(multiselect.element.selectedOptions).map( + o => o.value + ) + expect(selectedOptions).toEqual(['value1', 'value3']) +}) ``` - **注:** diff --git a/docs/ja/guides/common-tips.md b/docs/ja/guides/common-tips.md index 99b58b331..588c6e181 100644 --- a/docs/ja/guides/common-tips.md +++ b/docs/ja/guides/common-tips.md @@ -63,9 +63,11 @@ expect(wrapper.emitted().foo[1]).toEqual([123]) ラッパの `setData` メソッドまたは `setProps` メソッドを使って、コンポーネントの状態を直接操作することができます。: ```js -wrapper.setData({ count: 10 }) +it('manipulates state', async () => { + await wrapper.setData({ count: 10 }) -wrapper.setProps({ foo: 'bar' }) + await wrapper.setProps({ foo: 'bar' }) +}) ``` ### プロパティをモックする diff --git a/docs/ru/api/wrapper/setChecked.md b/docs/ru/api/wrapper/setChecked.md index 41f6e3cd3..5bf3e68bd 100644 --- a/docs/ru/api/wrapper/setChecked.md +++ b/docs/ru/api/wrapper/setChecked.md @@ -12,9 +12,14 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const radioInput = wrapper.find('input[type="radio"]') -radioInput.setChecked() +test('setChecked demo', async () => { + const wrapper = mount(Foo) + const radioInput = wrapper.find('input[type="radio"]') + + await radioInput.setChecked() + + expect(radioInput.element.checked).toBeTruthy() +}) ``` - **Примечание:** diff --git a/docs/ru/api/wrapper/setData.md b/docs/ru/api/wrapper/setData.md index 42ea52b95..a5b405ced 100644 --- a/docs/ru/api/wrapper/setData.md +++ b/docs/ru/api/wrapper/setData.md @@ -18,7 +18,11 @@ setData работает путём слияния существующих св import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setData({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setData demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setData({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` diff --git a/docs/ru/api/wrapper/setProps.md b/docs/ru/api/wrapper/setProps.md index be510897c..9e4764161 100644 --- a/docs/ru/api/wrapper/setProps.md +++ b/docs/ru/api/wrapper/setProps.md @@ -14,9 +14,13 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setProps({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setProps demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setProps({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` Вы также можете передать объект `propsData`, который инициализирует экземпляр Vue с переданными значениями. diff --git a/docs/ru/api/wrapper/setSelected.md b/docs/ru/api/wrapper/setSelected.md index de9c36433..4f6e9e1c2 100644 --- a/docs/ru/api/wrapper/setSelected.md +++ b/docs/ru/api/wrapper/setSelected.md @@ -8,10 +8,14 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const options = wrapper.find('select').findAll('option') +test('setSelected demo', async () => { + const wrapper = mount(Foo) + const options = wrapper.find('select').findAll('option') -options.at(1).setSelected() + await options.at(1).setSelected() + + expect(wrapper.find('option:checked').element.value).toBe('bar') +}) ``` - **Примечание:** diff --git a/docs/ru/api/wrapper/setValue.md b/docs/ru/api/wrapper/setValue.md index 6971ff9ae..39690572e 100644 --- a/docs/ru/api/wrapper/setValue.md +++ b/docs/ru/api/wrapper/setValue.md @@ -12,17 +12,28 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) +test('setValue demo', async () => { + const wrapper = mount(Foo) -const textInput = wrapper.find('input[type="text"]') -textInput.setValue('some value') + const textInput = wrapper.find('input[type="text"]') + await textInput.setValue('some value') -const select = wrapper.find('select') -select.setValue('option value') + expect(wrapper.find('input[type="text"]').element.value).toBe('some value') -// требует + const multiselect = wrapper.find('select') + await multiselect.setValue(['value1', 'value3']) + + const selectedOptions = Array.from(multiselect.element.selectedOptions).map( + o => o.value + ) + expect(selectedOptions).toEqual(['value1', 'value3']) +}) ``` - **Примечание:** diff --git a/docs/ru/guides/common-tips.md b/docs/ru/guides/common-tips.md index f7f33b313..e1f23e4a2 100644 --- a/docs/ru/guides/common-tips.md +++ b/docs/ru/guides/common-tips.md @@ -113,9 +113,11 @@ describe('ParentComponent', () => { Вы можете напрямую манипулировать состоянием компонента с помощью методов `setData` или `setProps` на обёртке: ```js -wrapper.setData({ count: 10 }) +it('manipulates state', async () => { + await wrapper.setData({ count: 10 }) -wrapper.setProps({ foo: 'bar' }) + await wrapper.setProps({ foo: 'bar' }) +}) ``` ### Моки входных параметров diff --git a/docs/zh/api/wrapper/setChecked.md b/docs/zh/api/wrapper/setChecked.md index d4273ca53..fbb831db6 100644 --- a/docs/zh/api/wrapper/setChecked.md +++ b/docs/zh/api/wrapper/setChecked.md @@ -12,9 +12,14 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const radioInput = wrapper.find('input[type="radio"]') -radioInput.setChecked() +test('setChecked demo', async () => { + const wrapper = mount(Foo) + const radioInput = wrapper.find('input[type="radio"]') + + await radioInput.setChecked() + + expect(radioInput.element.checked).toBeTruthy() +}) ``` - **注意:** diff --git a/docs/zh/api/wrapper/setData.md b/docs/zh/api/wrapper/setData.md index 902d45c78..b0b551f71 100644 --- a/docs/zh/api/wrapper/setData.md +++ b/docs/zh/api/wrapper/setData.md @@ -16,7 +16,11 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setData({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setData demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setData({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` diff --git a/docs/zh/api/wrapper/setProps.md b/docs/zh/api/wrapper/setProps.md index dd7d6bace..80e13a466 100644 --- a/docs/zh/api/wrapper/setProps.md +++ b/docs/zh/api/wrapper/setProps.md @@ -14,9 +14,13 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -wrapper.setProps({ foo: 'bar' }) -expect(wrapper.vm.foo).toBe('bar') +test('setProps demo', async () => { + const wrapper = mount(Foo) + + await wrapper.setProps({ foo: 'bar' }) + + expect(wrapper.vm.foo).toBe('bar') +}) ``` 你也可以传递一个 `propsData` 对象,这会用该对象来初始化 Vue 示例。 diff --git a/docs/zh/api/wrapper/setSelected.md b/docs/zh/api/wrapper/setSelected.md index f530d1fb6..0bc042020 100644 --- a/docs/zh/api/wrapper/setSelected.md +++ b/docs/zh/api/wrapper/setSelected.md @@ -8,10 +8,14 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) -const options = wrapper.find('select').findAll('option') +test('setSelected demo', async () => { + const wrapper = mount(Foo) + const options = wrapper.find('select').findAll('option') -options.at(1).setSelected() + await options.at(1).setSelected() + + expect(wrapper.find('option:checked').element.value).toBe('bar') +}) ``` - **注意:** diff --git a/docs/zh/api/wrapper/setValue.md b/docs/zh/api/wrapper/setValue.md index d3a2864d0..e21ec6e6d 100644 --- a/docs/zh/api/wrapper/setValue.md +++ b/docs/zh/api/wrapper/setValue.md @@ -12,17 +12,28 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' -const wrapper = mount(Foo) +test('setValue demo', async () => { + const wrapper = mount(Foo) -const textInput = wrapper.find('input[type="text"]') -textInput.setValue('some value') + const textInput = wrapper.find('input[type="text"]') + await textInput.setValue('some value') -const select = wrapper.find('select') -select.setValue('option value') + expect(wrapper.find('input[type="text"]').element.value).toBe('some value') -// requires + const multiselect = wrapper.find('select') + await multiselect.setValue(['value1', 'value3']) + + const selectedOptions = Array.from(multiselect.element.selectedOptions).map( + o => o.value + ) + expect(selectedOptions).toEqual(['value1', 'value3']) +}) ``` - **注意:** diff --git a/docs/zh/guides/common-tips.md b/docs/zh/guides/common-tips.md index 341b067ad..110fc0a96 100644 --- a/docs/zh/guides/common-tips.md +++ b/docs/zh/guides/common-tips.md @@ -151,9 +151,11 @@ describe('ParentComponent', () => { 你可以在包裹器上用 `setData` 或 `setProps` 方法直接操作组件状态: ```js -wrapper.setData({ count: 10 }) +it('manipulates state', async () => { + await wrapper.setData({ count: 10 }) -wrapper.setProps({ foo: 'bar' }) + await wrapper.setProps({ foo: 'bar' }) +}) ``` ### 仿造 Prop