diff --git a/docs/ru/README.md b/docs/ru/README.md index 9a76fc043..6a105f886 100644 --- a/docs/ru/README.md +++ b/docs/ru/README.md @@ -17,7 +17,7 @@ Vue Test Utils — официальная библиотека модульно * [mount](api/mount.md) * [shallowMount](api/shallowMount.md) * [render](api/render.md) - * [renderToString](api/renderToString.md) + * [renderToString](api/renderToString.md) * [Опции монтирования](api/options.md) - [context](api/options.md#context) - [slots](api/options.md#slots) @@ -28,6 +28,7 @@ Vue Test Utils — официальная библиотека модульно - [attachToDocument](api/options.md#attachtodocument) - [attrs](api/options.md#attrs) - [listeners](api/options.md#listeners) + - [parentComponent](api/options.md#parentComponent) - [provide](api/options.md#provide) - [sync](api/options.md#sync) - [другие опции](api/options.md#other-options) @@ -65,9 +66,11 @@ Vue Test Utils — официальная библиотека модульно * [is](api/wrapper-array/is.md) * [isEmpty](api/wrapper-array/isEmpty.md) * [isVueInstance](api/wrapper-array/isVueInstance.md) + * [setChecked](api/wrapper-array/setChecked.md) * [setData](api/wrapper-array/setData.md) * [setMethods](api/wrapper-array/setMethods.md) * [setProps](api/wrapper-array/setProps.md) + * [setValue](api/wrapper-array/setValue.md) * [trigger](api/wrapper-array/trigger.md) * [isVisible](api/wrapper-array/isVisible.md) * [Компоненты](api/components/) diff --git a/docs/ru/api/options.md b/docs/ru/api/options.md index 3c55ac7ea..cfb126f0f 100644 --- a/docs/ru/api/options.md +++ b/docs/ru/api/options.md @@ -11,6 +11,7 @@ - [`attachToDocument`](#attachtodocument) - [`attrs`](#attrs) - [`listeners`](#listeners) +- [`parentComponent`](#parentComponent) - [`provide`](#provide) - [`sync`](#sync) @@ -46,16 +47,23 @@ expect(wrapper.is(Component)).toBe(true) ```js import Foo from './Foo.vue' -import Bar from './Bar.vue' + +const bazComponent = { + name: 'baz-component', + template: '

baz

' +} const wrapper = shallowMount(Component, { slots: { - default: [Foo, Bar], + default: [Foo, '', 'text'], fooBar: Foo, // будет соответствовать `` foo: '
', - bar: 'bar' + bar: 'bar', + baz: bazComponent, + qux: '' } }) + expect(wrapper.find('div')).toBe(true) ``` @@ -183,6 +191,23 @@ expect(wrapper.vm.$route).toBeInstanceOf(Object) Устанавливает объект `$listeners` на экземпляре компонента. +## parentComponent + +- Тип: `Object` + +Компонент для использования в качестве родительского для смонтированного компонента. + +Пример: + +```js +import Foo from './Foo.vue' + +const wrapper = shallowMount(Component, { + parentComponent: Foo +}) +expect(wrapper.vm.$parent.name).toBe('foo') +``` + ## provide - Тип: `Object` diff --git a/docs/ru/api/wrapper-array/README.md b/docs/ru/api/wrapper-array/README.md index 12e697934..2d69b887f 100644 --- a/docs/ru/api/wrapper-array/README.md +++ b/docs/ru/api/wrapper-array/README.md @@ -21,7 +21,9 @@ !!!include(docs/ru/api/wrapper-array/is.md)!!! !!!include(docs/ru/api/wrapper-array/isEmpty.md)!!! !!!include(docs/ru/api/wrapper-array/isVueInstance.md)!!! +!!!include(docs/api/wrapper-array/setChecked.md)!!! !!!include(docs/ru/api/wrapper-array/setData.md)!!! !!!include(docs/ru/api/wrapper-array/setMethods.md)!!! !!!include(docs/ru/api/wrapper-array/setProps.md)!!! +!!!include(docs/api/wrapper-array/setValue.md)!!! !!!include(docs/ru/api/wrapper-array/trigger.md)!!! \ No newline at end of file diff --git a/docs/ru/api/wrapper-array/setChecked.md b/docs/ru/api/wrapper-array/setChecked.md new file mode 100644 index 000000000..0f93d1a30 --- /dev/null +++ b/docs/ru/api/wrapper-array/setChecked.md @@ -0,0 +1,38 @@ +## setChecked(checked) + +Этот метод — псевдоним следующего кода. + +```js +wrapperArray.wrappers.forEach(wrapper => wrapper.setChecked(checked)) +``` + +- **Принимает:** + - `{Boolean} checked (по умолчанию: true)` + +- **Пример:** + +```js +import { mount } from '@vue/test-utils' + +const wrapper = mount({ + data () { + return { + t1: false, + t2: '' + } + }, + template: ` +
+ + + +
` +}) + +const wrapperArray = wrapper.findAll('.foo') +expect(wrapper.vm.t1).to.equal(false) +expect(wrapper.vm.t2).to.equal('') +wrapperArray.setChecked() +expect(wrapper.vm.t1).to.equal(true) +expect(wrapper.vm.t2).to.equal('foo') +``` diff --git a/docs/ru/api/wrapper-array/setValue.md b/docs/ru/api/wrapper-array/setValue.md new file mode 100644 index 000000000..435f86804 --- /dev/null +++ b/docs/ru/api/wrapper-array/setValue.md @@ -0,0 +1,37 @@ +## setValue(value) + +Этот метод — псевдоним следующего кода. + +```js +wrapperArray.wrappers.forEach(wrapper => wrapper.setValue(value)) +``` + +- **Принимает:** + - `{any} value` + +- **Пример:** + +```js +import { mount } from '@vue/test-utils' + +const wrapper = mount({ + data () { + return { + t1: '', + t2: '' + } + }, + template: ` +
+ + +
` +}) + +const wrapperArray = wrapper.findAll('.foo') +expect(wrapper.vm.t1).to.equal('') +expect(wrapper.vm.t2).to.equal('') +wrapperArray.setValue('foo') +expect(wrapper.vm.t1).to.equal('foo') +expect(wrapper.vm.t2).to.equal('foo') +``` diff --git a/docs/ru/api/wrapper/setData.md b/docs/ru/api/wrapper/setData.md index f672fb89e..225281f0e 100644 --- a/docs/ru/api/wrapper/setData.md +++ b/docs/ru/api/wrapper/setData.md @@ -2,6 +2,8 @@ Устанавливает данные `Wrapper` `vm`. +setData работает путём рекурсивного вызова Vue.set. + **Обратите внимание, что `Wrapper` должен содержать экземпляр Vue.** setData работает путём слияния существующих свойств, за исключением массивов, которые перезаписываются. diff --git a/docs/ru/api/wrapper/setValue.md b/docs/ru/api/wrapper/setValue.md index 6d27c83da..bb77466c0 100644 --- a/docs/ru/api/wrapper/setValue.md +++ b/docs/ru/api/wrapper/setValue.md @@ -1,9 +1,9 @@ ## setValue(value) -Устанавливает значение ввода текстового элемента и обновляет связанные данные `v-model`. +Устанавливает значение элемента поле ввода текста или выпадающего списка и обновляет связанные данные `v-model`. - **Аргументы:** - - `{String} value` + - `{any} value` - **Пример:** @@ -12,15 +12,26 @@ import { mount } from '@vue/test-utils' import Foo from './Foo.vue' const wrapper = mount(Foo) + const input = wrapper.find('input[type="text"]') input.setValue('some value') + +const select = wrapper.find('select') +select.setValue('option value') ``` - **Примечание:** -`textInput.setValue(value)` — псевдоним следующего кода. + - `textInput.setValue(value)` — псевдоним следующего кода. -```js -textInput.element.value = value -textInput.trigger('input') -``` + ```js + textInput.element.value = value + textInput.trigger('input') + ``` + + - `select.setValue(value)` — псевдоним следующего кода. + + ```js + select.element.value = value + select.trigger('change') + ```