diff --git a/.circleci/config.yml b/.circleci/config.yml
index e1e9ff74c..dd43bdbd0 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -17,6 +17,9 @@ jobs:
steps:
- checkout
- *restore_node_modules
+ - run:
+ name: remove vuepress from dependencies
+ command: sed -i '/vuepress/ d' package.json
- run:
name: yarn --version
command: yarn --version
diff --git a/RELEASE_NOTE_1.0.0-beta.16.md b/RELEASE_NOTE_1.0.0-beta.16.md
deleted file mode 100644
index 6b0fd5b2c..000000000
--- a/RELEASE_NOTE_1.0.0-beta.16.md
+++ /dev/null
@@ -1,25 +0,0 @@
-
-# [1.0.0-beta.16](https://github.com/vuejs/vue-test-utils/compare/v1.0.0-beta.15...v1.0.0-beta.16) (2018-05-11)
-
-
-### Bug Fixes
-
-* add cheerio as dependency to server-test-utils ([f3dfb1e](https://github.com/vuejs/vue-test-utils/commit/f3dfb1e))
-* **types:** add sync to WrapperOptions ([#590](https://github.com/vuejs/vue-test-utils/issues/590)) ([570d80d](https://github.com/vuejs/vue-test-utils/commit/570d80d))
-* **types:** improve types ([#593](https://github.com/vuejs/vue-test-utils/issues/593)) ([14c40e6](https://github.com/vuejs/vue-test-utils/commit/14c40e6))
-* **types:** shallow -> shallowMount ([#587](https://github.com/vuejs/vue-test-utils/issues/587)) ([c3e013e](https://github.com/vuejs/vue-test-utils/commit/c3e013e))
-* automatically extend extended child components ([#595](https://github.com/vuejs/vue-test-utils/issues/595)) ([68a55f1](https://github.com/vuejs/vue-test-utils/commit/68a55f1))
-* function names ([#580](https://github.com/vuejs/vue-test-utils/issues/580)) ([d8485f5](https://github.com/vuejs/vue-test-utils/commit/d8485f5)), closes [#544](https://github.com/vuejs/vue-test-utils/issues/544) [#556](https://github.com/vuejs/vue-test-utils/issues/556)
-* only order deps if watcher exists ([#583](https://github.com/vuejs/vue-test-utils/issues/583)) ([5e02b92](https://github.com/vuejs/vue-test-utils/commit/5e02b92))
-* overwrites registered components for stubs ([#585](https://github.com/vuejs/vue-test-utils/issues/585)) ([33a6731](https://github.com/vuejs/vue-test-utils/commit/33a6731))
-* remove Array.find ([#572](https://github.com/vuejs/vue-test-utils/issues/572)) ([01686a0](https://github.com/vuejs/vue-test-utils/commit/01686a0)), closes [#499](https://github.com/vuejs/vue-test-utils/issues/499)
-* unordered watchers fix ([#584](https://github.com/vuejs/vue-test-utils/issues/584)) ([db8f393](https://github.com/vuejs/vue-test-utils/commit/db8f393))
-
-
-### Features
-
-* add `provide` to the global config. ([#555](https://github.com/vuejs/vue-test-utils/issues/555)) ([807d3c8](https://github.com/vuejs/vue-test-utils/commit/807d3c8))
-* support merging in setData ([#565](https://github.com/vuejs/vue-test-utils/issues/565)) ([878bccd](https://github.com/vuejs/vue-test-utils/commit/878bccd)), closes [#563](https://github.com/vuejs/vue-test-utils/issues/563)
-
-
-
diff --git a/docs/.vuepress/_redirects b/docs/.vuepress/_redirects
new file mode 100644
index 000000000..15bc2cc1a
--- /dev/null
+++ b/docs/.vuepress/_redirects
@@ -0,0 +1,26 @@
+/en/* /:splat
+
+/api/mount /api/#mount
+/api/shallowMount /api/#shallowmount
+/api/createLocalVue /api/#createlocalvue
+/api/config /api/#config
+
+/api/wrapper/* /api/wrapper.html/#:splat
+/api/wrapper-array/* /api/wrapper-array.html/#:splat
+
+/ja/api/mount /ja/api/#mount
+/ja/api/shallowMount /ja/api/#shallowmount
+/ja/api/createLocalVue /ja/api/#createlocalvue
+/ja/api/config /ja/api/#config
+
+/ja/api/wrapper/* /ja/api/wrapper.html/#:splat
+/ja/api/wrapper/* /ja/api/wrapper.html/#:splat
+/ja/api/wrapper-array/* /ja/api/wrapper-array.html/#:splat
+
+/zh/api/mount /zh/api/#mount
+/zh/api/shallowMount /zh/api/#shallowmount
+/zh/api/createLocalVue /zh/api/#createlocalvue
+/zh/api/config /zh/api/#config
+
+/zh/api/wrapper/* /zh/api/wrapper.html/#:splat
+/zh/api/wrapper-array/* /zh/api/wrapper-array.html/#:splat
\ No newline at end of file
diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js
new file mode 100644
index 000000000..2bfaa5445
--- /dev/null
+++ b/docs/.vuepress/config.js
@@ -0,0 +1,105 @@
+module.exports = {
+ locales: {
+ '/': {
+ lang: 'en-US',
+ title: 'Vue Test Utils',
+ description: 'Utilities for testing Vue components'
+ },
+ '/ja/': {
+ lang: 'ja',
+ title: 'Vue Test Utils',
+ description: 'Vue コンポーネントをテストするためのユーティリティ'
+ },
+ '/zh/': {
+ lang: 'zh-CN',
+ title: 'Vue Test Utils',
+ description: '测试 Vue 组件的实用工具'
+ }
+ },
+ serviceWorker: true,
+ theme: 'vue',
+ themeConfig: {
+ repo: 'vuejs/vue-test-utils',
+ docsDir: 'docs',
+ locales: {
+ '/': {
+ label: 'English',
+ selectText: 'Languages',
+ editLinkText: 'Edit this page on GitHub',
+ nav: [
+ {
+ text: 'API',
+ link: '/api/'
+ },
+ {
+ text: 'Guides',
+ link: '/guides/'
+ }
+ ],
+ sidebar: [
+ '/',
+ '/guides/',
+ '/api/',
+ '/api/wrapper/',
+ '/api/wrapper-array/',
+ '/api/options',
+ '/api/components/'
+ ]
+ },
+ '/zh/': {
+ label: '简体中文',
+ selectText: '选择语言',
+ editLinkText: '在 GitHub 上编辑此页',
+ nav: [
+ {
+ text: 'API',
+ link: '/zh/api/'
+ },
+ {
+ text: '教程',
+ link: '/zh/guides/'
+ }
+ ],
+ sidebar: [
+ '/zh/',
+ '/zh/guides/',
+ '/zh/api/',
+ '/zh/api/wrapper/',
+ '/zh/api/wrapper-array/',
+ '/zh/api/options',
+ '/zh/api/components/'
+ ]
+ },
+ '/ja/': {
+ label: '日本語',
+ selectText: '言語',
+ editLinkText: 'GitHub 上でこのページを編集する',
+ nav: [
+ {
+ text: 'API',
+ link: '/ja/api/'
+ },
+ {
+ text: 'ガイド',
+ link: '/ja/guides/'
+ }
+ ],
+ sidebar: [
+ '/ja/',
+ '/ja/guides/',
+ '/ja/api/',
+ '/ja/api/wrapper/',
+ '/ja/api/wrapper-array/',
+ '/ja/api/options',
+ '/ja/api/components/'
+ ]
+ }
+ }
+ },
+ markdown: {
+ config: md => {
+ // use more markdown-it plugins!
+ md.use(require('markdown-it-include'))
+ }
+ }
+}
\ No newline at end of file
diff --git a/docs/LANGS.md b/docs/LANGS.md
deleted file mode 100644
index 2860c7c8d..000000000
--- a/docs/LANGS.md
+++ /dev/null
@@ -1,7 +0,0 @@
-* [English](en/)
-* [Français](fr/)
-* [日本語](ja/)
-* [简体中文](zh-cn/)
-* [Portuguese (Brazil)](pt-br/)
-* [Русский](ru/)
-* [한국어](kr/)
diff --git a/docs/en/README.md b/docs/README.md
similarity index 96%
rename from docs/en/README.md
rename to docs/README.md
index 69f82a5a5..8ebb83de8 100644
--- a/docs/en/README.md
+++ b/docs/README.md
@@ -1,11 +1,9 @@
-# Vue Test Utils
+# Introduction
Vue Test Utils is the official unit testing utility library for Vue.js.
-## Table of Contents
-
-* [Guides](guides/README.md)
- * [Getting Started](guides/getting-started.md)
+* [Guides](./guides/README.md)
+ * [Getting Started](./guides/getting-started.md)
* [Common Tips](guides/common-tips.md)
* [Mouse, Key and other DOM Events](guides/dom-events.md)
* [Choosing a test runner](guides/choosing-a-test-runner.md)
diff --git a/docs/api/README.md b/docs/api/README.md
new file mode 100644
index 000000000..d081f89fb
--- /dev/null
+++ b/docs/api/README.md
@@ -0,0 +1,9 @@
+# API
+
+!!!include(docs/api/mount.md)!!!
+!!!include(docs/api/shallowMount.md)!!!
+!!!include(docs/api/render.md)!!!
+!!!include(docs/api/renderToString.md)!!!
+!!!include(docs/api/selectors.md)!!!
+!!!include(docs/api/createLocalVue.md)!!!
+!!!include(docs/api/config.md)!!!
\ No newline at end of file
diff --git a/docs/api/components/README.md b/docs/api/components/README.md
new file mode 100644
index 000000000..f049bacb5
--- /dev/null
+++ b/docs/api/components/README.md
@@ -0,0 +1,7 @@
+# Components
+
+Vue Test Utils includes utility components you can use to stub components.
+
+!!!include(docs/api/components/RouterLinkStub.md)!!!
+!!!include(docs/api/components/TransitionStub.md)!!!
+!!!include(docs/api/components/TransitionGroupStub.md)!!!
\ No newline at end of file
diff --git a/docs/en/api/components/RouterLinkStub.md b/docs/api/components/RouterLinkStub.md
similarity index 95%
rename from docs/en/api/components/RouterLinkStub.md
rename to docs/api/components/RouterLinkStub.md
index ac5e8ab06..344c3c35a 100644
--- a/docs/en/api/components/RouterLinkStub.md
+++ b/docs/api/components/RouterLinkStub.md
@@ -1,4 +1,4 @@
-# `RouterLinkStub`
+## RouterLinkStub
A component to stub the Vue Router `router-link` component.
diff --git a/docs/en/api/components/TransitionGroupStub.md b/docs/api/components/TransitionGroupStub.md
similarity index 96%
rename from docs/en/api/components/TransitionGroupStub.md
rename to docs/api/components/TransitionGroupStub.md
index 95e1f0c4b..1f16ff714 100644
--- a/docs/en/api/components/TransitionGroupStub.md
+++ b/docs/api/components/TransitionGroupStub.md
@@ -1,4 +1,4 @@
-# `TransitionGroupStub`
+## TransitionGroupStub
A component to stub the `transition-group` component. Instead of performing transitions asynchronously, it returns the child components synchronously.
@@ -28,4 +28,4 @@ mount(Component, {
'transition-group': TransitionGroupStub
}
})
-```
+```
\ No newline at end of file
diff --git a/docs/en/api/components/TransitionStub.md b/docs/api/components/TransitionStub.md
similarity index 97%
rename from docs/en/api/components/TransitionStub.md
rename to docs/api/components/TransitionStub.md
index 9370ce65e..ae4da6502 100644
--- a/docs/en/api/components/TransitionStub.md
+++ b/docs/api/components/TransitionStub.md
@@ -1,4 +1,4 @@
-# `TransitionStub`
+## TransitionStub
A component to stub the `transition` component. Instead of performing transitions asynchronously, it returns the child component synchronously.
diff --git a/docs/en/api/config.md b/docs/api/config.md
similarity index 98%
rename from docs/en/api/config.md
rename to docs/api/config.md
index aacec60fb..3b33cf758 100644
--- a/docs/en/api/config.md
+++ b/docs/api/config.md
@@ -1,8 +1,8 @@
-# Config
+## Config
Vue Test Utils includes a config object to defined options used by Vue Test Utils.
-## Vue Test Utils Config Options
+### Vue Test Utils Config Options
### `stubs`
diff --git a/docs/en/api/createLocalVue.md b/docs/api/createLocalVue.md
similarity index 96%
rename from docs/en/api/createLocalVue.md
rename to docs/api/createLocalVue.md
index ffbeb7afc..c0a019c8b 100644
--- a/docs/en/api/createLocalVue.md
+++ b/docs/api/createLocalVue.md
@@ -1,4 +1,4 @@
-# `createLocalVue()`
+## createLocalVue()
- **Returns:**
- `{Component}`
diff --git a/docs/en/api/mount.md b/docs/api/mount.md
similarity index 98%
rename from docs/en/api/mount.md
rename to docs/api/mount.md
index bb5d3c3d0..d14c5a461 100644
--- a/docs/en/api/mount.md
+++ b/docs/api/mount.md
@@ -1,4 +1,4 @@
-# `mount(component [, options])`
+## mount()
- **Arguments:**
diff --git a/docs/en/api/options.md b/docs/api/options.md
similarity index 95%
rename from docs/en/api/options.md
rename to docs/api/options.md
index fd9f0a345..4191f86b5 100644
--- a/docs/en/api/options.md
+++ b/docs/api/options.md
@@ -2,8 +2,6 @@
Options for `mount` and `shallowMount`. The options object can contain both Vue Test Utils mounting options and other options.
-## Vue Test Utils Specific Mounting Options
-
- [`context`](#context)
- [`slots`](#slots)
- [`scopedSlots`](#scopedslots)
@@ -16,7 +14,7 @@ Options for `mount` and `shallowMount`. The options object can contain both Vue
- [`provide`](#provide)
- [`sync`](#sync)
-### `context`
+## context
- type: `Object`
@@ -38,7 +36,7 @@ const wrapper = mount(Component, {
expect(wrapper.is(Component)).toBe(true)
```
-### `slots`
+## slots
- type: `{ [name: string]: Array|Component|string }`
@@ -61,7 +59,7 @@ const wrapper = shallowMount(Component, {
expect(wrapper.find('div')).toBe(true)
```
-#### Passing text
+### Passing text
You can pass text to `slots`.
There is a limitation to this.
@@ -69,7 +67,7 @@ There is a limitation to this.
This does not support PhantomJS.
You can use [Puppeteer](https://github.com/karma-runner/karma-chrome-launcher#headless-chromium-with-puppeteer) as an alternative.
-### `scopedSlots`
+## scopedSlots
- type: `{ [name: string]: string }`
@@ -95,7 +93,7 @@ const wrapper = shallowMount(Component, {
expect(wrapper.find('#fooWrapper').html()).toBe('
0,text1
1,text2
2,text3
')
```
-### `stubs`
+## stubs
- type: `{ [name: string]: Component | boolean } | Array`
@@ -120,7 +118,7 @@ shallowMount(Component, {
})
```
-### `mocks`
+## mocks
- type: `Object`
@@ -138,7 +136,7 @@ const wrapper = shallowMount(Component, {
expect(wrapper.vm.$route.path).toBe($route.path)
```
-### `localVue`
+## localVue
- type: `Vue`
@@ -169,32 +167,32 @@ const wrapper = mount(Component, {
expect(wrapper.vm.$route).toBeInstanceOf(Object)
```
-### `attachToDocument`
+## attachToDocument
- type: `boolean`
- default: `false`
Component will be attached to DOM when rendered if set to `true`.
-### `attrs`
+## attrs
- type: `Object`
Set the component instance's `$attrs` object.
-### `listeners`
+## listeners
- type: `Object`
Set the component instance's `$listeners` object.
-### `provide`
+## provide
- type: `Object`
Pass properties for components to use in injection. See [provide/inject](https://vuejs.org/v2/api/#provide-inject).
-### `sync`
+## sync
- type: `boolean`
- default: `true`
diff --git a/docs/en/api/render.md b/docs/api/render.md
similarity index 98%
rename from docs/en/api/render.md
rename to docs/api/render.md
index 00a77d98b..ca884a4ed 100644
--- a/docs/en/api/render.md
+++ b/docs/api/render.md
@@ -1,4 +1,4 @@
-# `render(component [, options])`
+## render()
- **Arguments:**
diff --git a/docs/en/api/renderToString.md b/docs/api/renderToString.md
similarity index 98%
rename from docs/en/api/renderToString.md
rename to docs/api/renderToString.md
index df789cf3d..49245cfa9 100644
--- a/docs/en/api/renderToString.md
+++ b/docs/api/renderToString.md
@@ -1,4 +1,4 @@
-# `renderToString(component [, options])`
+## renderToString()
- **Arguments:**
diff --git a/docs/en/api/selectors.md b/docs/api/selectors.md
similarity index 93%
rename from docs/en/api/selectors.md
rename to docs/api/selectors.md
index c1b368621..42e307f45 100644
--- a/docs/en/api/selectors.md
+++ b/docs/api/selectors.md
@@ -1,8 +1,8 @@
-# Selectors
+## Selectors
A lot of methods take a selector as an argument. A selector can either be a CSS selector, a Vue component, or a find option object.
-## CSS Selectors
+### CSS Selectors
Mount handles any valid CSS selector:
@@ -19,7 +19,7 @@ You can also use combinators:
- adjacent sibling selector (`div + .foo`)
- general sibling selector (`div ~ .foo`)
-## Vue Components
+###Vue Components
Vue components are also valid selectors.
@@ -39,9 +39,9 @@ const wrapper = shallowMount(Foo)
expect(wrapper.is(Foo)).toBe(true)
```
-## Find Option Object
+###Find Option Object
-### Name
+#### Name
Using a find option object, Vue Test Utils allows for selecting elements by a `name` of component on wrapper components.
@@ -50,7 +50,7 @@ const buttonWrapper = wrapper.find({ name: 'my-button' })
buttonWrapper.trigger('click')
```
-### Ref
+#### Ref
Using a find option object, Vue Test Utils allows for selecting elements by `$ref` on wrapper components.
diff --git a/docs/en/api/shallowMount.md b/docs/api/shallowMount.md
similarity index 98%
rename from docs/en/api/shallowMount.md
rename to docs/api/shallowMount.md
index 0958769d6..5117bd222 100644
--- a/docs/en/api/shallowMount.md
+++ b/docs/api/shallowMount.md
@@ -1,4 +1,4 @@
-# `shallowMount(component [, options])`
+## shallowMount()
- **Arguments:**
diff --git a/docs/api/wrapper-array/README.md b/docs/api/wrapper-array/README.md
new file mode 100644
index 000000000..d3ee35c53
--- /dev/null
+++ b/docs/api/wrapper-array/README.md
@@ -0,0 +1,27 @@
+# WrapperArray
+
+A `WrapperArray` is an object that contains an array of [`Wrappers`](../wrapper/README.md), and methods to test the `Wrappers`.
+
+## Properties
+
+### `wrappers`
+
+`array`: the `Wrappers` contained in the `WrapperArray`
+
+### `length`
+
+`number`: the number of `Wrappers` contained in the `WrapperArray`
+
+## Methods
+
+!!!include(docs/api/wrapper-array/at.md)!!!
+!!!include(docs/api/wrapper-array/contains.md)!!!
+!!!include(docs/api/wrapper-array/destroy.md)!!!
+!!!include(docs/api/wrapper-array/filter.md)!!!
+!!!include(docs/api/wrapper-array/is.md)!!!
+!!!include(docs/api/wrapper-array/isEmpty.md)!!!
+!!!include(docs/api/wrapper-array/isVueInstance.md)!!!
+!!!include(docs/api/wrapper-array/setData.md)!!!
+!!!include(docs/api/wrapper-array/setMethods.md)!!!
+!!!include(docs/api/wrapper-array/setProps.md)!!!
+!!!include(docs/api/wrapper-array/trigger.md)!!!
\ No newline at end of file
diff --git a/docs/en/api/wrapper-array/at.md b/docs/api/wrapper-array/at.md
similarity index 96%
rename from docs/en/api/wrapper-array/at.md
rename to docs/api/wrapper-array/at.md
index 23b63ddf0..d8b76a3c7 100644
--- a/docs/en/api/wrapper-array/at.md
+++ b/docs/api/wrapper-array/at.md
@@ -1,4 +1,4 @@
-# `at(index)`
+## at(index)
Returns `Wrapper` at `index` passed. Uses zero based numbering (i.e. first item is at index 0).
diff --git a/docs/en/api/wrapper-array/contains.md b/docs/api/wrapper-array/contains.md
similarity index 95%
rename from docs/en/api/wrapper-array/contains.md
rename to docs/api/wrapper-array/contains.md
index 6f7037546..a19ac4566 100644
--- a/docs/en/api/wrapper-array/contains.md
+++ b/docs/api/wrapper-array/contains.md
@@ -1,4 +1,4 @@
-# `contains(selector)`
+### contains(selector)
Assert every wrapper in `WrapperArray` contains selector.
diff --git a/docs/en/api/wrapper-array/destroy.md b/docs/api/wrapper-array/destroy.md
similarity index 95%
rename from docs/en/api/wrapper-array/destroy.md
rename to docs/api/wrapper-array/destroy.md
index 8b817f735..2fe69172a 100644
--- a/docs/en/api/wrapper-array/destroy.md
+++ b/docs/api/wrapper-array/destroy.md
@@ -1,4 +1,4 @@
-# `destroy()`
+## destroy()
Destroys each Vue `Wrapper` in `WrapperArray`.
diff --git a/docs/en/api/wrapper-array/filter.md b/docs/api/wrapper-array/filter.md
similarity index 96%
rename from docs/en/api/wrapper-array/filter.md
rename to docs/api/wrapper-array/filter.md
index f2985f060..ba8cb9004 100644
--- a/docs/en/api/wrapper-array/filter.md
+++ b/docs/api/wrapper-array/filter.md
@@ -1,4 +1,4 @@
-# `filter(predicate)`
+## filter(predicate)
Filter `WrapperArray` with a predicate function on `Wrapper` objects.
diff --git a/docs/en/api/wrapper-array/is.md b/docs/api/wrapper-array/is.md
similarity index 95%
rename from docs/en/api/wrapper-array/is.md
rename to docs/api/wrapper-array/is.md
index 62ec04dfc..adc203a34 100644
--- a/docs/en/api/wrapper-array/is.md
+++ b/docs/api/wrapper-array/is.md
@@ -1,4 +1,4 @@
-# `is(selector)`
+## is(selector)
Assert every `Wrapper` in `WrapperArray` DOM node or `vm` matches [selector](../selectors.md).
diff --git a/docs/en/api/wrapper-array/isEmpty.md b/docs/api/wrapper-array/isEmpty.md
similarity index 95%
rename from docs/en/api/wrapper-array/isEmpty.md
rename to docs/api/wrapper-array/isEmpty.md
index 1d7899688..1909ef070 100644
--- a/docs/en/api/wrapper-array/isEmpty.md
+++ b/docs/api/wrapper-array/isEmpty.md
@@ -1,4 +1,4 @@
-# `isEmpty()`
+## isEmpty()
Assert every `Wrapper` in `WrapperArray` does not contain child node.
diff --git a/docs/en/api/wrapper-array/isVisible.md b/docs/api/wrapper-array/isVisible.md
similarity index 97%
rename from docs/en/api/wrapper-array/isVisible.md
rename to docs/api/wrapper-array/isVisible.md
index 04a01bfdf..0229eb6fb 100644
--- a/docs/en/api/wrapper-array/isVisible.md
+++ b/docs/api/wrapper-array/isVisible.md
@@ -1,4 +1,4 @@
-# `isVisible()`
+## isVisible()
Assert every `Wrapper` in `WrapperArray` is visible.
diff --git a/docs/en/api/wrapper-array/isVueInstance.md b/docs/api/wrapper-array/isVueInstance.md
similarity index 94%
rename from docs/en/api/wrapper-array/isVueInstance.md
rename to docs/api/wrapper-array/isVueInstance.md
index e5cdff317..4a7eddc4f 100644
--- a/docs/en/api/wrapper-array/isVueInstance.md
+++ b/docs/api/wrapper-array/isVueInstance.md
@@ -1,4 +1,4 @@
-# `isVueInstance()`
+## isVueInstance()
Assert every `Wrapper` in `WrapperArray` is Vue instance.
diff --git a/docs/en/api/wrapper-array/setData.md b/docs/api/wrapper-array/setData.md
similarity index 96%
rename from docs/en/api/wrapper-array/setData.md
rename to docs/api/wrapper-array/setData.md
index 63951ee36..be3dd2b3d 100644
--- a/docs/en/api/wrapper-array/setData.md
+++ b/docs/api/wrapper-array/setData.md
@@ -1,4 +1,4 @@
-# `setData(data)`
+## setData(data)
Sets `Wrapper` `vm` data and forces update on each `Wrapper` in `WrapperArray`.
diff --git a/docs/en/api/wrapper-array/setMethods.md b/docs/api/wrapper-array/setMethods.md
similarity index 95%
rename from docs/en/api/wrapper-array/setMethods.md
rename to docs/api/wrapper-array/setMethods.md
index e74b6b5f1..eb46e75fd 100644
--- a/docs/en/api/wrapper-array/setMethods.md
+++ b/docs/api/wrapper-array/setMethods.md
@@ -1,4 +1,4 @@
-# `setMethods(methods)`
+## setMethods(methods)
Sets `Wrapper` `vm` methods and forces update on each `Wrapper` in `WrapperArray`.
diff --git a/docs/en/api/wrapper-array/setProps.md b/docs/api/wrapper-array/setProps.md
similarity index 95%
rename from docs/en/api/wrapper-array/setProps.md
rename to docs/api/wrapper-array/setProps.md
index 080225cd9..391aebc5d 100644
--- a/docs/en/api/wrapper-array/setProps.md
+++ b/docs/api/wrapper-array/setProps.md
@@ -1,4 +1,4 @@
-# `setProps(props)`
+## setProps(props)
Sets `Wrapper` `vm` props and forces update on each `Wrapper` in `WrapperArray`.
diff --git a/docs/en/api/wrapper-array/trigger.md b/docs/api/wrapper-array/trigger.md
similarity index 93%
rename from docs/en/api/wrapper-array/trigger.md
rename to docs/api/wrapper-array/trigger.md
index 07891b3c8..132660516 100644
--- a/docs/en/api/wrapper-array/trigger.md
+++ b/docs/api/wrapper-array/trigger.md
@@ -1,4 +1,4 @@
-# `trigger(eventType [, options ])`
+## trigger(eventType [, options ])
Triggers an event on every `Wrapper` in the `WrapperArray` DOM node.
diff --git a/docs/api/wrapper/README.md b/docs/api/wrapper/README.md
new file mode 100644
index 000000000..4e1269173
--- /dev/null
+++ b/docs/api/wrapper/README.md
@@ -0,0 +1,50 @@
+# Wrapper
+
+Vue Test Utils is a wrapper based API.
+
+A `Wrapper` is an object that contains a mounted component or vnode and methods to test the component or vnode.
+
+## Properties
+
+### `vm`
+
+`Component`: This is the `Vue` instance. You can access all the [instance methods and properties of a vm](https://vuejs.org/v2/api/#Instance-Properties) with `wrapper.vm`. This only exists on Vue component wrappers
+
+### `element`:
+
+`HTMLElement`: the root DOM node of the wrapper
+
+### `options`:
+`Object`: Object containing Vue Test Utils options passed to `mount` or `shallowMount`
+
+#### `options.attachedToDocument`:
+
+`Boolean`: True if `attachedToDocument` was passed to `mount` or `shallowMount`
+
+#### `options.sync`
+
+`Boolean`: True if `sync` was not passed as `false` to `mount` or `shallowMount`
+
+## Methods
+
+!!!include(docs/api/wrapper/attributes.md)!!!
+!!!include(docs/api/wrapper/classes.md)!!!
+!!!include(docs/api/wrapper/contains.md)!!!
+!!!include(docs/api/wrapper/destroy.md)!!!
+!!!include(docs/api/wrapper/emitted.md)!!!
+!!!include(docs/api/wrapper/emittedByOrder.md)!!!
+!!!include(docs/api/wrapper/exists.md)!!!
+!!!include(docs/api/wrapper/find.md)!!!
+!!!include(docs/api/wrapper/findAll.md)!!!
+!!!include(docs/api/wrapper/html.md)!!!
+!!!include(docs/api/wrapper/is.md)!!!
+!!!include(docs/api/wrapper/isEmpty.md)!!!
+!!!include(docs/api/wrapper/isVisible.md)!!!
+!!!include(docs/api/wrapper/isVueInstance.md)!!!
+!!!include(docs/api/wrapper/name.md)!!!
+!!!include(docs/api/wrapper/props.md)!!!
+!!!include(docs/api/wrapper/setData.md)!!!
+!!!include(docs/api/wrapper/setMethods.md)!!!
+!!!include(docs/api/wrapper/setProps.md)!!!
+!!!include(docs/api/wrapper/text.md)!!!
+!!!include(docs/api/wrapper/trigger.md)!!!
diff --git a/docs/en/api/wrapper/attributes.md b/docs/api/wrapper/attributes.md
similarity index 93%
rename from docs/en/api/wrapper/attributes.md
rename to docs/api/wrapper/attributes.md
index 84841a7ab..f8613f5ff 100644
--- a/docs/en/api/wrapper/attributes.md
+++ b/docs/api/wrapper/attributes.md
@@ -1,4 +1,4 @@
-# `attributes()`
+### attributes()
Returns `Wrapper` DOM node attribute object.
diff --git a/docs/en/api/wrapper/classes.md b/docs/api/wrapper/classes.md
similarity index 95%
rename from docs/en/api/wrapper/classes.md
rename to docs/api/wrapper/classes.md
index 3b1ea03b2..c37f3e192 100644
--- a/docs/en/api/wrapper/classes.md
+++ b/docs/api/wrapper/classes.md
@@ -1,4 +1,4 @@
-# `classes()`
+## classes()
Return `Wrapper` DOM node classes.
diff --git a/docs/en/api/wrapper/contains.md b/docs/api/wrapper/contains.md
similarity index 95%
rename from docs/en/api/wrapper/contains.md
rename to docs/api/wrapper/contains.md
index fe1a3089f..1f96b2fab 100644
--- a/docs/en/api/wrapper/contains.md
+++ b/docs/api/wrapper/contains.md
@@ -1,4 +1,4 @@
-# `contains(selector)`
+## contains(selector)
Assert `Wrapper` contains an element or component matching [selector](../selectors.md).
diff --git a/docs/en/api/wrapper/destroy.md b/docs/api/wrapper/destroy.md
similarity index 94%
rename from docs/en/api/wrapper/destroy.md
rename to docs/api/wrapper/destroy.md
index e8a4ca9a0..7e0dca260 100644
--- a/docs/en/api/wrapper/destroy.md
+++ b/docs/api/wrapper/destroy.md
@@ -1,4 +1,4 @@
-# `destroy()`
+## destroy()
Destroys a Vue component instance.
diff --git a/docs/en/api/wrapper/emitted.md b/docs/api/wrapper/emitted.md
similarity index 86%
rename from docs/en/api/wrapper/emitted.md
rename to docs/api/wrapper/emitted.md
index 30593d635..0ae5b2d67 100644
--- a/docs/en/api/wrapper/emitted.md
+++ b/docs/api/wrapper/emitted.md
@@ -1,4 +1,4 @@
-# `emitted()`
+## emitted()
Return an object containing custom events emitted by the `Wrapper` `vm`.
@@ -44,7 +44,7 @@ expect(wrapper.emitted('foo').length).toBe(2)
expect(wrapper.emitted('foo')[1]).toEqual([123])
```
-The `.emitted()` method returns the same object every time it is called, not a new one, and so the object will update when new events are fired:
+The `.emitted() method returns the same object every time it is called, not a new one, and so the object will update when new events are fired:
```js
const emitted = wrapper.emitted()
diff --git a/docs/en/api/wrapper/emittedByOrder.md b/docs/api/wrapper/emittedByOrder.md
similarity index 96%
rename from docs/en/api/wrapper/emittedByOrder.md
rename to docs/api/wrapper/emittedByOrder.md
index 4e3cf4f6d..0849d7df7 100644
--- a/docs/en/api/wrapper/emittedByOrder.md
+++ b/docs/api/wrapper/emittedByOrder.md
@@ -1,4 +1,4 @@
-# `emittedByOrder()`
+## emittedByOrder()
Return an Array containing custom events emitted by the `Wrapper` `vm`.
diff --git a/docs/en/api/wrapper/exists.md b/docs/api/wrapper/exists.md
similarity index 97%
rename from docs/en/api/wrapper/exists.md
rename to docs/api/wrapper/exists.md
index df58cbd8f..891d60ceb 100644
--- a/docs/en/api/wrapper/exists.md
+++ b/docs/api/wrapper/exists.md
@@ -1,4 +1,4 @@
-# `exists()`
+## exists()
Assert `Wrapper` or `WrapperArray` exists.
diff --git a/docs/en/api/wrapper/find.md b/docs/api/wrapper/find.md
similarity index 97%
rename from docs/en/api/wrapper/find.md
rename to docs/api/wrapper/find.md
index b606ea4d7..37ba2a1fe 100644
--- a/docs/en/api/wrapper/find.md
+++ b/docs/api/wrapper/find.md
@@ -1,4 +1,4 @@
-# `find(selector)`
+## find(selector)
Returns [`Wrapper`](README.md) of first DOM node or Vue component matching selector.
diff --git a/docs/en/api/wrapper/findAll.md b/docs/api/wrapper/findAll.md
similarity index 95%
rename from docs/en/api/wrapper/findAll.md
rename to docs/api/wrapper/findAll.md
index 321fad5ee..7c320c1c0 100644
--- a/docs/en/api/wrapper/findAll.md
+++ b/docs/api/wrapper/findAll.md
@@ -1,4 +1,4 @@
-# `findAll(selector)`
+## findAll(selector)
Returns a [`WrapperArray`](../wrapper-array/README.md).
diff --git a/docs/en/api/wrapper/html.md b/docs/api/wrapper/html.md
similarity index 95%
rename from docs/en/api/wrapper/html.md
rename to docs/api/wrapper/html.md
index 92aadb5a3..439fc4e39 100644
--- a/docs/en/api/wrapper/html.md
+++ b/docs/api/wrapper/html.md
@@ -1,4 +1,4 @@
-# `html()`
+## html()
Returns HTML of `Wrapper` DOM node as a string.
diff --git a/docs/en/api/wrapper/is.md b/docs/api/wrapper/is.md
similarity index 94%
rename from docs/en/api/wrapper/is.md
rename to docs/api/wrapper/is.md
index b7a582d9a..aa689a21f 100644
--- a/docs/en/api/wrapper/is.md
+++ b/docs/api/wrapper/is.md
@@ -1,4 +1,4 @@
-# `is(selector)`
+## is(selector)
Assert `Wrapper` DOM node or `vm` matches [selector](../selectors.md).
diff --git a/docs/en/api/wrapper/isEmpty.md b/docs/api/wrapper/isEmpty.md
similarity index 94%
rename from docs/en/api/wrapper/isEmpty.md
rename to docs/api/wrapper/isEmpty.md
index ac7c12ed0..f24a543c2 100644
--- a/docs/en/api/wrapper/isEmpty.md
+++ b/docs/api/wrapper/isEmpty.md
@@ -1,4 +1,4 @@
-# `isEmpty()`
+## isEmpty()
Assert `Wrapper` does not contain child node.
diff --git a/docs/en/api/wrapper/isVisible.md b/docs/api/wrapper/isVisible.md
similarity index 96%
rename from docs/en/api/wrapper/isVisible.md
rename to docs/api/wrapper/isVisible.md
index da66bb5e8..80e3ec091 100644
--- a/docs/en/api/wrapper/isVisible.md
+++ b/docs/api/wrapper/isVisible.md
@@ -1,4 +1,4 @@
-# `isVisible()`
+## isVisible()
Assert `Wrapper` is visible.
diff --git a/docs/en/api/wrapper/isVueInstance.md b/docs/api/wrapper/isVueInstance.md
similarity index 92%
rename from docs/en/api/wrapper/isVueInstance.md
rename to docs/api/wrapper/isVueInstance.md
index 5cfcf6afb..0f0329c22 100644
--- a/docs/en/api/wrapper/isVueInstance.md
+++ b/docs/api/wrapper/isVueInstance.md
@@ -1,4 +1,4 @@
-# `isVueInstance()`
+## isVueInstance()
Assert `Wrapper` is Vue instance.
diff --git a/docs/en/api/wrapper/name.md b/docs/api/wrapper/name.md
similarity index 97%
rename from docs/en/api/wrapper/name.md
rename to docs/api/wrapper/name.md
index ad93ecf5c..4bdb1ab11 100644
--- a/docs/en/api/wrapper/name.md
+++ b/docs/api/wrapper/name.md
@@ -1,4 +1,4 @@
-# `name()`
+## name()
Returns component name if `Wrapper` contains a Vue instance, or the tag name of `Wrapper` DOM node if `Wrapper` does not contain a Vue instance.
diff --git a/docs/en/api/wrapper/props.md b/docs/api/wrapper/props.md
similarity index 96%
rename from docs/en/api/wrapper/props.md
rename to docs/api/wrapper/props.md
index a4989b62c..eee2d8219 100644
--- a/docs/en/api/wrapper/props.md
+++ b/docs/api/wrapper/props.md
@@ -1,4 +1,4 @@
-# `props()`
+## props()
Return `Wrapper` `vm` props object.
diff --git a/docs/en/api/wrapper/setData.md b/docs/api/wrapper/setData.md
similarity index 94%
rename from docs/en/api/wrapper/setData.md
rename to docs/api/wrapper/setData.md
index 2c87ba646..817050b00 100644
--- a/docs/en/api/wrapper/setData.md
+++ b/docs/api/wrapper/setData.md
@@ -1,4 +1,4 @@
-# `setData(data)`
+## setData(data)
Sets `Wrapper` `vm` data and forces update.
diff --git a/docs/en/api/wrapper/setMethods.md b/docs/api/wrapper/setMethods.md
similarity index 95%
rename from docs/en/api/wrapper/setMethods.md
rename to docs/api/wrapper/setMethods.md
index 20b682185..cdc04713b 100644
--- a/docs/en/api/wrapper/setMethods.md
+++ b/docs/api/wrapper/setMethods.md
@@ -1,4 +1,4 @@
-# `setMethods(methods)`
+## setMethods(methods)
Sets `Wrapper` `vm` methods and forces update.
diff --git a/docs/en/api/wrapper/setProps.md b/docs/api/wrapper/setProps.md
similarity index 97%
rename from docs/en/api/wrapper/setProps.md
rename to docs/api/wrapper/setProps.md
index 9b601e696..60a39e472 100644
--- a/docs/en/api/wrapper/setProps.md
+++ b/docs/api/wrapper/setProps.md
@@ -1,4 +1,4 @@
-# `setProps(props)`
+## setProps(props)
- **Arguments:**
- `{Object} props`
diff --git a/docs/en/api/wrapper/text.md b/docs/api/wrapper/text.md
similarity index 95%
rename from docs/en/api/wrapper/text.md
rename to docs/api/wrapper/text.md
index e8ba037db..e2f764a1f 100644
--- a/docs/en/api/wrapper/text.md
+++ b/docs/api/wrapper/text.md
@@ -1,4 +1,4 @@
-# `text()`
+## text()
Returns text content of `Wrapper`.
diff --git a/docs/en/api/wrapper/trigger.md b/docs/api/wrapper/trigger.md
similarity index 96%
rename from docs/en/api/wrapper/trigger.md
rename to docs/api/wrapper/trigger.md
index 1b16418ca..df675564d 100644
--- a/docs/en/api/wrapper/trigger.md
+++ b/docs/api/wrapper/trigger.md
@@ -1,4 +1,4 @@
-# `trigger(eventType [, options ])`
+## trigger(eventType [, options ])
Triggers an event on the `Wrapper` DOM node.
diff --git a/docs/book.json b/docs/book.json
deleted file mode 100644
index d77d9b969..000000000
--- a/docs/book.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "title": "vue-test-utils",
- "gitbook": ">3.0.0",
- "plugins": ["edit-link", "theme-vuejs", "-fontsettings", "github"],
- "pluginsConfig": {
- "edit-link": {
- "base": "https://github.com/vuejs/vue-test-utils/edit/master/docs",
- "label": "Edit This Page"
- },
- "github": {
- "url": "https://github.com/vuejs/vue-test-utils/"
- }
- },
- "links": {
- "sharing": {
- "facebook": false,
- "twitter": false
- }
- }
-}
diff --git a/docs/en/SUMMARY.md b/docs/en/SUMMARY.md
deleted file mode 100644
index 7e07b03ec..000000000
--- a/docs/en/SUMMARY.md
+++ /dev/null
@@ -1,74 +0,0 @@
-## Table of Contents
-
-* [Guides](guides/README.md)
- * [Getting Started](guides/getting-started.md)
- * [Common Tips](guides/common-tips.md)
- * [Mouse, Key and other DOM Events](guides/dom-events.md)
- * [Choosing a test runner](guides/choosing-a-test-runner.md)
- * [Testing SFCs with Jest](guides/testing-SFCs-with-jest.md)
- * [Testing SFCs with Mocha + webpack](guides/testing-SFCs-with-mocha-webpack.md)
- * [Testing SFCs with Karma](guides/testing-SFCs-with-karma.md)
- * [Testing Asynchronous Behavior](guides/testing-async-components.md)
- * [Using with Vue Router](guides/using-with-vue-router.md)
- * [Using with Vuex](guides/using-with-vuex.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallowMount](api/shallowMount.md)
- * [render](api/render.md)
- * [renderToString](api/renderToString.md)
- * [Mounting Options](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [scopedSlots](api/options.md#scopedslots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- - [provide](api/options.md#provide)
- - [sync](api/options.md#sync)
- - [other options](api/options.md#other-options)
- * [Wrapper](api/wrapper/README.md)
- * [attributes](api/wrapper/attributes.md)
- * [classes](api/wrapper/classes.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [props](api/wrapper/props.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [isVisible](api/wrapper/isVisible.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [filter](api/wrapper-array/filter.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [isVisible](api/wrapper-array/isVisible.md)
- * [components](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [RouterLinkStub](api/components/RouterLinkStub.md)
- * [Selectors](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [config](api/config.md)
diff --git a/docs/en/api/README.md b/docs/en/api/README.md
deleted file mode 100644
index 02e303836..000000000
--- a/docs/en/api/README.md
+++ /dev/null
@@ -1,62 +0,0 @@
-# API
-
-* [mount](./mount.md)
-* [shallowMount](./shallowMount.md)
-* [render](./render.md)
-* [renderToString](./renderToString.md)
-* [Mounting Options](./options.md)
- - [context](./options.md#context)
- - [slots](./options.md#slots)
- - [scopedSlots](./options.md#scopedslots)
- - [stubs](./options.md#stubs)
- - [mocks](./options.md#mocks)
- - [localVue](./options.md#localvue)
- - [attachToDocument](./options.md#attachtodocument)
- - [attrs](./options.md#attrs)
- - [listeners](./options.md#listeners)
- - [provide](./options.md#provide)
- - [sync](./options.md#sync)
- - [other options](./options.md#other-options)
-* [Wrapper](./wrapper/README.md)
- * [attributes](./wrapper/attributes.md)
- * [classes](./wrapper/classes.md)
- * [contains](./wrapper/contains.md)
- * [emitted](./wrapper/emitted.md)
- * [emittedByOrder](./wrapper/emittedByOrder.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper/destroy.md)
- * [find](./wrapper/find.md)
- * [findAll](./wrapper/findAll.md)
- * [html](./wrapper/html.md)
- * [is](./wrapper/is.md)
- * [isEmpty](./wrapper/isEmpty.md)
- * [isVueInstance](./wrapper/isVueInstance.md)
- * [name](./wrapper/name.md)
- * [props](./wrapper/props.md)
- * [setData](./wrapper/setData.md)
- * [setMethods](./wrapper/setMethods.md)
- * [setProps](./wrapper/setProps.md)
- * [text](./wrapper/text.md)
- * [trigger](./wrapper/trigger.md)
- * [isVisible](./wrapper/isVisible.md)
-* [WrapperArray](./wrapper-array/README.md)
- * [at](./wrapper-array/at.md)
- * [contains](./wrapper-array/contains.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper-array/destroy.md)
- * [filter](./wrapper-array/filter.md)
- * [is](./wrapper-array/is.md)
- * [isEmpty](./wrapper-array/isEmpty.md)
- * [isVueInstance](./wrapper-array/isVueInstance.md)
- * [setData](./wrapper-array/setData.md)
- * [setMethods](./wrapper-array/setMethods.md)
- * [setProps](./wrapper-array/setProps.md)
- * [trigger](./wrapper-array/trigger.md)
- * [isVisible](./wrapper-array/isVisible.md)
-* [components](./components/README.md)
- * [TransitionStub](./components/TransitionStub.md)
- * [TransitionGroupStub](./components/TransitionGroupStub.md)
- * [RouterLinkStub](./components/RouterLinkStub.md)
-* [Selectors](./selectors.md)
-* [createLocalVue](./createLocalVue.md)
-* [config](./config.md)
diff --git a/docs/en/api/components/README.md b/docs/en/api/components/README.md
deleted file mode 100644
index 4ef434ef2..000000000
--- a/docs/en/api/components/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Components
-
-Vue Test Utils includes utility components you can use to stub components.
-
-[TransitionStub](./TransitionStub.md) and [TransitionGroupStub](./TransitionGroupStub.md) are used to stub `transition` and `transition-group` components by default. You can edit the stubs by editing the config.
diff --git a/docs/en/api/wrapper-array/README.md b/docs/en/api/wrapper-array/README.md
deleted file mode 100644
index 40987d29b..000000000
--- a/docs/en/api/wrapper-array/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# `WrapperArray`
-
-A `WrapperArray` is an object that contains an array of [`Wrappers`](../wrapper/README.md), and methods to test the `Wrappers`.
-
-- **Properties:**
-
-`wrappers` `array`: the `Wrappers` contained in the `WrapperArray`
-`length` `number`: the number of `Wrappers` contained in the `WrapperArray`
-
- - **Methods:**
-
-There is a detailed list of methods in the `WrapperArray` section of the docs.
diff --git a/docs/en/api/wrapper/README.md b/docs/en/api/wrapper/README.md
deleted file mode 100644
index 846c4729d..000000000
--- a/docs/en/api/wrapper/README.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# `Wrapper`
-
-Vue Test Utils is a wrapper based API.
-
-A `Wrapper` is an object that contains a mounted component or vnode and methods to test the component or vnode.
-
-- **Properties:**
-
-`vm` `Component`: this is the `Vue` instance. You can access all the [instance methods and properties of a vm](https://vuejs.org/v2/api/#Instance-Properties) with `wrapper.vm`. This only exists on Vue component wrappers
-`element` `HTMLElement`: the root DOM node of the wrapper
-`options` `Object`: Object containing Vue Test Utils options passed to `mount` or `shallowMount`
-`options.attachedToDocument` `Boolean`: True if `attachedToDocument` was passed to `mount` or `shallowMount`
-`options.sync` `Boolean`: True if `sync` was not passed as `false` to `mount` or `shallowMount`
-
-- **Methods:**
-
-There is a detailed list of methods in the wrapper section of the docs.
diff --git a/docs/en/guides/README.md b/docs/en/guides/README.md
deleted file mode 100644
index a6c9037f5..000000000
--- a/docs/en/guides/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# Guides
-
-* [Getting Started](./getting-started.md)
-* [Common Tips](./common-tips.md)
-* [Mouse, Key and other DOM Events](./dom-events.md)
-* [Choosing a test runner](./choosing-a-test-runner.md)
-* [Testing SFCs with Jest](./testing-SFCs-with-jest.md)
-* [Testing SFCs with Mocha + webpack](./testing-SFCs-with-mocha-webpack.md)
-* [Testing SFCs with Karma](./testing-SFCs-with-karma.md)
-* [Testing Asynchronous Behavior](testing-async-components.md)
-* [Using with Vue Router](./using-with-vue-router.md)
-* [Using with Vuex](./using-with-vuex.md)
diff --git a/docs/fr/README.md b/docs/fr/README.md
deleted file mode 100644
index 0c80dc1d2..000000000
--- a/docs/fr/README.md
+++ /dev/null
@@ -1,71 +0,0 @@
-# vue-test-utils
-
-`vue-test-utils` est la bibliothèque officielle de tests unitaires pour Vue.js.
-
-## Table of Contents
-
-* [Guides](guides/README.md)
- * [Commencer](guides/getting-started.md)
- * [Astuces](guides/common-tips.md)
- * [La souris, le clavier et les autres évènements DOM](guides/dom-events.md)
- * [Choisir un lanceur de tests](guides/choosing-a-test-runner.md)
- * [Tester des composants monofichiers avec Jest](guides/testing-SFCs-with-jest.md)
- * [Tester des composants monofichiers avec Mocha et webpack](guides/testing-SFCs-with-mocha-webpack.md)
- * [Utiliser avec Vue Router](guides/using-with-vue-router.md)
- * [Utiliser avec Vuex](guides/using-with-vuex.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallow](api/shallow.md)
- * [Options de montage](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- * [Wrapper](api/wrapper/README.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [hasAttribute](api/wrapper/hasAttribute.md)
- * [hasClass](api/wrapper/hasClass.md)
- * [hasProp](api/wrapper/hasProp.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [setComputed](api/wrapper/setComputed.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [hasAttribute](api/wrapper-array/hasAttribute.md)
- * [hasClass](api/wrapper-array/hasClass.md)
- * [hasProp](api/wrapper-array/hasProp.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setComputed](api/wrapper-array/setComputed.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [components](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [Selecteurs](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [config](api/config.md)
diff --git a/docs/fr/SUMMARY.md b/docs/fr/SUMMARY.md
deleted file mode 100644
index 5a509ccba..000000000
--- a/docs/fr/SUMMARY.md
+++ /dev/null
@@ -1,67 +0,0 @@
-## Table des matières
-
-* [Guides](guides/README.md)
- * [Commencer](guides/getting-started.md)
- * [Astuces](guides/common-tips.md)
- * [La souris, le clavier et les autres évènements DOM](./dom-events.md)
- * [Choisir un lanceur de tests](guides/choosing-a-test-runner.md)
- * [Tester des composants monofichiers avec Jest](guides/testing-SFCs-with-jest.md)
- * [Tester des composants monofichiers avec Mocha et webpack](guides/testing-SFCs-with-mocha-webpack.md)
- * [Utiliser avec Vue Router](guides/using-with-vue-router.md)
- * [Utiliser avec Vuex](guides/using-with-vuex.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallow](api/shallow.md)
- * [Options de montage](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- * [Wrapper](api/wrapper/README.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [hasAttribute](api/wrapper/hasAttribute.md)
- * [hasClass](api/wrapper/hasClass.md)
- * [hasProp](api/wrapper/hasProp.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [hasAttribute](api/wrapper-array/hasAttribute.md)
- * [hasClass](api/wrapper-array/hasClass.md)
- * [hasProp](api/wrapper-array/hasProp.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setComputed](api/wrapper-array/setComputed.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [update](api/wrapper-array/update.md)
- * [components](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [Selectors](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [config](api/config.md)
diff --git a/docs/fr/api/README.md b/docs/fr/api/README.md
deleted file mode 100644
index 23d088aa8..000000000
--- a/docs/fr/api/README.md
+++ /dev/null
@@ -1,57 +0,0 @@
-# API
-
-* [mount (EN)](./mount.md)
-* [shallow (EN)](./shallow.md)
-* [Mounting Options (EN)](./options.md)
- - [context (EN)](./options.md#context)
- - [slots (EN)](./options.md#slots)
- - [stubs (EN)](./options.md#stubs)
- - [mocks (EN)](./options.md#mocks)
- - [localVue (EN)](./options.md#localvue)
- - [attachToDocument (EN)](./options.md#attachtodocument)
- - [attrs (EN)](./options.md#attrs)
- - [listeners (EN)](./options.md#listeners)
-* [Wrapper (EN)](./wrapper/README.md)
- * [contains (EN)](./wrapper/contains.md)
- * [emitted (EN)](./wrapper/emitted.md)
- * [emittedByOrder (EN)](./wrapper/emittedByOrder.md)
- * [exists (EN)](./wrapper/exists.md)
- * [destroy (EN)](./wrapper/destroy.md)
- * [find (EN)](./wrapper/find.md)
- * [findAll (EN)](./wrapper/findAll.md)
- * [hasAttribute (EN)](./wrapper/hasAttribute.md)
- * [hasClass (EN)](./wrapper/hasClass.md)
- * [hasProp (EN)](./wrapper/hasProp.md)
- * [html (EN)](./wrapper/html.md)
- * [is (EN)](./wrapper/is.md)
- * [isEmpty (EN)](./wrapper/isEmpty.md)
- * [isVueInstance (EN)](./wrapper/isVueInstance.md)
- * [name (EN)](./wrapper/name.md)
- * [setComputed (EN)](./wrapper/setComputed.md)
- * [setData (EN)](./wrapper/setData.md)
- * [setMethods (EN)](./wrapper/setMethods.md)
- * [setProps (EN)](./wrapper/setProps.md)
- * [text (EN)](./wrapper/text.md)
- * [trigger (EN)](./wrapper/trigger.md)
-* [WrapperArray (EN)](./wrapper-array/README.md)
- * [at (EN)](./wrapper-array/at.md)
- * [contains (EN)](./wrapper-array/contains.md)
- * [exists (EN)](./wrapper/exists.md)
- * [destroy (EN)](./wrapper-array/destroy.md)
- * [hasAttribute (EN)](./wrapper-array/hasAttribute.md)
- * [hasClass (EN)](./wrapper-array/hasClass.md)
- * [hasProp (EN)](./wrapper-array/hasProp.md)
- * [is (EN)](./wrapper-array/is.md)
- * [isEmpty (EN)](./wrapper-array/isEmpty.md)
- * [isVueInstance (EN)](./wrapper-array/isVueInstance.md)
- * [setComputed (EN)](./wrapper-array/setComputed.md)
- * [setData (EN)](./wrapper-array/setData.md)
- * [setMethods (EN)](./wrapper-array/setMethods.md)
- * [setProps (EN)](./wrapper-array/setProps.md)
- * [trigger (EN)](./wrapper-array/trigger.md)
-* [components (EN)](./components/README.md)
- * [TransitionStub (EN)](./components/TransitionStub.md)
- * [TransitionGroupStub (EN)](./components/TransitionGroupStub.md)
-* [Selectors (EN)](./selectors.md)
-* [createLocalVue (EN)](./createLocalVue.md)
-* [config (EN)](./config.md)
diff --git a/docs/fr/api/components/README.md b/docs/fr/api/components/README.md
deleted file mode 100644
index 07ef12329..000000000
--- a/docs/fr/api/components/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Components
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
vue-test-utils includes utility components you can use to stub components.
-
-[TransitionStub](./TransitionStub.md) and [TransitionGroupStub](./TransitionGroupStub.md) are used to stub `transition` and `transition-group` components by default. You can edit the stubs by editing the config.
diff --git a/docs/fr/api/components/TransitionGroupStub.md b/docs/fr/api/components/TransitionGroupStub.md
deleted file mode 100644
index d82ef8e88..000000000
--- a/docs/fr/api/components/TransitionGroupStub.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# TransitionGroupStub
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
A component to stub the `transition-group` component. Instead of performing transitions asynchronously, it returns the child components synchronously.
-
-This is set to stub all `transition-group` components by default in the `vue-test-utils` config. To use the built-in `transition-group` component set `config.stubs['transition-group']` to false:
-
-```js
-import VueTestUtils from '@vue/test-utils'
-
-VueTestUtils.config.stubs['transition-group'] = false
-```
-
-To reset it to stub `transition-group` components:
-
-```js
-import VueTestUtils, { TransitionGroupStub } from '@vue/test-utils'
-
-VueTestUtils.config.stubs['transition-group'] = TransitionGroupStub
-```
-
-To set it as a stub in mounting options:
-
-```js
-import { mount, TransitionGroupStub } from '@vue/test-utils'
-
-mount(Component, {
- stubs: {
- 'transition-group': TransitionGroupStub
- }
-})
-```
diff --git a/docs/fr/api/components/TransitionStub.md b/docs/fr/api/components/TransitionStub.md
deleted file mode 100644
index b5f268fcc..000000000
--- a/docs/fr/api/components/TransitionStub.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# TransitionStub
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
A component to stub the `transition` component. Instead of performing transitions asynchronously, it returns the child component synchronously.
-
-This is set to stub all `transition` components by default in the vue-test-utils config. To use the built-in `transition` component set `config.stubs.transition` to false:
-
-```js
-import VueTestUtils from '@vue/test-utils'
-
-VueTestUtils.config.stubs.transition = false
-```
-
-To reset it to stub `transition` components:
-```js
-import VueTestUtils, { TransitionStub } from '@vue/test-utils'
-
-VueTestUtils.config.stubs.transition = TransitionStub
-```
-
-To set it as a stub in mounting options:
-
-```js
-import { mount, TransitionStub } from '@vue/test-utils'
-
-mount(Component, {
- stubs: {
- transition: TransitionStub
- }
-})
-```
diff --git a/docs/fr/api/config.md b/docs/fr/api/config.md
deleted file mode 100644
index d79b15e99..000000000
--- a/docs/fr/api/config.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# Config
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
vue-test-utils includes a config object to defined options used by vue-test-utils.
-
-## `vue-test-utils` Config Options
-
-### `stubs`
-
-- type: `Object`
-- default: `{
- transition: TransitionStub,
- 'transition-group': TransitionGroupStub
-}`
-
-Stubs to use in components. These are overwritten by `stubs` passed in the mounting options.
-
-When passing `stubs` as an array in the mounting options, `config.stubs` are converted to an array, and will stub components with a basic component that returns ``.
-
-Example:
-
-```js
-import VueTestUtils from '@vue/test-utils'
-
-VueTestUtils.config.stubs['my-compomnent'] = ''
-```
diff --git a/docs/fr/api/createLocalVue.md b/docs/fr/api/createLocalVue.md
deleted file mode 100644
index 1c91640ba..000000000
--- a/docs/fr/api/createLocalVue.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# `createLocalVue()`
-
-- **Returns:**
- - `{Component}`
-
-- **Usage:**
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
`createLocalVue` returns a Vue class for you to add components, mixins and install plugins without polluting the global Vue class.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
See [options](options.md)
-
-- **Usage:**
-
-Returns [`Wrapper`](wrapper/README.md) of first DOM node or Vue component matching selector.
-
-Use any valid [selector](selectors.md).
-
-**Without options:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo)
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**With Vue options:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- propsData: {
- color: 'red'
- }
- })
- expect(wrapper.props().color).toBe('red')
- })
-})
-```
-
-**Attach to DOM:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- attachToDocument: true
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-**Default and named slots:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import FooBar from './FooBar.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- slots: {
- default: [Bar, FooBar],
- fooBar: FooBar, // Will match ``.
- foo: ''
- }
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Stubbing global properties:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const $route = { path: 'http://www.example-path.com' }
- const wrapper = mount(Foo, {
- mocks: {
- $route
- }
- })
- expect(wrapper.vm.$route.path).toBe($route.path)
- })
-})
-```
-
-**Stubbing components:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import Faz from './Faz.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- stubs: {
- Bar: '',
- BarFoo: true,
- FooBar: Faz
- }
- })
- expect(wrapper.contains('.stubbed')).toBe(true)
- expect(wrapper.contains(Bar)).toBe(true)
- })
-})
-```
-
-- **See also:** [Wrapper](wrapper/README.md)
diff --git a/docs/fr/api/options.md b/docs/fr/api/options.md
deleted file mode 100644
index b6207423e..000000000
--- a/docs/fr/api/options.md
+++ /dev/null
@@ -1,156 +0,0 @@
-# Mounting Options
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Options for `mount` and `shallow`. The options object can contain both `vue-test-utils` mounting options and raw Vue options.
-
-Vue options are passed to the component when a new instance is created. , e.g. `store`, `propsData`. For a full list, see the [Vue API docs](https://vuejs.org/v2/api/).
-
-## `vue-test-utils` Specific Mounting Options
-
-- [`context`](#context)
-- [`slots`](#slots)
-- [`stubs`](#stubs)
-- [`mocks`](#mocks)
-- [`localVue`](#localvue)
-- [`attachToDocument`](#attachtodocument)
-- [`attrs`](#attrs)
-- [`provide`](#provide)
-- [`listeners`](#listeners)
-
-### `context`
-
-- type: `Object`
-
-Passes context to functional component. Can only be used with functional components.
-
-Example:
-
-```js
-const wrapper = mount(Component, {
- context: {
- props: { show: true }
- }
-})
-
-expect(wrapper.is(Component)).toBe(true)
-```
-
-### `slots`
-
-- type: `{ [name: string]: Array|Component|string }`
-
-Provide an object of slot contents to the component. The key corresponds to the slot name. The value can be either a component, an array of components, or a template string.
-
-Example:
-
-```js
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = shallow(Component, {
- slots: {
- default: [Foo, Bar],
- fooBar: Foo, // Will match ``.
- foo: ''
- }
-})
-expect(wrapper.find('div')).toBe(true)
-```
-
-### `stubs`
-
-- type: `{ [name: string]: Component | boolean } | Array`
-
-Stubs child components. Can be an Array of component names to stub, or an object. If `stubs` is an Array, every stub is ``.
-
-Example:
-
-```js
-import Foo from './Foo.vue'
-
-mount(Component, {
- stubs: ['registered-component']
-})
-
-shallow(Component, {
- stubs: {
- // stub with a specific implementation
- 'registered-component': Foo,
- // create default stub
- 'another-component': true
- }
-})
-```
-
-### `mocks`
-
-- type: `Object`
-
-Add additional properties to the instance. Useful for mocking global injections.
-
-Example:
-
-```js
-const $route = { path: 'http://www.example-path.com' }
-const wrapper = shallow(Component, {
- mocks: {
- $route
- }
-})
-expect(wrapper.vm.$route.path).toBe($route.path)
-```
-
-### `localVue`
-
-- type: `Vue`
-
-A local copy of Vue created by [`createLocalVue`](./createLocalVue.md) to use when mounting the component. Installing plugins on this copy of `Vue` prevents polluting the original `Vue` copy.
-
-Example:
-
-```js
-import { createLocalVue, mount } from '@vue/test-utils'
-import VueRouter from 'vue-router'
-import Foo from './Foo.vue'
-
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-
-const routes = [
- { path: '/foo', component: Foo }
-]
-
-const router = new VueRouter({
- routes
-})
-
-const wrapper = mount(Component, {
- localVue,
- router
-})
-expect(wrapper.vm.$route).toBeInstanceOf(Object)
-```
-
-### `attachToDocument`
-
-- type: `boolean`
-- default: `false`
-
-Component will be attach to DOM when rendered if set to `true`.
-
-### `attrs`
-
-- type: `Object`
-
-Set the component instance's `$attrs` object.
-
-### `listeners`
-
-- type: `Object`
-
-Set the component instance's `$listeners` object.
-
-### `provide`
-
-- type: `Object`
-
-Pass properties for components to use in injection. See [provide/inject](https://vuejs.org/v2/api/#provide-inject).
diff --git a/docs/fr/api/selectors.md b/docs/fr/api/selectors.md
deleted file mode 100644
index 04bbfd20c..000000000
--- a/docs/fr/api/selectors.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# Selectors
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
A lot of methods take a selector as an argument. A selector can either be a CSS selector, a Vue component, or a find option object.
-
-## CSS Selectors
-
-Mount handles any valid CSS selector:
-
-- tag selectors (`div`, `foo`, `bar`)
-- class selectors (`.foo`, `.bar`)
-- attribute selectors (`[foo]`, `[foo="bar"]`)
-- id selectors (`#foo`, `#bar`)
-- pseudo selectors (`div:first-of-type`)
-
-You can also use combinators:
-
-- direct descendant combinator (`div > #bar > .foo`)
-- general descendant combinator (`div #bar .foo`)
-- adjacent sibling selector (`div + .foo`)
-- general sibling selector (`div ~ .foo`)
-
-## Vue Components
-
-Vue components are also valid selectors.
-
-`vue-test-utils` uses the `name` property to search the instance tree for matching Vue components.
-
-```js
-// Foo.vue
-
-export default {
- name: 'FooComponent'
-}
-```
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = shallow(Foo)
-expect(wrapper.is(Foo)).toBe(true)
-```
-
-## Find Option Object
-
-### Ref
-
-Using a find option object, `vue-test-utils` allows for selecting elements by `$ref` on wrapper components.
-
-```js
-const buttonWrapper = wrapper.find({ ref: 'myButton' })
-buttonWrapper.trigger('click')
-```
diff --git a/docs/fr/api/shallow.md b/docs/fr/api/shallow.md
deleted file mode 100644
index d785eea13..000000000
--- a/docs/fr/api/shallow.md
+++ /dev/null
@@ -1,118 +0,0 @@
-# `shallow(component {, options}])`
-
-- **Arguments:**
-
- - `{Component} component`
- - `{Object} options`
- - `{boolean} attachToDocument`
- - `{Object} context`
- - `{Object} slots`
- - `{Array|Component|String} default`
- - `{Array|Component|String} named`
- - `{Object} mocks`
- - `{Object|Array} stubs`
- - `{Object} children`
- - `{Vue} localVue`
-
-- **Returns:** `{Wrapper}`
-
-- **Options:**
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
See [options](./options.md)
-
-- **Usage:**
-
-Returns [`Wrapper`](./wrapper/README.md) of first DOM node or Vue component matching selector.
-
-Stubs all child components.
-
-Use any valid [selector](./selectors.md).
-
-**Without options:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo)
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**With Vue options:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo, {
- propsData: {
- color: 'red'
- }
- })
- expect(wrapper.props().color).toBe('red')
- })
-})
-```
-
-**Attach to DOM:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo, {
- attachToDocument: true
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Default and named slots:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import FooBar from './FooBar.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo, {
- slots: {
- default: [Bar, FooBar],
- fooBar: FooBar, // Will match ,
- foo: ''
- }
- })
- expect(wrapper.find('div')).toBe(true)
- })
-})
-```
-
-**Stubbing global properties:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const $route = { path: 'http://www.example-path.com' }
- const wrapper = shallow(Foo, {
- mocks: {
- $route
- }
- })
- expect(wrapper.vm.$route.path).toBe($route.path)
- })
-})
-```
diff --git a/docs/fr/api/wrapper-array/README.md b/docs/fr/api/wrapper-array/README.md
deleted file mode 100644
index 40bf4af46..000000000
--- a/docs/fr/api/wrapper-array/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# WrapperArray
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
A `WrapperArray` is an object that contains an array of [`Wrappers`](../wrapper/README.md), and methods to test the `Wrappers`.
-
-- **Properties:**
-
-`length` `number`: the number of `Wrappers` contained in the `WrapperArray`
-
- - **Methods:**
-
-There is a detailed list of methods in the `WrapperArray` section of the docs.
diff --git a/docs/fr/api/wrapper-array/at.md b/docs/fr/api/wrapper-array/at.md
deleted file mode 100644
index 0277f5df2..000000000
--- a/docs/fr/api/wrapper-array/at.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# at(index)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Returns `Wrapper` at `index` passed. Uses zero based numbering (i.e. first item is at index 0).
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert every wrapper in `WrapperArray` contains selector.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert every `Wrapper` in `WrapperArray` DOM node has `attribute` matching `value`.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert every `Wrapper` in `WrapperArray` DOM node has class containing `className`.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert every `Wrapper` in `WrapperArray` `vm` has `prop` matching `value`.
-
-**Note the Wrapper must contain a Vue instance.**
-
-- **Arguments:**
- - `{string} prop`
- - `{any} value`
-
-- **Returns:** `{boolean}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-expect(barArray.hasProp('bar', 10)).toBe(true)
-```
diff --git a/docs/fr/api/wrapper-array/is.md b/docs/fr/api/wrapper-array/is.md
deleted file mode 100644
index 3fb63603d..000000000
--- a/docs/fr/api/wrapper-array/is.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# is(selector)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert every `Wrapper` in `WrapperArray` DOM node or `vm` matches [selector](../selectors.md).
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert every `Wrapper` in `WrapperArray` does not contain child node.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert every `Wrapper` in `WrapperArray` is Vue instance.
-
-- **Returns:** `{boolean}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-expect(barArray.isVueInstance()).toBe(true)
-```
diff --git a/docs/fr/api/wrapper-array/setComputed.md b/docs/fr/api/wrapper-array/setComputed.md
deleted file mode 100644
index c92c5a466..000000000
--- a/docs/fr/api/wrapper-array/setComputed.md
+++ /dev/null
@@ -1,26 +0,0 @@
-
-# setComputed(computedObjects)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Sets `Wrapper` `vm` computed and forces update on each `Wrapper` in `WrapperArray`.
-
-**Note every `Wrapper` must contain a Vue instance.**
-**Note every Vue instance must already have the computed properties passed to `setComputed`.**
-
-- **Arguments:**
- - `{Object} computed properties`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-
-barArray.setComputed({
- computed1: 'new-computed1',
- computed2: 'new-computed2'
-})
-```
diff --git a/docs/fr/api/wrapper-array/setData.md b/docs/fr/api/wrapper-array/setData.md
deleted file mode 100644
index abc7ea9b4..000000000
--- a/docs/fr/api/wrapper-array/setData.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# setData(data)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Sets `Wrapper` `vm` data and forces update on each `Wrapper` in `WrapperArray`.
-
-**Note every `Wrapper` must contain a Vue instance.**
-
-- **Arguments:**
- - `{Object} data`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-barArray.setData({ foo: 'bar' })
-expect(barArray.at(0).vm.foo).toBe('bar')
-```
diff --git a/docs/fr/api/wrapper-array/setMethods.md b/docs/fr/api/wrapper-array/setMethods.md
deleted file mode 100644
index 6bea34ef7..000000000
--- a/docs/fr/api/wrapper-array/setMethods.md
+++ /dev/null
@@ -1,26 +0,0 @@
-
-# setMethods(methods)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Sets `Wrapper` `vm` methods and forces update on each `Wrapper` in `WrapperArray`.
-
-**Note every `Wrapper` must contain a Vue instance.**
-
-- **Arguments:**
- - `{Object} methods`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-const clickMethodStub = sinon.stub()
-
-barArray.setMethods({ clickMethod: clickMethodStub })
-barArray.at(0).trigger('click')
-expect(clickMethodStub.called).toBe(true)
-```
diff --git a/docs/fr/api/wrapper-array/setProps.md b/docs/fr/api/wrapper-array/setProps.md
deleted file mode 100644
index 72dcc151d..000000000
--- a/docs/fr/api/wrapper-array/setProps.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# setProps(props)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Sets `Wrapper` `vm` props and forces update on each `Wrapper` in `WrapperArray`.
-
-**Note every `Wrapper` must contain a Vue instance.**
-
-- **Arguments:**
- - `{Object} props`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-barArray.setProps({ foo: 'bar' })
-expect(barArray.at(0).vm.foo).toBe('bar')
-```
diff --git a/docs/fr/api/wrapper-array/trigger.md b/docs/fr/api/wrapper-array/trigger.md
deleted file mode 100644
index 9ab18db7b..000000000
--- a/docs/fr/api/wrapper-array/trigger.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# trigger(eventName)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Triggers an event on every `Wrapper` in the `WrapperArray` DOM node.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
`vue-test-utils` is a wrapper based API.
-
-A `Wrapper` is an object that contains a mounted component or vnode and methods to test the component or vnode.
-
-- **Properties:**
-
-`vm` `Component`: this is the `Vue` instance. You can access all the [instance methods and properties of a vm](https://vuejs.org/v2/api/#Instance-Properties) with `wrapper.vm`. This only exists on Vue component wrappers
-`element` `HTMLElement`: the root DOM node of the wrapper
-`options` `Object`: Object containing `vue-test-utils` options passed to `mount` or `shallow`
-`options.attachedToDom` `Boolean`: True if `attachToDom` was passed to `mount` or `shallow`
-
-- **Methods:**
-
-There is a detailed list of methods in the wrapper section of the docs.
diff --git a/docs/fr/api/wrapper/contains.md b/docs/fr/api/wrapper/contains.md
deleted file mode 100644
index d42c3f430..000000000
--- a/docs/fr/api/wrapper/contains.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# `contains(selector)`
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert `Wrapper` contains an element or component matching [selector](../selectors.md).
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Return an object containing custom events emitted by the `Wrapper` `vm`.
-
-- **Returns:** `{ [name: string]: Array> }`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-
-const wrapper = mount(Component)
-
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('foo', 123)
-
-/*
-wrapper.emitted() returns the following object:
-{
- foo: [[], [123]]
-}
-*/
-
-// assert event has been emitted
-expect(wrapper.emitted().foo).toBeTruthy()
-
-// assert event count
-expect(wrapper.emitted().foo.length).toBe(2)
-
-// assert event payload
-expect(wrapper.emitted().foo[1]).toEqual([123])
-```
-
-You can also write the above as follows:
-
-```js
-// assert event has been emitted
-expect(wrapper.emitted('foo')).toBeTruthy()
-
-// assert event count
-expect(wrapper.emitted('foo').length).toBe(2)
-
-// assert event payload
-expect(wrapper.emitted('foo')[1]).toEqual([123])
-```
diff --git a/docs/fr/api/wrapper/emittedByOrder.md b/docs/fr/api/wrapper/emittedByOrder.md
deleted file mode 100644
index a11fecd12..000000000
--- a/docs/fr/api/wrapper/emittedByOrder.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# emittedByOrder()
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Return an Array containing custom events emitted by the `Wrapper` `vm`.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert `Wrapper` or `WrapperArray` exists.
-
-Returns false if called on an empty `Wrapper` or `WrapperArray`.
-
-- **Returns:** `{boolean}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.exists()).toBe(true)
-expect(wrapper.find('does-not-exist').exists()).toBe(false)
-expect(wrapper.findAll('div').exists()).toBe(true)
-expect(wrapper.findAll('does-not-exist').exists()).toBe(false)
-```
diff --git a/docs/fr/api/wrapper/find.md b/docs/fr/api/wrapper/find.md
deleted file mode 100644
index 91b0c477a..000000000
--- a/docs/fr/api/wrapper/find.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# find(selector)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Returns [`Wrapper`](README.md) of first DOM node or Vue component matching selector.
-
-Use any valid [selector](../selectors.md).
-
-- **Arguments:**
- - `{string|Component} selector`
-
-- **Returns:** `{Wrapper}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const div = wrapper.find('div')
-expect(div.is('div')).toBe(true)
-const bar = wrapper.find(Bar)
-expect(bar.is(Bar)).toBe(true)
-```
-
-- **See also:** [Wrapper](README.md)
diff --git a/docs/fr/api/wrapper/findAll.md b/docs/fr/api/wrapper/findAll.md
deleted file mode 100644
index 003bdadc3..000000000
--- a/docs/fr/api/wrapper/findAll.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# findAll(selector)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Returns a [`WrapperArray`](../wrapper-array/README.md) of [Wrappers](README.md).
-
-Use any valid [selector](../selectors.md).
-
-- **Arguments:**
- - `{string|Component} selector`
-
-- **Returns:** `{WrapperArray}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const div = wrapper.findAll('div').at(0)
-expect(div.is('div')).toBe(true)
-const bar = wrapper.findAll(Bar).at(0)
-expect(bar.is(Bar)).toBe(true)
-```
-
-- **See also:** [Wrapper](README.md)
diff --git a/docs/fr/api/wrapper/hasAttribute.md b/docs/fr/api/wrapper/hasAttribute.md
deleted file mode 100644
index c7b8cef0a..000000000
--- a/docs/fr/api/wrapper/hasAttribute.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# hasAttribute(attribute, value)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert `Wrapper` DOM node has attribute matching value.
-
-Returns `true` if `Wrapper` DOM node contains attribute with matching value.
-
-- **Arguments:**
- - `{string} attribute`
- - `{string} value`
-
-- **Returns:** `{boolean}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.hasAttribute('id', 'foo')).toBe(true)
-```
-
-- **Alternative:**
-
-You could get the attribute from the `Wrapper.element` to have a value based assertion:
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.element.getAttribute('id')).toBe('foo')
-```
-
-This makes for a more informative assertion error.
diff --git a/docs/fr/api/wrapper/hasClass.md b/docs/fr/api/wrapper/hasClass.md
deleted file mode 100644
index 23cacb790..000000000
--- a/docs/fr/api/wrapper/hasClass.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# hasClass(className)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert `Wrapper` DOM node has class contains `className`.
-
-Returns `true` if `Wrapper` DOM node contains the class.
-
-- **Arguments:**
- - `{string} className`
-
-- **Returns:** `{boolean}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.hasClass('bar')).toBe(true)
-```
diff --git a/docs/fr/api/wrapper/hasProp.md b/docs/fr/api/wrapper/hasProp.md
deleted file mode 100644
index db4c18b36..000000000
--- a/docs/fr/api/wrapper/hasProp.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# hasProp(prop, value)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert `Wrapper` `vm` has `prop` matching `value`.
-
-Returns `true` if `Wrapper` `vm` has `prop` matching `value`.
-
-
-**Note: the Wrapper must contain a Vue instance.**
-
-- **Arguments:**
- - `{string} prop`
- - `{any} value`
-
-- **Returns:** `{boolean}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.hasProp('bar', 10)).toBe(true)
-```
diff --git a/docs/fr/api/wrapper/html.md b/docs/fr/api/wrapper/html.md
deleted file mode 100644
index 86a71f367..000000000
--- a/docs/fr/api/wrapper/html.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# html()
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Returns HTML of `Wrapper` DOM node as a string.
-
-- **Returns:** `{string}`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.html()).toBe('
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Assert `Wrapper` DOM node or `vm` matches [selector](../selectors.md).
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Returns component name if `Wrapper` contains a Vue instance, or the tag name of `Wrapper` DOM node if `Wrapper` does not contain a Vue instance.
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Sets `Wrapper` `vm` data and forces update.
-
-**Note the Wrapper must contain a Vue instance.**
-
-- **Arguments:**
- - `{Object} data`
-
-- **Example:**
-
-```js
-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')
-```
diff --git a/docs/fr/api/wrapper/setMethods.md b/docs/fr/api/wrapper/setMethods.md
deleted file mode 100644
index d36bcbf65..000000000
--- a/docs/fr/api/wrapper/setMethods.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# setMethods(methods)
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Sets `Wrapper` `vm` props and forces update.
-
-**Note the Wrapper must contain a Vue instance.**
-
-```js
-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')
-```
-
-You can also pass a `propsData` object, which will initialize the Vue instance with passed values.
-
-``` js
-// Foo.vue
-export default {
- props: {
- foo: {
- type: String,
- required: true
- }
- }
-}
-```
-
-``` js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo, {
- propsData: {
- foo: 'bar'
- }
-})
-
-expect(wrapper.vm.foo).toBe('bar')
-```
diff --git a/docs/fr/api/wrapper/text.md b/docs/fr/api/wrapper/text.md
deleted file mode 100644
index a2ddebe30..000000000
--- a/docs/fr/api/wrapper/text.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# text()
-
-
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
⚠Cette page est actuellement en cours de traduction française. Vous pouvez repasser plus tard ou participer à la traduction de celle-ci dès maintenant !
Triggers an event on the `Wrapper` DOM node.
-
-`trigger` takes an optional `options` object. The properties in the `options` object are added to the Event.
-
-
-- **Arguments:**
- - `{string} eventName`
- - `{Object} options`
-
-- **Example:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo'
-
-const clickHandler = sinon.stub()
-const wrapper = mount(Foo, {
- propsData: { clickHandler }
-})
-
-wrapper.trigger('click')
-
-wrapper.trigger('click', {
- button: 0
-})
-
-expect(clickHandler.called).toBe(true)
-```
diff --git a/docs/fr/guides/README.md b/docs/fr/guides/README.md
deleted file mode 100644
index 7cedb95d6..000000000
--- a/docs/fr/guides/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Guides
-
-* [Commencer](./getting-started.md)
-* [Astuces](./common-tips.md)
-* [La souris, le clavier et les autres évènements DOM](./dom-events.md)
-* [Choisir un lanceur de tests](./choosing-a-test-runner.md)
-* [Tester des composants monofichiers avec Jest](./testing-SFCs-with-jest.md)
-* [Tester des composants monofichiers avec Mocha et webpack](./testing-SFCs-with-mocha-webpack.md)
-* [Utiliser avec Vue Router](./using-with-vue-router.md)
-* [Utiliser avec Vuex](./using-with-vuex.md)
diff --git a/docs/fr/guides/choosing-a-test-runner.md b/docs/fr/guides/choosing-a-test-runner.md
deleted file mode 100644
index c70bdad4e..000000000
--- a/docs/fr/guides/choosing-a-test-runner.md
+++ /dev/null
@@ -1,45 +0,0 @@
-# Choisir un lanceur de tests
-
-Un lanceur de tests est un programme qui lance des tests (et oui !).
-
-Il y a un nombre conséquent de lanceurs de tests JavaScript et `vue-test-utils` fonctionne avec tous. `vue-test-utils` est agnostique en terme de lanceurs de tests.
-
-Il y a tout de même plusieurs choses à considérer afin de choisir un lanceur de tests : variété des fonctionnalités, performance et support de la précompilation des composants monofichiers. Après avoir soigneusement analysé et comparé les bibliothèques, il y a deux lanceurs de tests que nous recommandons :
-
-- [Jest](https://facebook.github.io/jest/docs/en/getting-started.html#content) est le lanceur de test le plus complet en termes de fonctionnalités. Il requiert une configuration minimale, installe JSDOM par défaut, fournit des assertions prêtes à l'utilisation et a une très bonne interface en ligne de commandes. Cependant, vous allez avoir besoin d'un préprocesseur afin d'être capable d'importer les composants monofichiers dans vos tests. On a créé le préprocesseur `vue-jest` qui peut gérer les fonctionnalités communes des composants monofichiers. Il n'a cependant pas encore autant de fonctionnalités que `vue-loader`.
-
-- [mocha-webpack](https://github.com/zinserjan/mocha-webpack) est une surcouche de webpack + Mocha avec une expérience simplifiée et un mode de surveillance. Les bénéfices de cette installation sont que l'on peut avoir le support complet des composants monofichiers via webpack + `vue-loader`. Il y a cependant plus de configurations à réaliser.
-
-## Environnement du navigateur
-
-`vue-test-utils` se fie à un environnement de navigateur. Techniquement, vous pouvez le lancer dans un vrai navigateur, mais cela n'est pas recommandé dû à la complexité de lancer de réels navigateurs sur différentes plateformes. Au lieu de cela, nous recommandons de lancer les tests sous Node.js avec un environnement virtuel de navigateur en utilisant le [JSDOM](https://github.com/tmpvar/jsdom).
-
-Le lanceur de tests Jest installe automatiquement JSDOM. Pour d'autres lanceurs de tests, il faut le faire manuellement en utilisant [jsdom-global](https://github.com/rstacruz/jsdom-global) dans la déclaration de vos tests :
-
-``` bash
-npm install --save-dev jsdom jsdom-global
-```
----
-``` js
-// dans test setup / entry
-require('jsdom-global')()
-```
-
-## Tester des composants monofichiers
-
-Les composants Vue monofichiers nécessitent une étape de précompilation avant qu'ils soient lancés dans Node.js ou sur un navigateur. Il existe deux méthodes recommandées pour réaliser la compilation : avec un préprocesseur Jest ou directement en utilisant webpack.
-
-Le préprocesseur `vue-jest` supporte les fonctionnalités basiques des composants monofichiers. Il ne gère pas actuellement les blocs de style et les blocs personnalisés, qui sont eux uniquement supportés par `vue-loader`. Si vous utilisez ces fonctionnalités ou d'autres configurations liées à webpack, vous aurez besoin d'utiliser l'installation basée sur webpack + `vue-loader`
-
-Lisez les guides suivants pour différentes installations :
-
-- [Tester des composants monofichiers avec Jest](./testing-SFCs-with-jest.md)
-- [Tester des composants monofichiers avec Mocha + webpack](./testing-SFCs-with-mocha-webpack.md)
-
-## Ressources
-
-- [Comparaison de lanceurs de tests](https://github.com/eddyerburgh/vue-unit-test-perf-comparison)
-- [Projet exemple avec Jest](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Projet exemple avec Mocha](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [Projet exemple avec tape](https://github.com/eddyerburgh/vue-test-utils-tape-example)
-- [Projet exemple avec AVA](https://github.com/eddyerburgh/vue-test-utils-ava-example)
diff --git a/docs/fr/guides/common-tips.md b/docs/fr/guides/common-tips.md
deleted file mode 100644
index 9ac24bb2f..000000000
--- a/docs/fr/guides/common-tips.md
+++ /dev/null
@@ -1,132 +0,0 @@
-# Astuces
-
-## Savoir quoi tester
-
-Pour les composants graphiques (UI), nous ne recommandons pas une couverture complète. En effet, cela mène à trop d'attention sur les détails de l'implémentation interne des composants et pourrait produire des tests instables.
-
-A contrario, nous recommandons d'écrire des tests qui vérifient le bon fonctionnement de l'interface public de vos composants et ainsi traiter le cœur de ceux-ci telle une boîte noire. Un simple test pourrait vérifier qu'une entrée utilisateur (due à une interaction ou un changement de props) passée au composant nous donnerait le résultat attendu (cela peut être un nouveau rendu ou l'envoi d'un évènement).
-
-Par exemple, pour le composant `Counter`, qui incrémente un compteur visible de 1 à chaque fois qu'un bouton est cliqué, le scénario de test devrait simuler le clic puis s'assurer que le rendu visuel a bien été incrémenté d'un aussi. Le test se fiche de savoir comment le compteur a incrémenté la valeur, il s'occupe seulement de l'entrée et de la sortie (du résultat).
-
-Le bénéfice de cette approche est que tant que l'interface public de votre composant reste la même, vos tests passeront et ce peu importe le comportement interne de votre composant, qui pourrait changer avec le temps.
-
-Ce sujet est discuté plus en détails dans une [très bonne présentation de Matt O'Connell](http://slides.com/mattoconnell/deck#/).
-
-## Rendu superficiel
-
-Dans des tests unitaires, on souhaite s'intéresser au composant qui est en train d'être testé comme une unité isolée et ainsi éviter de s'assurer du bon comportement des composants enfants.
-
-De plus, pour les composants qui contiennent beaucoup de composants enfants, l'intégralité de l'arbre de rendu peut être énorme. Répétitivement rendre tous les composants pourrait réduire la vitesse de nos tests.
-
-`vue-test-utils` vous permets de monter un composant sans avoir à rendre ses composants enfants (en les ignorants) avec la méthode `shallow` :
-
-```js
-import { shallow } from '@vue/test-utils'
-
-const wrapper = shallow(Component) // retourne un wrapper contenant une instance de composant montée
-wrapper.vm // l'instance de Vue montée
-```
-
-## Assertion d'évènements émis
-
-Chaque wrapper monté va automatiquement enregistrer les évènements émis par l'instance de Vue en question. Vous pouvez récupérer ces évènements en utilisant la méthode `wrapper.emitted()` :
-
-``` js
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('foo', 123)
-
-/*
-`wrapper.emitted()` retourne l'objet suivant :
-{
- foo: [[], [123]]
-}
-*/
-```
-
-Vous pouvez ensuite réaliser des assertions sur ces données :
-``` js
-// asserte que l'évènement est bien émit
-expect(wrapper.emitted().foo).toBeTruthy()
-
-// asserte la taille du compteur d'évènement
-expect(wrapper.emitted().foo.length).toBe(2)
-
-// asserte le contenu lié à l'évènement
-expect(wrapper.emitted().foo[1]).toEqual([123])
-```
-
-Vous pouvez aussi récupérer un tableau des évènements dans l'ordre d'émition en appelant [`wrapper.emittedByOrder()`](../api/wrapper/emittedByOrder.md).
-
-## Manipuler l'état d'un composant
-
-Vous pouvez directement manipuler l'état d'un composant en utilisant la méthode `setData` ou `setProps` sur le wrapper :
-
-```js
-wrapper.setData({ count: 10 })
-
-wrapper.setProps({ foo: 'bar' })
-```
-
-## Simuler des props
-
-Vous pouvez passer des props au composant en utilisant l'option `propsData` de Vue :
-
-```js
-import { mount } from '@vue/test-utils'
-
-mount(Component, {
- propsData: {
- aProp: 'une valeur'
- }
-})
-```
-
-Vous pouvez aussi mettre à jour les props d'un composant déjà monté avec la méthode `wrapper.setProps({})`.
-
-*Pour une liste complète des options, veuillez regarder [la section sur les options de montage](../api/options.md) de la documentation.*
-
-## Appliquer des plugins globaux et des mixins
-
-Des composants pourraient se fier à des fonctionnalités injectées par un plugin global ou un mixin, par exemple `vuex` ou `vue-router`.
-
-Si vous écrivez des tests pour des composants dans une application spécifique, vous pouvez mettre en place les mêmes plugins globaux et mixins en une seule fois dans vos tests. Dans certains cas, comme tester un composant générique utilisé par des applications différentes, il est favorable de tester ces composants dans une installation plus isolée, sans avoir à polluer le constructeur global `Vue`. On peut utiliser la méthode [`createLocalVue`](../api/createLocalVue.md) pour faire cela :
-
-``` js
-import { createLocalVue } from '@vue/test-utils'
-
-// créer un constructeur local de `Vue`
-const localVue = createLocalVue()
-
-// installer des plugins comme d'habitude
-localVue.use(MyPlugin)
-
-// passe la `localVue` aux options de montage
-mount(Component, {
- localVue
-})
-```
-
-## Simuler des injections
-
-Une stratégie alternative pour injecter des propriétés est de simplement les simuler. Vous pouvez faire cela avec l'option `mocks` :
-
-```js
-import { mount } from '@vue/test-utils'
-
-const $route = {
- path: '/',
- hash: '',
- params: { id: '123' },
- query: { q: 'bonjour' }
-}
-
-mount(Component, {
- mocks: {
- $route // ajoute l'objet `$route` simulé à l'instance de Vue avant de monter le composant
- }
-})
-```
-
-## Gérer le routage
-
-Depuis que le routage, par définition, porte sur la structure générale de l'application et implique plusieurs composants. Il est mieux testé via des tests d'intégration ou point à point (end-to-end). Pour des composants individuels qui se fie aux fonctionnalités de `vue-router`, vous pouvez les simuler en utilisant les techniques mentionnées plus haut.
diff --git a/docs/fr/guides/dom-events.md b/docs/fr/guides/dom-events.md
deleted file mode 100644
index bc2ba58b7..000000000
--- a/docs/fr/guides/dom-events.md
+++ /dev/null
@@ -1,195 +0,0 @@
-# Tester le clavier, la souris et les autres évènements DOM
-
-## Déclencheur d'évènements
-
-
-Le `Wrapper` expose une méthode `trigger`. Elle peut être utilisée pour déclencher des évènements du DOM.
-
-```js
-const wrapper = mount(MyButton)
-
-wrapper.trigger('click')
-```
-
-Vous devez être au courant que la méthode `find` retourne aussi un `Wrapper`. En partant du principe que `MyComponent` contient un bouton, le code suivant clique sur le bouton.
-
-```js
-const wrapper = mount(MyComponent)
-
-wrapper.find('button').trigger('click')
-```
-
-## Options
-
-La méthode `trigger` prend en paramètre optionnel l'objet `options`. Les propriétés de l'objet `options` sont ajoutées à l'évènement.
-
-```js
-const wrapper = mount(MyButton)
-
-wrapper.trigger('click', { button: 0 })
-```
-
-
-## Exemple de clic de souris
-
-**Composant à tester**
-
-```html
-
-
-
-
-
-
-
-
-```
-
-**Test**
-
-```js
-import YesNoComponent from '@/components/YesNoComponent'
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-
-describe('Évènement click', () => {
- it("Cliquer sur le bouton oui appelle notre méthode avec l'argument « oui »", () => {
- const spy = sinon.spy()
- const wrapper = mount(YesNoComponent, {
- propsData: {
- callMe: spy
- }
- })
- wrapper.find('button.yes').trigger('click')
-
- spy.should.have.been.calledWith('oui')
- })
-})
-```
-
-## Exemple de test clavier
-
-**Composant à tester**
-
-Ce composant permet d'incrémenter / décrémenter la quantité en utilisant différentes touches.
-
-```html
-
-
-
-
-
-```
-
-**Test**
-
-```js
-import QuantityComponent from '@/components/QuantityComponent'
-import { mount } from '@vue/test-utils'
-
-describe('Tests événement clavier', () => {
- it('La quantité est zéro par défaut', () => {
- const wrapper = mount(QuantityComponent)
- expect(wrapper.vm.quantity).toBe(0)
- })
-
- it('La flèche du haut positionne la quantité à 1', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.trigger('keydown.up')
- expect(wrapper.vm.quantity).toBe(1)
- })
-
- it('La flèche du bas réduit la quantité de 1', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.vm.quantity = 5
- wrapper.trigger('keydown.down')
- expect(wrapper.vm.quantity).toBe(4)
- })
-
- it('La touche Échap positionne la quantité à 0', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.vm.quantity = 5
- wrapper.trigger('keydown.esc')
- expect(wrapper.vm.quantity).toBe(0)
- })
-
- it('Le caractère magique `a` positionne la quantité à 13', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.trigger('keydown', {
- which: 65
- })
- expect(wrapper.vm.quantity).toBe(13)
- })
-})
-
-```
-
-**Limitations**
-
-Un nom de touche après le point `keydown.up` est traduit vers un `keyCode`. Cela est supporté pour les noms suivant :
-
-* `enter`, `tab`, `delete`, `esc`, `space`, `up`, `down`, `left`, `right`
-
-## Important
-
-`vue-test-utils` déclenche les évènements de façon synchrone. Par conséquent, `vue.nextTick` n'est pas requis.
diff --git a/docs/fr/guides/getting-started.md b/docs/fr/guides/getting-started.md
deleted file mode 100644
index 8bd383b5b..000000000
--- a/docs/fr/guides/getting-started.md
+++ /dev/null
@@ -1,144 +0,0 @@
-# Pour commencer
-
-## Installation
-
-Pour avoir un rapide avant-gout de `vue-test-utils`, clonez notre répertoire de démonstration avec l'installation de base puis installez les dépendances :
-
-``` bash
-git clone https://github.com/vuejs/vue-test-utils-getting-started
-cd vue-test-utils-getting-started
-npm install
-```
-
-Vous allez voir que le projet possède un simple composant, `counter.js` :
-
-```js
-// counter.js
-
-export default {
- template: `
-
- {{ count }}
-
-
- `,
-
- data () {
- return {
- count: 0
- }
- },
-
- methods: {
- increment () {
- this.count++
- }
- }
-}
-```
-
-### Montages de composants
-
-`vue-test-utils` teste les composants Vue en les isolants puis en les montant, il simule les entrées nécessaires (props, injections et évènements utilisateur) et asserte les sorties (le rendu, les évènements émis).
-
-Les composants montés sont retournés dans un [Wrapper](../api/wrapper/), qui expose de nombreuses méthodes pour manipuler, traverser et interroger l'instance du composant Vue en question.
-
-Vous pouvez créer des wrappers en utilisant la méthode `mount`. Créons un fichier nommé `test.js` :
-
-```js
-// test.js
-
-// Importe la méthode `mount()` depuis test utils
-// et le composant qu'on souhaite tester
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-// On monte le composant et nous voilà avec un wrapper
-const wrapper = mount(Counter)
-
-// On accède à l'instance actuelle de Vue via `wrapper.vm`
-const vm = wrapper.vm
-
-// Pour inspecter le wrapper en profondeur, utilisez console
-// puis votre aventure avec vue-test-utils commence !
-console.log(wrapper)
-```
-
-### Tester le contenu du rendu HTML d'un composant
-
-Nous avons maintenant un wrapper, la première chose que l'on peut faire, c'est de vérifier que le contenu du rendu HTML du composant correspond à celui attendu.
-
-```js
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-describe('Counter', () => {
- // On monte le composant et nous voilà avec un wrapper
- const wrapper = mount(Counter)
-
- it('fait le rendu correctement', () => {
- expect(wrapper.html()).toContain('0')
- })
-
- // c'est aussi très simple de vérifier qu'un élément existe
- it('a un bouton', () => {
- expect(wrapper.contains('button')).toBe(true)
- })
-})
-```
-
-On peut maintenant lancer les tests avec `npm test`. Vous devriez voir les tests se lancer et réussir.
-
-### Simulation de l'interaction utilisateur
-
-Notre compteur devrait s'incrémenter quand l'utilisateur clique sur le bouton. Pour simuler ce comportement, on doit tout d'abord localiser le bouton avec `wrapper.find()`, qui retourne un **wrapper pour l'élément bouton**. On peut ensuite simuler un clic en appelant `.trigger()` sur le wrapper du bouton :
-
-```js
-it('le clic sur le bouton devrait incrémenter le compteur', () => {
- expect(wrapper.vm.count).toBe(0)
- const button = wrapper.find('button')
- button.trigger('click')
- expect(wrapper.vm.count).toBe(1)
-})
-```
-
-### Et quid de `nextTick` ?
-
-Vue groupe les mises à jour du DOM en attentes puis les appliquent de façon asynchrone pour prévenir d'éventuels multiples rendus causés par de multiples mutations de données. C'est pourquoi en pratique, on a souvent à utiliser `Vue.nextTick` pour attendre que Vue modifie le DOM actuel après avoir lancé quelques changements d'état.
-
-Pour simplifier cela, `vue-test-utils` applique toutes les mises à jour de façon synchrone afin que vous n'ayez pas besoin d'utiliser `Vue.nextTick` pour attendre des mises à jour du DOM dans vos tests.
-
-*Note : `nextTick` est toujours nécessaire quand vous souhaitez explicitement faire avancer la boucle des évènements, pour des opérations telles que des fonctions de rappel ou des résolutions de promesses.*
-
-Si vous avez toujours besoin de `nextTick` dans vos fichiers de tests, faites attention aux erreurs jetées aux erreurs lancées à l'intérieur qui peuvent ne pas être attrapées par votre lanceur de tests car il utilise des promesses. Il y a deux approches pour régler celà : vous pouvez affecter la fonction de rappel `done` du système de gestion d'erreurs globales de Vue au démarrage des tests, ou vous pouvez appeler `nextTick` sans argument pour l'utiliser sous forme de promesse :
-
-```js
-// ceci ne sera pas intercepté
-it("pas d'interception", (done) => {
- Vue.nextTick(() => {
- expect(true).toBe(false)
- done()
- })
-})
-
-// les deux tests ci-dessous vont fonctionner comme souhaité
-it("attraper l'erreur avec `done`", (done) => {
- Vue.config.errorHandler = done
- Vue.nextTick(() => {
- expect(true).toBe(false)
- done()
- })
-})
-
-it("attraper l'erreur avec une promesse", () => {
- return Vue.nextTick()
- .then(function () {
- expect(true).toBe(false)
- })
-})
-```
-
-## Et après ?
-
-- Intégrez `vue-test-utils` dans votre projet en [choisissant votre lanceur de tests](./choosing-a-test-runner.md)
-- En apprendre plus sur les [techniques et astuces pour écrire des tests](./common-tips.md)
diff --git a/docs/fr/guides/testing-SFCs-with-jest.md b/docs/fr/guides/testing-SFCs-with-jest.md
deleted file mode 100644
index a0a8f9937..000000000
--- a/docs/fr/guides/testing-SFCs-with-jest.md
+++ /dev/null
@@ -1,178 +0,0 @@
-# Tester des composants monofichiers avec Jest
-
-> Un exemple de projet pour cette installation est disponible sur [GitHub](https://github.com/vuejs/vue-test-utils-jest-example).
-
-Jest est un lanceur de tests développé par Facebook. Il a pour but de procurer une solution complète de tests unitaires. Vous pouvez en apprendre plus sur Jest sur [sa documentation officielle](https://facebook.github.io/jest/).
-
-## Installer Jest
-
-On va supposer que vous commencez avec une installation qui a déjà webpack, vue-loader et Babel correctement configurés (ex. le template `webpack-simple` via `vue-cli`).
-
-La première chose à faire est d'installer Jest et `vue-test-utils` :
-
-```bash
-$ npm install --save-dev jest @vue/test-utils
-```
-
-Ensuite, on doit définir un script dans notre `package.json`.
-
-```json
-// package.json
-{
- "scripts": {
- "test": "jest"
- }
-}
-```
-
-## Traiter les composants monofichiers dans Jest
-
-Pour indiquer à Jest comment traiter les fichiers `*.vue`, on va avoir besoin d'installer et de configurer le préprocesseur `vue-jest` :
-
-``` bash
-npm install --save-dev vue-jest
-```
-
-Ensuite, créez un objet `jest` dans `package.json` :
-
-``` json
-{
- // ...
- "jest": {
- "moduleFileExtensions": [
- "js",
- "json",
- // indique à Jest de gérer les fichiers `*.vue`
- "vue"
- ],
- "transform": {
- // traite les fichiers `*.vue` avec `vue-jest`
- ".*\\.(vue)$": "/node_modules/vue-jest"
- }
- }
-}
-```
-
-> **Note :** `vue-jest` ne supporte actuellement pas toutes les fonctionnalités de `vue-loader`, par exemple le support des blocs personnalisés et du chargement de styles. De plus, quelques fonctionnalités spécifiques à webpack comme la scission de code ne sont pas supportées. Pour les utiliser, lisez le guide sur [tester des composants monofichiers avec Mocha et webpack](./testing-SFCs-with-mocha-webpack.md).
-
-## Gérer les alias webpack
-
-Si vous utilisez un alias de résolution dans la configuration de webpack, c.-à-d. faire un alias `@` pour `/src`, vous devez aussi ajouter une configuration pour Jest en utilisant l'option `moduleNameMapper` :
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // supporte la même concordonance d'alias @ -> src dans le code source
- "moduleNameMapper": {
- "^@/(.*)$": "/src/$1"
- }
- }
-}
-```
-
-## Configurer Babel pour Jest
-
-
-Même si les dernières version de Node.js supportent la plupart des fonctionnalités ES2015, vous souhaitez quand même utiliser la syntaxe des modules ES ainsi que les fonctionnalités `stage-x` dans vos tests. Pour cela, on doit installer `babel-jest` :
-
-``` bash
-npm install --save-dev babel-jest
-```
-
-Ensuite, on doit indiquer à Jest de gérer les fichiers de tests JavaScript avec `babel-jest` en ajoutant une entrée sous `jest.transform` dans `package.json` :
-
-``` json
-{
- // ...
- "jest": {
- // ...
- "transform": {
- // ...
- // gérer le JavaScript avec `babel-jest`
- "^.+\\.js$": "/node_modules/babel-jest"
- },
- // ...
- }
-}
-```
-
-> Par défaut, `babel-jest` va automatiquement s'autoconfigurer dès l'installation. Cependant, comme nous avons explicitement ajouté une transformation pour les fichiers `*.vue`, on se doit aussi d'explicitement configurer `babel-jest`.
-
-En supposant que vous utilisez `babel-preset-env` avec webpack, la configuration par défaut de Babel désactive la transpilation des modules ES car webpack sait déjà comment traiter ces modules. Nous devons, cependant, l'activer pour nos tests car, Jest fonctionne directement dans Node.js.
-
-On doit aussi indiquer à `babel-preset-env` d'utiliser la version de Node.js que nous utilisons. Cela empêchera de transpiler inutilement des fonctionnalités et lancera nos tests plus rapidement.
-
-Pour appliquer ces options uniquement aux tests, mettez-les dans un fichier de configuration différent sous `env.test` (cela va être automatiquement être utilisé par `babel-jest`).
-
-Exemple `.babelrc`:
-
-``` json
-{
- "presets": [
- ["env", { "modules": false }]
- ],
- "env": {
- "test": {
- "presets": [
- ["env", { "targets": { "node": "current" }}]
- ]
- }
- }
-}
-```
-
-### Test d'instantanés
-
-Vous pouvez utiliser [`vue-server-renderer`](https://github.com/vuejs/vue/tree/dev/packages/vue-server-renderer) pour transformer un composant en une chaine de caractères afin de le sauvegarder dans un instantané pour [Jest tests d'instantanés](https://facebook.github.io/jest/docs/en/snapshot-testing.html).
-
-Le résultat du rendu de `vue-server-renderer` inclut quelques attributs spécifiques au rendu côté serveur. Il ignore les espaces, cela rend plus dur d'analyser une différence. On peut améliorer l'instantané sauvegardé avec un sérialiseur personnalisé :
-
-``` bash
-npm install --save-dev jest-serializer-vue
-```
-
-Puis configurez-le dans `package.json`:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // sérialiseur pour les instantanés
- "snapshotSerializers": [
- "/node_modules/jest-serializer-vue"
- ]
- }
-}
-```
-
-### Placer les fichiers de tests
-
-Par défaut, Jest va récursivement récupérer tous les fichiers qui ont une extension en `.spec.js` ou `.test.js` dans le projet. Si cela ne correspond pas à vos besoins, il est possible [de changer l'expression régulière `testRegex`](https://facebook.github.io/jest/docs/en/configuration.html#testregex-string) dans la configuration se trouvant dans `package.json`.
-
-Jest recommande de créer un répertoire `__tests__` au même niveau que le code testé, mais soyez libre de structurer vos tests selon vos besoins. Soyez juste au courant que Jest créera un répertoire `__snapshots__` au même niveau que les fichiers de tests qui travaillent sur des instantanés.
-
-### Exemple d'une spécification
-
-Si vous êtes habitué à Jasmine, vous devriez très bien vous en sortir avec [l'API d'assertions de Jest](https://facebook.github.io/jest/docs/en/expect.html#content) :
-
-```js
-import { mount } from '@vue/test-utils'
-import Component from './component'
-
-describe('Component', () => {
- test('est une instance de Vue', () => {
- const wrapper = mount(Component)
- expect(wrapper.isVueInstance()).toBeTruthy()
- })
-})
-```
-
-### Ressources
-
-- [Projet exemple pour cette installation](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Exemples et diapositives depuis la Vue Conf 2017](https://github.com/codebryo/vue-testing-with-jest-conf17)
-- [Jest](https://facebook.github.io/jest/)
-- [Babel preset env](https://github.com/babel/babel-preset-env)
diff --git a/docs/fr/guides/testing-SFCs-with-mocha-webpack.md b/docs/fr/guides/testing-SFCs-with-mocha-webpack.md
deleted file mode 100644
index 7f2482174..000000000
--- a/docs/fr/guides/testing-SFCs-with-mocha-webpack.md
+++ /dev/null
@@ -1,180 +0,0 @@
-# Tester des composants monofichiers avec Mocha + webpack
-
-> Un exemple de projet pour cette installation est disponible sur [GitHub](https://github.com/vuejs/vue-test-utils-mocha-webpack-example).
-
-Une des stratégies pour tester des composants monofichiers est de compiler tous nos tests via webpack puis de les passer dans un lanceur de tests. L'avantage de cette approche est qu'elle procure un support complet pour les fonctionnalités de webpack et de `vue-loader`, et ce, afin de ne pas réaliser de compromis dans notre code.
-
-Techniquement, vous pouvez utiliser n'importe quel lanceur de tests et relier le tout manuellement. Cependant, nous avons trouvé [`mocha-webpack`](https://github.com/zinserjan/mocha-webpack) qui procure une expérience très simplifiée pour cette tâche particulière.
-
-## Mettre en place `mocha-webpack`
-
-On va supposer que vous commencez avec une installation qui a déjà webpack, vue-loader et Babel correctement configurés (cf. le template `webpack-simple` via `vue-cli`).
-
-La première chose à faire est d'installer les dépendances de tests :
-
-``` bash
-npm install --save-dev @vue/test-utils mocha mocha-webpack
-```
-
-Ensuite, on doit définir un script test dans notre `package.json`.
-
-```json
-// package.json
-{
- "scripts": {
- "test": "mocha-webpack --webpack-config webpack.config.js --require test/setup.js test/**/*.spec.js"
- }
-}
-```
-
-Quelques éléments importants à noter :
-
-- Le paramètre `--webpack-config` indique le fichier de configuration webpack à utiliser pour les tests. Dans la plupart des cas, c'est identique à la configuration du projet actuel avec une petite modification. On en reparlera plus tard.
-
-- Le paramètre `--require` permet de s'assurer que le fichier `test/setup.js` est bien exécuté avant les tests. Dans celui-ci, on met en place l'environnement où nos tests vont être exécutés.
-
-- Le dernier paramètre est un glob pour indiquer les fichiers de tests à inclure dans le paquetage.
-
-### Configuration supplémentaire pour webpack
-
-#### Externaliser les dépendances npm
-
-Dans nos tests, nous allons surement importer un nombre conséquent de dépendances npm, certaines d'entre elles n'ont pas été conçues pour une utilisation dans un navigateur et ne peuvent être empaquetées par webpack. Il faut aussi considérer qu'externaliser les dépendances augmente énormément la vitesse de lancement des tests. On peut externaliser toutes les dépendances npm avec `webpack-node-externals` :
-
-```js
-// webpack.config.js
-const nodeExternals = require('webpack-node-externals')
-
-module.exports = {
- // ...
- externals: [nodeExternals()]
-}
-```
-
-#### Coordinateur de sources
-
-La coordinateur de sources (« Source maps ») doit être indiquée pour être utilisé par `mocha-webpack`. La configuration recommandée est la suivante :
-
-``` js
-module.exports = {
- // ...
- devtool: 'inline-cheap-module-source-map'
-}
-```
-
-Si vous déboguez via votre IDE, il est recommandé d'ajouter la configuration suivante :
-
-``` js
-module.exports = {
- // ...
- output: {
- // ...
- // utiliser des chemins absolus (c'est important si vous déboguez avec un IDE)
- devtoolModuleFilenameTemplate: '[absolute-resource-path]',
- devtoolFallbackModuleFilenameTemplate: '[absolute-resource-path]?[hash]'
- }
-}
-```
-
-### Mettre en place l'environnement du navigateur
-
-`vue-test-utils` requiert en environnement de navigateur pour fonctionner. On peut le simuler avec Node.js en utilisant `jsdom-global` :
-
-```bash
-npm install --save-dev jsdom jsdom-global
-```
-
-Puis dans `test/setup.js`:
-
-``` js
-require('jsdom-global')()
-```
-
-Cela ajoute un environnement de navigateur dans Node.js afin que `vue-test-utils` fonctionne correctement.
-
-### Choisir une bibliothèque d'assertions
-
-[Chai](http://chaijs.com/) est une bibliothèque populaire qui est généralement utilisée avec Mocha. Vous pouvez aussi jeter un coup d'œil à [Sinon](http://sinonjs.org/) pour créer des espions et des fonctions avec un comportement pré-programmé (« stubs »).
-
-Vous pouvez utiliser, alternativement, `expect` qui fait maintenant partie de Jest et expose [la même API](http://facebook.github.io/jest/docs/en/expect.html#content) dans la documentation de Jest.
-
-On va utiliser `expect` et le rendre globalement accessible afin de ne pas avoir à l'importer pour chaque test :
-
-``` bash
-npm install --save-dev expect
-```
-
-Puis dans `test/setup.js`:
-
-``` js
-require('jsdom-global')()
-
-global.expect = require('expect')
-```
-
-### Optimiser Babel pour les tests
-
-Notez que nous utilisons `babel-loader` pour gérer JavaScript. Vous devriez déjà avoir Babel de configuré si vous l'utilisez dans votre application via un fichier `.babelrc`. Ici `babel-loader` va automatiquement utiliser le même fichier de configuration.
-
-Une autre chose à noter est que si vous utilisez une version de Node.js 6+, qui supporte déjà une majorité des fonctionnalités d'ES2015, vous pouvez configurer séparément un autre Babel [env option](https://babeljs.io/docs/usage/babelrc/#env-option) qui va uniquement transpiler les fonctionnalités non supportées dans la version de Node.js que vous utilisez (c.-à-d. `stage-2` ou le support de la syntaxe flow, etc.).
-
-### Ajouter un test
-
-Créez dans le dossier `src` un fichier nommé `Counter.vue`:
-
-``` html
-
-
- {{ counter }}
-
-
-
-
-
-```
-
-Puis créez un test nommé `test/Counter.spec.js` avec le code suivant :
-
-```js
-import { shallow } from '@vue/test-utils'
-import Counter from '../src/Counter.vue'
-
-describe('Counter.vue', () => {
- it('incrémente le compteur quand le bouton est cliqué', () => {
- const wrapper = shallow(Counter)
- wrapper.find('button').trigger('click')
- expect(wrapper.find('div').text()).toMatch('1')
- })
-})
-```
-
-Et maintenant on peut lancer le test avec :
-
-```
-npm run unit
-```
-
-Woohoo, nos tests fonctionnent !
-
-### Ressources
-
-- [Projet exemple pour cette installation](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [Mocha](https://mochajs.org/)
-- [mocha-webpack](http://zinserjan.github.io/mocha-webpack/)
-- [Chai](http://chaijs.com/)
-- [Sinon](http://sinonjs.org/)
-- [jest/expect](http://facebook.github.io/jest/docs/en/expect.html#content)
diff --git a/docs/fr/guides/using-with-vue-router.md b/docs/fr/guides/using-with-vue-router.md
deleted file mode 100644
index 9d43677dd..000000000
--- a/docs/fr/guides/using-with-vue-router.md
+++ /dev/null
@@ -1,72 +0,0 @@
-# Utilisation avec Vue Router
-
-## Installer Vue Router pour nos tests
-
-Vous ne devez jamais installer Vue Router sur le constructeur de base de Vue pour vos tests. Installer Vue Router de cette manière ajoute `$route` et `$router` en tant que propriétés en lecture seule sur le prototype Vue.
-
-Pour éviter cela, on peut utiliser une `localVue`, et installer Vue Router dessus.
-
-```js
-import VueRouter from 'vue-router'
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-const router = new VueRouter()
-
-shallow(Component, {
- localVue,
- router
-})
-```
-
-## Tester des composants qui utilisent `router-link` ou `router-view`
-
-Quand vous installez Vue Router, les composants `router-link` et `router-view` sont enregistrés. Cela veut dire que l'on peut les utiliser n'importe où dans notre application sans avoir besoin de les importer.
-
-On doit donc rendre ces composants Vue Router disponibles au composant que nous testons. Il y a deux méthodes pour cela.
-
-### Utiliser des stubs
-
-```js
-shallow(Component, {
- stubs: ['router-link', 'router-view']
-})
-```
-
-### Installer Vue Router et `localVue`
-
-```js
-import VueRouter from 'vue-router'
-const localVue = createLocalVue()
-
-localVue.use(VueRouter)
-
-shallow(Component, {
- localVue
-})
-```
-
-## Simuler `$route` et `$router`
-
-Quelques fois, vous souhaitez tester qu'un composant réagisse correctement avec les paramètres des objets `$route` et `$router`. Pour cela, vous pouvez passer des imitations à l'instance de Vue.
-
-```js
-const $route = {
- path: '/un/super/chemin'
-}
-
-const wrapper = shallow(Component, {
- mocks: {
- $route
- }
-})
-
-wrapper.vm.$route.path // `'/un/super/chemin'`
-```
-
-## Trucs et astuces
-
-Installer Vue Router ajoute `$route` et `$router` en tant que propriétés en lecture seule au prototype de Vue.
-
-Cela veut dire que n'importe quel futur test qui va essayer de modifier `$route` ou `$router` va échouer.
-
-Pour éviter cela, n'installez jamais Vue Router quand vous lancez vos tests.
diff --git a/docs/fr/guides/using-with-vuex.md b/docs/fr/guides/using-with-vuex.md
deleted file mode 100644
index 1146ffb66..000000000
--- a/docs/fr/guides/using-with-vuex.md
+++ /dev/null
@@ -1,265 +0,0 @@
-# Utiliser avec Vuex
-
-Dans ce guide, nous allons voir comment tester Vuex dans des composants grâce à `vue-test-utils`.
-
-## Simuler des actions
-
-Regardons un peu de code !
-
-Ci-dessous, le composant que nous voulons tester. Il fait appel à des actions Vuex.
-
-``` html
-
-
-
-
-
-
-
-
-```
-
-Pour les objectifs de ce test, on se fiche de ce que les actions font, ou à ce quoi le store ressemble. On doit juste savoir si ces actions sont lancées lorsqu'elles sont supposées l'être, et ce, avec les valeurs attendues.
-
-Pour tester cela, on doit passer un store fictif à Vue lorsque l'on isole notre composant.
-
-Au lieu de passer le store au constructeur de base de Vue, on peut le passer à - [`localVue`](../api/options.md#localvue). Un `localVue` est un constructeur à portée limitée de Vue sur lequel on peut effectuer des changements sans avoir à affecter le constructeur global.
-
-Voyons à quoi cela ressemble :
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Actions from '../../../src/components/Actions'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Actions.vue', () => {
- let actions
- let store
-
- beforeEach(() => {
- actions = {
- actionClick: jest.fn(),
- actionInput: jest.fn()
- }
- store = new Vuex.Store({
- state: {},
- actions
- })
- })
-
- it("appelle l'action `actionInput` du store quand la valeur du champ est `input` et qu'un évènement `input` est lancé", () => {
- const wrapper = shallow(Actions, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'input'
- input.trigger('input')
- expect(actions.actionInput).toHaveBeenCalled()
- })
-
- it("n'appelle pas l'action `actionInput` du store quand la valeur du champ n'est pas `input` et qu'un évènement `input` est lancé", () => {
- const wrapper = shallow(Actions, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'not input'
- input.trigger('input')
- expect(actions.actionInput).not.toHaveBeenCalled()
- })
-
- it("appelle l'action `actionClick` quand le bouton est cliqué", () => {
- const wrapper = shallow(Actions, { store, localVue })
- wrapper.find('button').trigger('click')
- expect(actions.actionClick).toHaveBeenCalled()
- })
-})
-```
-
-Que se passe-t-il ici ? Premièrement, on indique à Vue d'utiliser Vuex avec la méthode `localVue.use`. C'est tout simplement une surcouche de `Vue.use`.
-
-On va ensuite créer un store fictif en appelant `new Vuex.Store` avec nos propres valeurs. À noter que l'on indique uniquement nos actions, car on ne s'intéresse qu'à elles.
-
-Les actions sont des [fonctions de simulations de Jest](https://facebook.github.io/jest/docs/en/mock-functions.html). Ces fonctions nous donnent accès à des méthodes afin de réaliser des assertions si l'action a été appelée ou non.
-
-On peut ensuite s'assurer dans nos tests que les actions ont été appelées au bon moment.
-
-La manière dont on définit le store peut vous paraitre un peu étrange.
-
-On utilise `beforeEach` pour s'assurer que nous avons un store propre avant chaque test. `beforeEach` est un hook de Mocha qui est appelé avant chaque test. Dans nos tests, on réassigne des valeurs aux variables du store. Si on ne le fait pas, les fonctions de simulations auraient besoin d'être automatiquement réinitialisées. Cela nous laisse la possibilité de changer l'état dans nos tests, sans avoir à affecter les prochains.
-
-La chose la plus importante à noter dans ce test est que **l'on crée une simulation d'un store Vuex, qui est ensuite passé à `vue-test-utils`**.
-
-Génial, on peut désormais simuler des actions. Allons avoir comment simuler des accesseurs !
-
-## Simuler des accesseurs
-
-``` html
-
-
-
{{inputValue}}
-
{{clicks}}
-
-
-
-
-```
-
-C'est un composant relativement simple. Il affiche le résultat des accesseurs `clicks` et `inputValue`. Encore une fois, on se fiche de savoir ce que ces accesseurs retournent. On souhaite juste savoir si les résultats sont affichés correctement.
-
-Jetons un œil à un test :
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Getters from '../../../src/components/Getters'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Getters.vue', () => {
- let getters
- let store
-
- beforeEach(() => {
- getters = {
- clicks: () => 2,
- inputValue: () => 'input'
- }
-
- store = new Vuex.Store({
- getters
- })
- })
-
- it('affiche `state.inputValue` dans la première balise
', () => {
- const wrapper = shallow(Getters, { store, localVue })
- const p = wrapper.find('p')
- expect(p.text()).toBe(getters.inputValue())
- })
-
- it('affiche `stat.clicks` dans la seconde balise
', () => {
- const wrapper = shallow(Getters, { store, localVue })
- const p = wrapper.findAll('p').at(1)
- expect(p.text()).toBe(getters.clicks().toString())
- })
-})
-```
-
-Ce test est similaire à notre test sur les actions. On créer un store fictif avant chaque test, on le passe ensuite comme une option lorsque l'on appelle `shallow`. Pour finir, on asserte que la valeur retournée par nos accesseurs fictifs est bien affichée.
-
-C'est génial, mais comment faisons-nous pour vérifier que nos accesseurs retournent correctement les parties de l'état ?
-
-## Simulation avec des modules
-
-Les [modules](https://vuex.vuejs.org/en/modules.html) sont utiles pour séparer un store en plusieurs morceaux. Ils exportent des accesseurs que l'on peut utiliser dans nos tests.
-
-Jetons un œil à ce composant :
-
-``` html
-
-
-
-
{{moduleClicks}}
-
-
-
-
-```
-
-Simple composant qui possède une action et un accesseur.
-
-Et le test :
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Modules from '../../../src/components/Modules'
-import module from '../../../src/store/module'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Modules.vue', () => {
- let actions
- let state
- let store
-
- beforeEach(() => {
- state = {
- module: {
- clicks: 2
- }
- }
-
- actions = {
- moduleActionClick: jest.fn()
- }
-
- store = new Vuex.Store({
- state,
- actions,
- getters: module.getters
- })
- })
-
- it("appelle l'action du store moduleActionClick quand le bouton est cliqué", () => {
- const wrapper = shallow(Modules, { store, localVue })
- const button = wrapper.find('button')
- button.trigger('click')
- expect(actions.moduleActionClick).toHaveBeenCalled()
- })
-
- it('affiche `state.inputValue` dans la première balise
', () => {
- const wrapper = shallow(Modules, { store, localVue })
- const p = wrapper.find('p')
- expect(p.text()).toBe(state.module.clicks.toString())
- })
-})
-```
-
-### Ressources
-
-- [Projet exemple pour ce guide](https://github.com/eddyerburgh/vue-test-utils-vuex-example)
-- [`localVue`](../api/options.md#localvue)
-- [`createLocalVue`](../api/createLocalVue.md)
diff --git a/docs/guides/README.md b/docs/guides/README.md
new file mode 100644
index 000000000..f57bd9e3a
--- /dev/null
+++ b/docs/guides/README.md
@@ -0,0 +1,12 @@
+# Guides
+
+!!!include(docs/guides/getting-started.md)!!!
+!!!include(docs/guides/common-tips.md)!!!
+!!!include(docs/guides/dom-events.md)!!!
+!!!include(docs/guides/choosing-a-test-runner.md)!!!
+!!!include(docs/guides/testing-SFCs-with-jest.md)!!!
+!!!include(docs/guides/testing-SFCs-with-mocha-webpack.md)!!!
+!!!include(docs/guides/testing-SFCs-with-karma.md)!!!
+!!!include(docs/guides/testing-async-components.md)!!!
+!!!include(docs/guides/using-with-vue-router.md)!!!
+!!!include(docs/guides/using-with-vuex.md)!!!
\ No newline at end of file
diff --git a/docs/en/guides/choosing-a-test-runner.md b/docs/guides/choosing-a-test-runner.md
similarity index 96%
rename from docs/en/guides/choosing-a-test-runner.md
rename to docs/guides/choosing-a-test-runner.md
index 08373a3ce..ba43906f1 100644
--- a/docs/en/guides/choosing-a-test-runner.md
+++ b/docs/guides/choosing-a-test-runner.md
@@ -1,4 +1,4 @@
-# Choosing a test runner
+## Choosing a test runner
A test runner is a program that runs tests.
@@ -10,7 +10,7 @@ There are a few things to consider when choosing a test runner though: feature s
- [mocha-webpack](https://github.com/zinserjan/mocha-webpack) is a wrapper around webpack + Mocha, but with a more streamlined interface and watch mode. The benefits of this setup is that we can get complete SFC support via webpack + `vue-loader`, but it requires more configuration upfront.
-## Browser Environment
+### Browser Environment
Vue Test Utils relies on a browser environment. Technically you can run it in a real browser, but it's not recommended due to the complexity of launching real browsers on different platforms. Instead, we recommend running the tests in Node with a virtual browser environment using [JSDOM](https://github.com/tmpvar/jsdom).
@@ -25,7 +25,7 @@ npm install --save-dev jsdom jsdom-global
require('jsdom-global')()
```
-## Testing Single-File Components
+### Testing Single-File Components
Single-file Vue components (SFCs) require pre-compilation before they can be run in Node or in the browser. There are two recommended ways to perform the compilation: with a Jest preprocessor, or directly use webpack.
@@ -36,7 +36,7 @@ Read the following guides for different setups:
- [Testing SFCs with Jest](./testing-SFCs-with-jest.md)
- [Testing SFCs with Mocha + webpack](./testing-SFCs-with-mocha-webpack.md)
-## Resources
+### Resources
- [Test runner performance comparison](https://github.com/eddyerburgh/vue-unit-test-perf-comparison)
- [Example project with Jest](https://github.com/vuejs/vue-test-utils-jest-example)
diff --git a/docs/en/guides/common-tips.md b/docs/guides/common-tips.md
similarity index 95%
rename from docs/en/guides/common-tips.md
rename to docs/guides/common-tips.md
index cb518b2bb..a183eaa50 100644
--- a/docs/en/guides/common-tips.md
+++ b/docs/guides/common-tips.md
@@ -1,6 +1,6 @@
-# Common Tips
+## Common Tips
-## Knowing What to Test
+### Knowing What to Test
For UI components, we don't recommend aiming for complete line-based coverage, because it leads to too much focus on the internal implementation details of the components and could result in brittle tests.
@@ -12,7 +12,7 @@ The benefit of this approach is that as long as your component's public interfac
This topic is discussed with more details in a [great presentation by Matt O'Connell](http://slides.com/mattoconnell/deck#/).
-## Shallow Rendering
+### Shallow Rendering
In unit tests, we typically want to focus on the component being tested as an isolated unit and avoid indirectly asserting the behavior of its child components.
@@ -27,7 +27,7 @@ const wrapper = shallowMount(Component) // returns a Wrapper containing a mounte
wrapper.vm // the mounted Vue instance
```
-## Asserting Emitted Events
+### Asserting Emitted Events
Each mounted wrapper automatically records all events emitted by the underlying Vue instance. You can retrieve the recorded events using the `wrapper.emitted()` method:
@@ -58,7 +58,7 @@ expect(wrapper.emitted().foo[1]).toEqual([123])
You can also get an Array of the events in their emit order by calling [`wrapper.emittedByOrder()`](../api/wrapper/emittedByOrder.md).
-## Manipulating Component State
+### Manipulating Component State
You can directly manipulate the state of the component using the `setData` or `setProps` method on the wrapper:
@@ -68,7 +68,7 @@ wrapper.setData({ count: 10 })
wrapper.setProps({ foo: 'bar' })
```
-## Mocking Props
+### Mocking Props
You can pass props to the component using Vue's built-in `propsData` option:
@@ -86,7 +86,7 @@ You can also update the props of an already-mounted component with the `wrapper.
*For a full list of options, please see the [mount options section](../api/options.md) of the docs.*
-## Applying Global Plugins and Mixins
+### Applying Global Plugins and Mixins
Some of the components may rely on features injected by a global plugin or mixin, for example `vuex` and `vue-router`.
@@ -109,7 +109,7 @@ mount(Component, {
**Note some plugins, like Vue Router, add read-only properties to the global Vue constructor. This makes it impossible to reinstall the plugin on a `localVue` constructor, or add mocks for these read-only properties**
-## Mocking Injections
+### Mocking Injections
Another strategy for injected props is simply mocking them. You can do that with the `mocks` option:
@@ -130,10 +130,10 @@ mount(Component, {
})
```
-## Dealing with Routing
+### Dealing with Routing
Since routing by definition has to do with the overall structure of the application and involves multiple components, it is best tested via integration or end-to-end tests. For individual components that rely on `vue-router` features, you can mock them using the techniques mentioned above.
-## Detecting styles
+### Detecting styles
Your test can only detect inline styles when running in `jsdom`.
diff --git a/docs/en/guides/dom-events.md b/docs/guides/dom-events.md
similarity index 96%
rename from docs/en/guides/dom-events.md
rename to docs/guides/dom-events.md
index 63d4f9222..6761f31e7 100644
--- a/docs/en/guides/dom-events.md
+++ b/docs/guides/dom-events.md
@@ -1,6 +1,6 @@
-# Testing Key, Mouse and other DOM events
+## Testing Key, Mouse and other DOM events
-## Trigger events
+### Trigger events
The `Wrapper` expose a `trigger` method. It can be used to trigger DOM events.
@@ -18,7 +18,7 @@ const wrapper = mount(MyComponent)
wrapper.find('button').trigger('click')
```
-## Options
+### Options
The `trigger` method takes an optional `options` object. The properties in the `options` object are added to the Event.
@@ -31,7 +31,7 @@ wrapper.trigger('click', { button: 0 })
```
-## Mouse Click Example
+### Mouse Click Example
**Component under test**
@@ -85,7 +85,7 @@ describe('Click event', () => {
})
```
-## Keyboard Example
+### Keyboard Example
**Component under test**
@@ -207,6 +207,6 @@ A key name after the dot `keydown.up` is translated to a `keyCode`. This is supp
| pageup | 33 |
| pagedown | 34 |
-## Important
+### Important
Vue Test Utils triggers event synchronously. Consequently, `Vue.nextTick` is not required.
diff --git a/docs/en/guides/getting-started.md b/docs/guides/getting-started.md
similarity index 99%
rename from docs/en/guides/getting-started.md
rename to docs/guides/getting-started.md
index e93c081bb..504a6220e 100644
--- a/docs/en/guides/getting-started.md
+++ b/docs/guides/getting-started.md
@@ -1,6 +1,6 @@
-# Getting Started
+## Getting Started
-## Setup
+### Setup
To get a quick taste of using Vue Test Utils, clone our demo repository with basic setup and install the dependencies:
@@ -138,7 +138,7 @@ it('will catch the error using a promise', () => {
})
```
-## What's Next
+### What's Next
- Integrate Vue Test Utils into your project by [choosing a test runner](./choosing-a-test-runner.md).
- Learn more about [common techniques when writing tests](./common-tips.md).
diff --git a/docs/en/guides/testing-SFCs-with-jest.md b/docs/guides/testing-SFCs-with-jest.md
similarity index 96%
rename from docs/en/guides/testing-SFCs-with-jest.md
rename to docs/guides/testing-SFCs-with-jest.md
index 119f8e506..821c2fc5f 100644
--- a/docs/en/guides/testing-SFCs-with-jest.md
+++ b/docs/guides/testing-SFCs-with-jest.md
@@ -1,10 +1,10 @@
-# Testing Single File Components with Jest
+## Testing Single File Components with Jest
> An example project for this setup is available on [GitHub](https://github.com/vuejs/vue-test-utils-jest-example).
Jest is a test runner developed by Facebook, aiming to deliver a battery-included unit testing solution. You can learn more about Jest on its [official documentation](https://facebook.github.io/jest/).
-## Setting up Jest
+#### Setting up Jest
We will assume you are starting with a setup that already has webpack, vue-loader and Babel properly configured - e.g. the `webpack-simple` template scaffolded by `vue-cli`.
@@ -25,7 +25,7 @@ Next we need to define a unit script in our `package.json`.
}
```
-## Processing SFCs in Jest
+### Processing SFCs in Jest
To teach Jest how to process `*.vue` files, we will need to install and configure the `vue-jest` preprocessor:
@@ -55,7 +55,7 @@ Next, create a `jest` block in `package.json`:
> **Note:** `vue-jest` currently does not support all the features of `vue-loader`, for example custom block support and style loading. In addition, some webpack-specific features such as code-splitting are not supported either. To use these unsupported features, you need to use Mocha instead of Jest to run your tests, and webpack to compile your components. To get started, read the guide on [testing SFCs with Mocha + webpack](./testing-SFCs-with-mocha-webpack.md).
-## Handling webpack Aliases
+### Handling webpack Aliases
If you use a resolve alias in the webpack config, e.g. aliasing `@` to `/src`, you need to add a matching config for Jest as well, using the `moduleNameMapper` option:
@@ -72,7 +72,7 @@ If you use a resolve alias in the webpack config, e.g. aliasing `@` to `/src`, y
}
```
-## Configuring Babel for Jest
+### Configuring Babel for Jest
Although latest versions of Node already supports most ES2015 features, you may still want to use ES modules syntax and stage-x features in your tests. For that we need to install `babel-jest`:
@@ -123,7 +123,7 @@ Example `.babelrc`:
}
```
-## Snapshot Testing
+### Snapshot Testing
You can use [`vue-server-renderer`](https://github.com/vuejs/vue/tree/dev/packages/vue-server-renderer) to render a component into a string so that it can be saved as a snapshot for [Jest snapshot testing](https://facebook.github.io/jest/docs/en/snapshot-testing.html).
@@ -148,13 +148,13 @@ Then configure it in `package.json`:
}
```
-## Placing Test Files
+### Placing Test Files
By default, Jest will recursively pick up all files that have a `.spec.js` or `.test.js` extension in the entire project. If this does not fit your needs, it's possible [to change the `testRegex`](https://facebook.github.io/jest/docs/en/configuration.html#testregex-string) in the config section in the `package.json` file.
Jest recommends creating a `__tests__` directory right next to the code being tested, but feel free to structure your tests as you see fit. Just beware that Jest would create a `__snapshots__` directory next to test files that performs snapshot testing.
-## Coverage
+### Coverage
Jest can be used to generate coverage reports in multiple formats. The following is a simple example to get started with:
@@ -186,7 +186,7 @@ This will enable coverage reports with the [default coverage reporters](https://
Further documentation can be found in the [Jest configuration documentation](https://facebook.github.io/jest/docs/en/configuration.html#collectcoverage-boolean), where you can find options for coverage thresholds, target output directories, etc.
-## Example Spec
+### Example Spec
If you are familiar with Jasmine, you should feel right at home with Jest's [assertion API](https://facebook.github.io/jest/docs/en/expect.html#content):
@@ -202,7 +202,7 @@ describe('Component', () => {
})
```
-## Resources
+### Resources
- [Example project for this setup](https://github.com/vuejs/vue-test-utils-jest-example)
- [Examples and slides from Vue Conf 2017](https://github.com/codebryo/vue-testing-with-jest-conf17)
diff --git a/docs/en/guides/testing-SFCs-with-karma.md b/docs/guides/testing-SFCs-with-karma.md
similarity index 98%
rename from docs/en/guides/testing-SFCs-with-karma.md
rename to docs/guides/testing-SFCs-with-karma.md
index 84ec750f9..273de449e 100644
--- a/docs/en/guides/testing-SFCs-with-karma.md
+++ b/docs/guides/testing-SFCs-with-karma.md
@@ -1,10 +1,10 @@
-# Testing Single File Components with Karma
+## Testing Single File Components with Karma
> An example project for this setup is available on [GitHub](https://github.com/eddyerburgh/vue-test-utils-karma-example).
Karma is a test runner that launches browsers, runs tests, and reports them back to us. We're going to use the Mocha framework to write the tests. We'll use the chai library for test assertions.
-## Setting up Mocha
+### Setting up Mocha
We will assume you are starting with a setup that already has webpack, vue-loader and Babel properly configured - e.g. the `webpack-simple` template scaffolded by `vue-cli`.
diff --git a/docs/en/guides/testing-SFCs-with-mocha-webpack.md b/docs/guides/testing-SFCs-with-mocha-webpack.md
similarity index 98%
rename from docs/en/guides/testing-SFCs-with-mocha-webpack.md
rename to docs/guides/testing-SFCs-with-mocha-webpack.md
index da81bad3a..a46149f66 100644
--- a/docs/en/guides/testing-SFCs-with-mocha-webpack.md
+++ b/docs/guides/testing-SFCs-with-mocha-webpack.md
@@ -1,4 +1,4 @@
-# Testing Single File Components with Mocha + webpack
+## Testing Single File Components with Mocha + webpack
> An example project for this setup is available on [GitHub](https://github.com/vuejs/vue-test-utils-mocha-webpack-example).
@@ -6,7 +6,7 @@ Another strategy for testing SFCs is compiling all our tests via webpack and the
You can technically use any test runner you like and manually wire things together, but we've found [`mocha-webpack`](https://github.com/zinserjan/mocha-webpack) to provide a very streamlined experience for this particular task.
-## Setting Up `mocha-webpack`
+### Setting Up `mocha-webpack`
We will assume you are starting with a setup that already has webpack, vue-loader and Babel properly configured - e.g. the `webpack-simple` template scaffolded by `vue-cli`.
diff --git a/docs/en/guides/testing-async-components.md b/docs/guides/testing-async-components.md
similarity index 99%
rename from docs/en/guides/testing-async-components.md
rename to docs/guides/testing-async-components.md
index e22fbd74d..19307989a 100644
--- a/docs/en/guides/testing-async-components.md
+++ b/docs/guides/testing-async-components.md
@@ -1,4 +1,4 @@
-# Testing Asynchronous Behavior
+## Testing Asynchronous Behavior
To simplify testing, Vue Test Utils applies DOM updates _synchronously_. However, there are some techniques you need to be aware of when testing a component with asynchronous behavior such as callbacks or promises.
diff --git a/docs/en/guides/using-with-vue-router.md b/docs/guides/using-with-vue-router.md
similarity index 92%
rename from docs/en/guides/using-with-vue-router.md
rename to docs/guides/using-with-vue-router.md
index 1b06c6a63..36ecde098 100644
--- a/docs/en/guides/using-with-vue-router.md
+++ b/docs/guides/using-with-vue-router.md
@@ -1,6 +1,6 @@
-# Using with Vue Router
+## Using with Vue Router
-## Installing Vue Router in tests
+### Installing Vue Router in tests
You should never install Vue Router on the Vue base constructor in tests. Installing Vue Router adds `$route` and `$router` as read-only properties on Vue prototype.
@@ -22,7 +22,7 @@ shallowMount(Component, {
> **Note:** Installing Vue Router on a `localVue` also adds `$route` and `$router` as read-only properties to a `localVue`. This means you can not use the `mocks` option to overwrite `$route` and `$router` when mounting a component using a `localVue` with Vue Router installed.
-## Testing components that use `router-link` or `router-view`
+### Testing components that use `router-link` or `router-view`
When you install Vue Router, the `router-link` and `router-view` components are registered. This means we can use them anywhere in our application without needing to import them.
@@ -52,7 +52,7 @@ shallowMount(Component, {
})
```
-## Mocking `$route` and `$router`
+### Mocking `$route` and `$router`
Sometimes you want to test that a component does something with parameters from the `$route` and `$router` objects. To do that, you can pass custom mocks to the Vue instance.
@@ -72,7 +72,7 @@ const wrapper = shallowMount(Component, {
wrapper.vm.$route.path // /some/path
```
-## Common gotchas
+### Common gotchas
Installing Vue Router adds `$route` and `$router` as read-only properties on Vue prototype.
diff --git a/docs/en/guides/using-with-vuex.md b/docs/guides/using-with-vuex.md
similarity index 99%
rename from docs/en/guides/using-with-vuex.md
rename to docs/guides/using-with-vuex.md
index 51b959026..54d65f764 100644
--- a/docs/en/guides/using-with-vuex.md
+++ b/docs/guides/using-with-vuex.md
@@ -1,9 +1,7 @@
-# Using with Vuex
+## Using with Vuex
In this guide, we'll see how to test Vuex in components with Vue Test Utils, and how to approach testing a Vuex store.
-## Testing Vuex in components
-
### Mocking Actions
Let’s look at some code.
@@ -261,7 +259,7 @@ describe('Modules.vue', () => {
})
```
-## Testing a Vuex Store
+### Testing a Vuex Store
There are two approaches to testing a Vuex store. The first approach is to unit test the getters, mutations, and actions separately. The second approach is to create a store and test against that. We'll look at both approaches.
@@ -382,7 +380,7 @@ test('updates evenOrOdd getter when increment is commited', () => {
Notice that we use `cloneDeep` to clone the store config before creating a store with it. This is because Vuex mutates the options object used to create the store. To make sure we have a clean store in each test, we need to clone the `storeConfig` object.
-## Resources
+### Resources
- [Example project for testing the components](https://github.com/eddyerburgh/vue-test-utils-vuex-example)
- [Example project for testing the store](https://github.com/eddyerburgh/testing-vuex-store-example)
diff --git a/docs/ja/SUMMARY.md b/docs/ja/SUMMARY.md
deleted file mode 100644
index 33778ad6a..000000000
--- a/docs/ja/SUMMARY.md
+++ /dev/null
@@ -1,74 +0,0 @@
-## 目次
-
-* [ガイド](guides/README.md)
- * [はじめる](guides/getting-started.md)
- * [一般的なヒント](guides/common-tips.md)
- * [キー、マウス、その他の DOM イベントのテスト](guides/dom-events.md)
- * [テストランナを選ぶ](guides/choosing-a-test-runner.md)
- * [Jest による単一ファイルコンポーネントのテスト](guides/testing-SFCs-with-jest.md)
- * [Mocha + webpack による単一ファイルコンポーネントのテスト](guides/testing-SFCs-with-mocha-webpack.md)
- * [Karma による単一ファイルコンポーネントのテスト](guides/testing-SFCs-with-karma.md)
- * [非同期動作のテスト](guides/testing-async-components.md)
- * [Vue Router と一緒に使う](guides/using-with-vue-router.md)
- * [Vuex と一緒に使う](guides/using-with-vuex.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallowMount](api/shallowMount.md)
- * [render](api/render.md)
- * [renderToString](api/renderToString.md)
- * [マウンティングオプション](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [scopedSlots](api/options.md#scopedslots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- - [provide](api/options.md#provide)
- - [sync](api/options.md#sync)
- - [その他のオプション](api/options.md#その他のオプション)
- * [Wrapper](api/wrapper/README.md)
- * [attributes](api/wrapper/attributes.md)
- * [classes](api/wrapper/classes.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [props](api/wrapper/props.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [isVisible](api/wrapper/isVisible.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [filter](api/wrapper-array/filter.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [isVisible](api/wrapper-array/isVisible.md)
- * [コンポーネント](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [RouterLinkStub](api/components/RouterLinkStub.md)
- * [セレクタ](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [config](api/config.md)
diff --git a/docs/ja/api/README.md b/docs/ja/api/README.md
index 45b73b9ce..2b2d30a97 100644
--- a/docs/ja/api/README.md
+++ b/docs/ja/api/README.md
@@ -1,62 +1,9 @@
# API
-* [mount](./mount.md)
-* [shallowMount](./shallowMount.md)
-* [render](./render.md)
-* [renderToString](./renderToString.md)
-* [マウンティングオプション](./options.md)
- - [context](./options.md#context)
- - [slots](./options.md#slots)
- - [scopedSlots](./options.md#scopedslots)
- - [stubs](./options.md#stubs)
- - [mocks](./options.md#mocks)
- - [localVue](./options.md#localvue)
- - [attachToDocument](./options.md#attachtodocument)
- - [attrs](./options.md#attrs)
- - [listeners](./options.md#listeners)
- - [provide](./options.md#provide)
- - [sync](./options.md#sync)
- - [その他のオプション](./options.md#その他のオプション)
-* [Wrapper](./wrapper/README.md)
- * [attributes](./wrapper/attributes.md)
- * [classes](./wrapper/classes.md)
- * [contains](./wrapper/contains.md)
- * [emitted](./wrapper/emitted.md)
- * [emittedByOrder](./wrapper/emittedByOrder.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper/destroy.md)
- * [find](./wrapper/find.md)
- * [findAll](./wrapper/findAll.md)
- * [html](./wrapper/html.md)
- * [is](./wrapper/is.md)
- * [isEmpty](./wrapper/isEmpty.md)
- * [isVueInstance](./wrapper/isVueInstance.md)
- * [name](./wrapper/name.md)
- * [props](./wrapper/props.md)
- * [setData](./wrapper/setData.md)
- * [setMethods](./wrapper/setMethods.md)
- * [setProps](./wrapper/setProps.md)
- * [text](./wrapper/text.md)
- * [trigger](./wrapper/trigger.md)
- * [isVisible](./wrapper/isVisible.md)
-* [WrapperArray](./wrapper-array/README.md)
- * [at](./wrapper-array/at.md)
- * [contains](./wrapper-array/contains.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper-array/destroy.md)
- * [filter](./wrapper-array/filter.md)
- * [is](./wrapper-array/is.md)
- * [isEmpty](./wrapper-array/isEmpty.md)
- * [isVueInstance](./wrapper-array/isVueInstance.md)
- * [setData](./wrapper-array/setData.md)
- * [setMethods](./wrapper-array/setMethods.md)
- * [setProps](./wrapper-array/setProps.md)
- * [trigger](./wrapper-array/trigger.md)
- * [isVisible](./wrapper-array/isVisible.md)
-* [コンポーネント](./components/README.md)
- * [TransitionStub](./components/TransitionStub.md)
- * [TransitionGroupStub](./components/TransitionGroupStub.md)
- * [RouterLinkStub](./components/RouterLinkStub.md)
-* [セレクタ](./selectors.md)
-* [createLocalVue](./createLocalVue.md)
-* [config](./config.md)
+!!!include(docs/ja/api/mount.md)!!!
+!!!include(docs/ja/api/shallowMount.md)!!!
+!!!include(docs/ja/api/render.md)!!!
+!!!include(docs/ja/api/renderToString.md)!!!
+!!!include(docs/ja/api/selectors.md)!!!
+!!!include(docs/ja/api/createLocalVue.md)!!!
+!!!include(docs/ja/api/config.md)!!!
\ No newline at end of file
diff --git a/docs/ja/api/components/README.md b/docs/ja/api/components/README.md
index ebc2e5f80..b0bf022bb 100644
--- a/docs/ja/api/components/README.md
+++ b/docs/ja/api/components/README.md
@@ -2,4 +2,6 @@
vue-test-utils にはコンポーネントをスタブするためのユーティリティコンポーネントがあります。
-[TransitionStub](./TransitionStub.md) と [TransitionGroupStub](./TransitionGroupStub.md) はデフォルトで `transition` コンポーネントと `transition-group` コンポーネントをスタブすることに使用されます。 これらのスタブは `config` で変更することができます。
+!!!include(docs/ja/api/components/RouterLinkStub.md)!!!
+!!!include(docs/ja/api/components/TransitionStub.md)!!!
+!!!include(docs/ja/api/components/TransitionGroupStub.md)!!!
\ No newline at end of file
diff --git a/docs/ja/api/components/RouterLinkStub.md b/docs/ja/api/components/RouterLinkStub.md
index 177a82533..151a81b42 100644
--- a/docs/ja/api/components/RouterLinkStub.md
+++ b/docs/ja/api/components/RouterLinkStub.md
@@ -1,4 +1,4 @@
-# RouterLinkStub
+## RouterLinkStub
Vue Router の `router-link` コンポーネントをスタブするためのコンポーネントです。
diff --git a/docs/ja/api/components/TransitionGroupStub.md b/docs/ja/api/components/TransitionGroupStub.md
index 8ef23d05a..e1403f47e 100644
--- a/docs/ja/api/components/TransitionGroupStub.md
+++ b/docs/ja/api/components/TransitionGroupStub.md
@@ -1,4 +1,4 @@
-# TransitionGroupStub
+## TransitionGroupStub
`transition-group` コンポーネントをスタブするためのコンポーネントです。これはトランジションを非同期で実行する代わりに、子コンポーネントを同期的に返します。
diff --git a/docs/ja/api/components/TransitionStub.md b/docs/ja/api/components/TransitionStub.md
index 6c4cddc42..af115a4f9 100644
--- a/docs/ja/api/components/TransitionStub.md
+++ b/docs/ja/api/components/TransitionStub.md
@@ -1,4 +1,4 @@
-# TransitionStub
+## TransitionStub
`transition` コンポーネントをスタブするためのコンポーネントです。これはトランジションを非同期で実行する代わりに、子コンポーネントを同期的に返します。
diff --git a/docs/ja/api/config.md b/docs/ja/api/config.md
index 9f114afe6..05bfc63f0 100644
--- a/docs/ja/api/config.md
+++ b/docs/ja/api/config.md
@@ -1,10 +1,10 @@
-# config
+## Config
vue-test-utils にはオプションを定義するための `config` オプションがあります。
-## `vue-test-utils` `config` オプション
+### vue-test-utils` `config` オプション
-### `stubs`
+#### stubs`
- 型: `Object`
- デフォルト: `{
@@ -24,7 +24,7 @@ import VueTestUtils from '@vue/test-utils'
VueTestUtils.config.stubs['my-component'] = '
')
-```
diff --git a/docs/kr/api/wrapper/is.md b/docs/kr/api/wrapper/is.md
deleted file mode 100644
index f501fa897..000000000
--- a/docs/kr/api/wrapper/is.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# is(selector)
-
-`Wrapper` DOM 노드 또는 `vm`이 [selector](../selectors.md)와 일치하는지 검증합니다.
-
-- **전달인자:**
- - `{string|Component} selector`
-
-- **반환값:** `{boolean}`
-
-- **예제:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.is('div')).toBe(true)
-```
diff --git a/docs/kr/api/wrapper/isEmpty.md b/docs/kr/api/wrapper/isEmpty.md
deleted file mode 100644
index defb1f13b..000000000
--- a/docs/kr/api/wrapper/isEmpty.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# isEmpty()
-
-`Wrapper`가 자식 노드가 없는지 검증합니다.
-
-- **반환값:** `{boolean}`
-
-- **예제:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.isEmpty()).toBe(true)
-```
diff --git a/docs/kr/api/wrapper/isVueInstance.md b/docs/kr/api/wrapper/isVueInstance.md
deleted file mode 100644
index ce07ad3bc..000000000
--- a/docs/kr/api/wrapper/isVueInstance.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# isVueInstance()
-
-`Wrapper`가 Vue 인스턴스인지 검증합니다.
-
-- **반환값:** `{boolean}`
-
-- **예제:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.isVueInstance()).toBe(true)
- ```
diff --git a/docs/kr/api/wrapper/name.md b/docs/kr/api/wrapper/name.md
deleted file mode 100644
index 96c2963da..000000000
--- a/docs/kr/api/wrapper/name.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# name()
-
-`Wrapper`가 Vue 인스턴스를 가지고 있으면 이름을 반환하고, `Wrapper`가 Vue 인스턴스를 포함하지 않으면 DOM 노드의 태그 이름을 반환합니다.
-
-- **반환값:** `{string}`
-
-- **예제:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.name()).toBe('Foo')
-const p = wrapper.find('p')
-expect(p.name()).toBe('p')
-```
diff --git a/docs/kr/api/wrapper/setData.md b/docs/kr/api/wrapper/setData.md
deleted file mode 100644
index 8c69c8d42..000000000
--- a/docs/kr/api/wrapper/setData.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# setData(data)
-
-`Wrapper` `vm`의 데이터를 갱신합니다.
-
-**참고: Wrapper는 Vue 인스턴스를 반드시 가지고 있어야합니다.**
-
-- **전달인자:**
- - `{Object} data`
-
-- **예제:**
-
-```js
-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')
-```
diff --git a/docs/kr/api/wrapper/setMethods.md b/docs/kr/api/wrapper/setMethods.md
deleted file mode 100644
index 03adc9e0e..000000000
--- a/docs/kr/api/wrapper/setMethods.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# setMethods(methods)
-
-`Wrapper` `vm`의 메소드를 갱신합니다.
-
-**참고: Wrapper는 Vue 인스턴스를 반드시 가지고 있어야합니다.**
-
-- **전달인자:**
- - `{Object} methods`
-
-- **예제:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const clickMethodStub = sinon.stub()
-
-wrapper.setMethods({ clickMethod: clickMethodStub })
-wrapper.find('button').trigger('click')
-expect(clickMethodStub.called).toBe(true)
-```
diff --git a/docs/kr/api/wrapper/setProps.md b/docs/kr/api/wrapper/setProps.md
deleted file mode 100644
index 745509e75..000000000
--- a/docs/kr/api/wrapper/setProps.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# setProps(props)
-
-- **전달인자:**
- - `{Object} props`
-
-- **사용법:**
-
-`Wrapper` `vm` props를 갱신합니다.
-
-**참고: Wrapper는 Vue 인스턴스를 반드시 가지고 있어야합니다.**
-
-```js
-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')
-```
-
-전달받은 값으로 Vue 인스턴스를 초기화하는 `propsData` 객체를 전달할 수 있습니다.
-
-``` js
-// Foo.vue
-export default {
- props: {
- foo: {
- type: String,
- required: true
- }
- }
-}
-```
-
-``` js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo, {
- propsData: {
- foo: 'bar'
- }
-})
-
-expect(wrapper.vm.foo).toBe('bar')
-```
diff --git a/docs/kr/api/wrapper/text.md b/docs/kr/api/wrapper/text.md
deleted file mode 100644
index 51a886a6f..000000000
--- a/docs/kr/api/wrapper/text.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# text()
-
-`Wrapper`가 가지고 있는 문자열을 반환합니다.
-
-- **반환값:** `{string}`
-
-- **예제:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.text()).toBe('bar')
-```
diff --git a/docs/kr/api/wrapper/trigger.md b/docs/kr/api/wrapper/trigger.md
deleted file mode 100644
index 8e090392a..000000000
--- a/docs/kr/api/wrapper/trigger.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# trigger(eventName)
-
-`Wrapper` DOM 노드의 이벤트를 트리거합니다.
-
-트리거는 선택적으로 `options` 객체를 가질 수 있습니다. `options` 객체의 속성이 이벤트에 추가됩니다.
-
-- **전달인자:**
- - `{string} eventName`
- - `{Object} options`
-
-- **예제:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo'
-
-const clickHandler = sinon.stub()
-const wrapper = mount(Foo, {
- propsData: { clickHandler }
-})
-
-wrapper.trigger('click')
-
-wrapper.trigger('click', {
- button: 0
-})
-
-expect(clickHandler.called).toBe(true)
-```
diff --git a/docs/kr/guides/README.md b/docs/kr/guides/README.md
deleted file mode 100644
index d7f0c991f..000000000
--- a/docs/kr/guides/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# 가이드
-
-* [시작하기](./getting-started.md)
-* [일반적인 팁](./common-tips.md)
-* [마우스, 키 그리고 기타 DOM 이벤트](./dom-events.md)
-* [테스트 러너 선택하기](./choosing-a-test-runner.md)
-* [Jest 사용하기](./using-with-jest.md)
-* [Jest로 싱글 파일 컴포넌트 테스트](./testing-SFCs-with-jest.md)
-* [Mocha + webpack으로 싱글 파일 컴포넌트 테스트](./testing-SFCs-with-mocha-webpack.md)
-* [Vue Router 사용하기](./using-with-vue-router.md)
-* [Vuex 사용하기](./using-with-vuex.md)
diff --git a/docs/kr/guides/choosing-a-test-runner.md b/docs/kr/guides/choosing-a-test-runner.md
deleted file mode 100644
index 53a8b8471..000000000
--- a/docs/kr/guides/choosing-a-test-runner.md
+++ /dev/null
@@ -1,45 +0,0 @@
-# 테스트 러너 선택하기
-
-테스트 러너는 테스트를 실행하는 프로그램입니다.
-
-JavaScript 에는 유명한 테스트 러너가 많이 있습니다. `vue-test-utils`는 모든 테스트 러너와 함께 사용할 수 있습니다. 이는 테스트 러너 종류와는 상관없습니다.
-
-테스트 러너를 선택할 때는 기능 세트, 성능 및 싱글 파일 컴포넌트, 사전 컴파일 지원 등을 지원하는지 등 몇 가지 사항을 고려해야 합니다. 기존 라이브러리들을 신중하게 비교한 결과, 다음 두 가지 테스트 러너를 권장합니다:
-
-- [Jest](https://facebook.github.io/jest/docs/en/getting-started.html#content)는 완벽한 기능을 갖춘 테스트 러너입니다. 최소한의 설정이 필요하며, 기본적으로 JSDOM을 갖추었고, 내장된 검증 도구를 제공하며, 커맨드 라인 사용성이 뛰어납니다. 그러나 테스트에서 싱글 파일 컴포넌트(SFC: single-file component)를 가져오려면 프리 프로세서(사전 처리 과정)가 필요합니다. 우리는 일반적인 싱글 파일 컴포넌트를 처리할 수 있도록 `vue-jest` 프리프로세서를 만들었습니다. 하지만 vue-loader와 기능적으로 100% 같지는 않습니다.
-
-- [mocha-webpack](https://github.com/zinserjan/mocha-webpack)는 webpack + Mocha에 대한 래퍼이지만 간소화된 인터페이스와 감시 모드를 제공합니다. 이 설정의 장점은 webpack + `vue-loader`를 통해 완전한 싱글 파일 컴포넌트 지원을 할 수 있다는 점입니다. 그러나 더 많은 설정이 필요합니다.
-
-## 브라우저 환경
-
-`vue-test-utils`는 브라우저 환경에 의존합니다. 기술적으로 실제 브라우저에서 실행할 수 있으나 다른 플랫폼에서 실제 브라우저를 실행해야 하는 복잡함 때문에 권장하지 않습니다. 대신 [JSDOM](https://github.com/tmpvar/jsdom)을 사용해 가상 브라우저 환경에서 Node.js의 테스트를 실행하는 것이 좋습니다.
-
-Jest 테스트 러너는 JSDOM을 자동으로 설정합니다. 다른 테스트 러너의 경우 테스트 항목에 [jsdom-global](https://github.com/rstacruz/jsdom-global)을 사용하여 테스트용 JDOM을 수동으로 설정할 수 있습니다:
-
-``` bash
-npm install --save-dev jsdom jsdom-global
-```
----
-``` js
-// 테스트 셋업 / 시작점에서
-require('jsdom-global')()
-```
-
-## 싱글 파일 컴포넌트 테스트
-
-싱글 파일 Vue 컴포넌트 (SFCs)는 노드 또는 브라우저에서 실행하기 전에 미리 컴파일해야합니다. 컴파일하는 두가지 방법을 권장합니다. Jest 프리프로세서를 사용하거나 직접 webpack을 이용하세요
-
-`vue-jest` 프리프로세서의 경우 기본적인 SFC 기능을 지원하나, 현재 `vue-loader`만 지원하는 스타일 블럭이나 커스텀 블럭을 처리하지 않습니다. 이런 기능이나 다른 웹팩 특정 설정에 의존하는 경우 webpack + `vue-loader` 기반으로 설치해야합니다.
-
-아래 내용에 따라 다른 설정을 할 수 있습니다.
-
-- [Jest로 싱글 파일 컴포넌트 테스트](./testing-SFCs-with-jest.md)
-- [Mocha + webpack로 싱글 파일 컴포넌트 테스트](./testing-SFCs-with-mocha-webpack.md)
-
-## 리소스
-
-- [테스트 러너 퍼포먼스 비교](https://github.com/eddyerburgh/vue-unit-test-perf-comparison)
-- [Jest 예제](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Mocha 예제](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [tape 예제](https://github.com/eddyerburgh/vue-test-utils-tape-example)
-- [AVA 예제](https://github.com/eddyerburgh/vue-test-utils-ava-example)
diff --git a/docs/kr/guides/common-tips.md b/docs/kr/guides/common-tips.md
deleted file mode 100644
index 5205b7cc9..000000000
--- a/docs/kr/guides/common-tips.md
+++ /dev/null
@@ -1,133 +0,0 @@
-# 일반적인 팁
-
-## 어떤것을 테스트해야 할까요
-
-UI 컴포넌트의 경우, 내부 구현에 집중하다 보면 너무 많은 내부 구현을 살펴보아야 하기 때문에, 테스트 작성에 소홀하게 되어 나중에는 테스트가 어렵습니다. 그래서 코드 한 줄 한 줄을 모두 테스트하는 것을 추천하지 않습니다.
-
-대신, 컴포넌트 퍼블릭 인터페이스를 확인하는 테스트를 작성하는 것을 추천합니다. 그리고 내부를 블랙박스로 취급해야 합니다. 하나의 테스트 케이스는 컴포넌트에 전달된 일부 입력 (사용자 인터렉션 또는 props 변경)이 예상되는 대로 출력(렌더링 된 결과 또는 방출된 사용자 정의 이벤트)되는지 확인 해야합니다.
-
-예를 들어 버튼을 클릭할 때마다 카운터를 1씩 증가하는 `Counter` 컴포넌트의 경우, 해당 테스트 케이스가 클릭을 시뮬레이션하고, 렌더링 된 출력이 1씩 증가했음을 검증합니다. 이 테스트에서는 구현 방식은 생각하지 않고, 카운터의 값을 증가시키는 입력과 출력만 고려합니다.
-
-이 접근 방식의 장점은 컴포넌트의 퍼블릭 인터페이스가 동일하게 유지되는 한 컴포넌트 내부 구현이 어떻게 변경되더라도 테스트가 통과된다는 것입니다.
-
-이 주제는 [Matt O'Connell의 훌륭한 발표](http://slides.com/mattoconnell/deck#/)를 확인하세요
-
-## 얕은(Shallow) 렌더링
-
-유닛 테스트에서, 보통 컴포넌트를 독립된 단위로 격리시켜 간접적으로 자식 컴포넌트의 동작을 실행하는 것을 피합니다.
-
-이에 더하여, 많은 자식 컴포넌트를 가진 컴포넌트는 렌더링 된 트리 전체가 커질 수 있습니다. 반복적으로 모든 자식 컴포넌트를 렌더링하면 테스트 속도가 느려질 수 있습니다.
-
-`vue-test-utils`는 `shallow` 메소드를 이용해 자식 컴포넌트를 렌더링하지 않고 (스텁으로) 컴포넌트를 마운트할 수 있게 합니다.
-
-```js
-import { shallow } from '@vue/test-utils'
-
-const wrapper = shallow(Component) // 마운트된 컴포넌트 인스턴트를 포함한 래퍼를 반환
-wrapper.vm // 마운트된 Vue 인스턴스
-```
-
-## 방출된 이벤트 검증
-
-마운트된 각 래퍼는 자동으로 Vue 인스턴스에 의해 생성된 모든 이벤트를 기록합니다. `wrapper.emitted()` 메소드를 사용해 기록된 이벤트를 검색할 수 있습니다.
-
-``` js
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('foo', 123)
-
-/*
-wrapper.emitted() 는 다음 객체를 반환합니다.
-{
- foo: [[], [123]]
-}
-*/
-```
-
-그런 다음 위 데이터 기반으로 검증할 수 있습니다.
-
-``` js
-// 방출된 이벤트 검증
-expect(wrapper.emitted().foo).toBeTruthy()
-
-// 이벤트 갯수 검증
-expect(wrapper.emitted().foo.length).toBe(2)
-
-// 이벤트 페이로드 검증
-expect(wrapper.emitted().foo[1]).toEqual([123])
-```
-
-[wrapper.emittedByOrder()](../api/wrapper/emittedByOrder.md)를 호출하여 이벤트 배열을 방출될 순서대로 가져올 수 있습니다.
-
-## 컴포넌트 상태 조작
-
-래퍼에서 `setData` 또는 `setProps` 메소드를 사용하여 컴포넌트 상태를 직접 조작할 수 있습니다.
-
-```js
-wrapper.setData({ count: 10 })
-
-wrapper.setProps({ foo: 'bar' })
-```
-
-## Props 목킹
-
-Vue에 내장된 `propsData` 옵션을 이용해 컴포넌트에 props에 전달할 수 있습니다.
-
-```js
-import { mount } from '@vue/test-utils'
-
-mount(Component, {
- propsData: {
- aProp: 'some value'
- }
-})
-```
-
-이미 마운트 된 컴포넌트의 props를 갱신하려면 `wrapper.setProps({})`을 이용합니다.
-
-*전체 옵션은 문서의 [마운트 옵션](../api/options.md)을 확인하세요*
-
-## 글로벌 플러그인과 믹스인 적용
-
-일부 컴포넌트는 글로벌 플러그인 또는 믹스인에 의존한 기능이 있을 수 있습니다. 예를 들어 `vuex`와 `vue-router`가 있습니다.
-
-특정 앱의 컴포넌트에 대한 테스트를 작성하는 경우 동일한 글로벌 플러그인과 믹스인을 테스트 항목에 한번만 설정할 수 있습니다. 그러나 일부 앱에서 공유할 수 있는 일반적인 컴포넌트들을 테스트하는 경우에는 글로벌 `Vue` 생성자를 오염시키지 않고 격리시켜 컴포넌트를 테스트하는 것이 좋습니다. [createLocalVue](../api/createLocalVue.md) 메소드를 사용해 다음과 같이 할 수 있습니다.
-
-``` js
-import { createLocalVue } from '@vue/test-utils'
-
-// 확장된 Vue 생성자를 만듭니다.
-const localVue = createLocalVue()
-
-// 일반적으로 사용하듯 플러그인을 설치합니다.
-localVue.use(MyPlugin)
-
-// 마운트 옵션에 localVue를 전달합니다.
-mount(Component, {
- localVue
-})
-```
-
-## 인젝션 목킹
-
-간단하게 모의 속성을 주입하는 또 다른 방법은, `mocks` 옵션을 이용해 목킹하면 됩니다.
-
-```js
-import { mount } from '@vue/test-utils'
-
-const $route = {
- path: '/',
- hash: '',
- params: { id: '123' },
- query: { q: 'hello' }
-}
-
-mount(Component, {
- mocks: {
- $route // 컴포넌트를 마운트하기 전에 목킹된 $route 객체를 Vue 인스턴스에 추가합니다.
- }
-})
-```
-
-## 라우팅 다루기
-
-정의를 이용한 라우팅은 전반적인 앱 구조와 여러 컴포넌트와 관련되므로 통합 또는 엔드-투-엔드 테스트에서 가장 잘 테스트 할 수 있습니다. `vue-router` 기능에 의존하는 개별 컴포넌트의 경우, 위의 방법을 사용하여 목킹할 수 있습니다.
diff --git a/docs/kr/guides/dom-events.md b/docs/kr/guides/dom-events.md
deleted file mode 100644
index c5b6ed91d..000000000
--- a/docs/kr/guides/dom-events.md
+++ /dev/null
@@ -1,194 +0,0 @@
-# 마우스, 키 그리고 기타 DOM 이벤트 테스팅
-
-## 이벤트 트리거
-
-`Wrapper`는 `trigger` 메소드를 노출합니다. 이 메소드로 DOM 이벤트를 트리거(발생하게)합니다.
-
-```js
-const wrapper = mount(MyButton)
-
-wrapper.trigger('click')
-```
-
-`find`를 이용하면, 리턴값이 래퍼가 돌아온다는 것을 알고 있어야 합니다. `MyComponent`속에 버튼이 포함되어 있다고 가정하면 다음 코드가 버튼을 클릭을 발생시킵니다.
-
-```js
-const wrapper = mount(MyComponent)
-
-wrapper.find('button').trigger('click')
-```
-
-## 옵션
-
-트리거 메소드는 선택적으로 `options` 객체를 가질 수 있습니다. 이 `options` 객체의 속성이 이벤트에 추가됩니다.
-
-```js
-const wrapper = mount(MyButton)
-
-wrapper.trigger('click', { button: 0 })
-```
-
-
-## 마우스 클릭 예제
-
-**테스트할 컴포넌트**
-
-```html
-
-
-
-
-
-
-
-
-```
-
-**테스트**
-
-```js
-import YesNoComponent from '@/components/YesNoComponent'
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon' // sinon.js
-
-describe('Click event', () => {
- it('Click on yes button calls our method with argument "yes"', () => {
- const spy = sinon.spy()
- const wrapper = mount(YesNoComponent, {
- propsData: {
- callMe: spy
- }
- })
- wrapper.find('button.yes').trigger('click')
-
- spy.should.have.been.calledWith('yes')
- })
-})
-```
-
-## 키보드 예제
-
-**테스트할 컴포넌트**
-
-이 컴포넌트는 다양한 키조작으로 증감을 처리합니다.
-
-```html
-
-
-
-
-
-```
-
-**Test**
-
-```js
-import QuantityComponent from '@/components/QuantityComponent'
-import { mount } from '@vue/test-utils'
-
-describe('Key event tests', () => {
- it('Quantity is zero by default', () => {
- const wrapper = mount(QuantityComponent)
- expect(wrapper.vm.quantity).toBe(0)
- })
-
- it('Cursor up sets quantity to 1', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.trigger('keydown.up')
- expect(wrapper.vm.quantity).toBe(1)
- })
-
- it('Cursor down reduce quantity by 1', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.vm.quantity = 5
- wrapper.trigger('keydown.down')
- expect(wrapper.vm.quantity).toBe(4)
- })
-
- it('Escape sets quantity to 0', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.vm.quantity = 5
- wrapper.trigger('keydown.esc')
- expect(wrapper.vm.quantity).toBe(0)
- })
-
- it('Magic character "a" sets quantity to 13', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.trigger('keydown', {
- which: 65
- })
- expect(wrapper.vm.quantity).toBe(13)
- })
-})
-
-```
-
-**제한 사항**
-
-`keydown.up` 처럼, 점 뒤에 있는 키 이름은 `keyCode`로 반환됩니다. 현재 다음 이름들만 지원하고 있습니다.
-
-* enter, tab, delete, esc, space, up, down, left, right
-
-## 중요
-
-vue-test-utils는 이벤트를 동기적으로 트리거 합니다. 따라서, `Vue.nextTick`은 필요하지 않습니다.
diff --git a/docs/kr/guides/getting-started.md b/docs/kr/guides/getting-started.md
deleted file mode 100644
index 954affb9b..000000000
--- a/docs/kr/guides/getting-started.md
+++ /dev/null
@@ -1,149 +0,0 @@
-# 시작하기
-
-## 설치
-
-`vue-test-utils`를 빠르게 맛보려면 제공하는 기본적인 설정이 되어있는 데모 저장소를 클론하세요.
-
-
-``` bash
-git clone https://github.com/vuejs/vue-test-utils-getting-started
-cd vue-test-utils-getting-started
-npm install
-```
-
-프로젝트에 포함된 간단한 예제 컴포넌트인 `counter.js`를 볼 수 있습니다.
-
-```js
-// counter.js
-
-export default {
- template: `
-
- {{ count }}
-
-
- `,
-
- data () {
- return {
- count: 0
- }
- },
-
- methods: {
- increment () {
- this.count++
- }
- }
-}
-```
-
-### 컴포넌트 마운팅
-
-`vue-test-utils`는 Vue Component를 독립적으로 마운팅하고, 필요한 것들(props, injections, 사용자 이벤트)을 목킹(mocking)할 수 있고 결과(렌더링된 결과, 방출된 커스텀 이벤트)를 검증할 수 있습니다.
-
-마운트된 컴포넌트는 [Wrapper](../api/wrapper/) 내부에 반환됩니다. 래퍼는 컴포넌트 내부를 조회, 탐색, 조작 등을 할 수 있는 여러가지 유용한 메소드 지원합니다.
-
-래퍼를 만들기 위해 `mount` 메소드를 사용합니다. 이제, `test.js` 파일을 만드세요
-
-```js
-// test.js
-
-// mount() 메소드를 테스트 유틸에서 임포트합니다.
-// 그리고 테스트할 컴포넌트를 가져옵니다.
-
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-// 컴포넌트를 마운트하여 래퍼를 얻습니다.
-const wrapper = mount(Counter)
-
-// 실제 Vue 인스턴스는 wrapper.vm로 접근할 수 있습니다.
-const vm = wrapper.vm
-
-// 콘솔 로그를 사용해 래퍼의 내부를 살펴볼 수 있습니다.
-// 이제 vue-test-utils와 함께 모험을 시작하세요
-console.log(wrapper)
-```
-
-### 컴포넌트에서 렌더링 된 HTML 출력 테스트
-
-래퍼를 얻었으니 처음으로 할 일은 컴포넌트가 렌더링한 HTML이 예상하는 것과 같은지 살펴봅니다.
-
-```js
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-describe('Counter', () => {
- // 컴포넌트를 마운트하여 래퍼를 얻습니다.
- const wrapper = mount(Counter)
-
- it('renders the correct markup', () => {
- expect(wrapper.html()).toContain('0')
- })
-
- // 엘리먼트 유무를 확인하는 것도 쉽습니다.
- it('has a button', () => {
- expect(wrapper.contains('button')).toBe(true)
- })
-})
-```
-
-`npm test`를 실행하면 테스트를 통과한 것을 볼 수 있습니다.
-
-### 사용자 조작 시뮬레이션
-
-우리의 카운터는 사용자가 버튼을 누르면 증가해야합니다. 이 행동을 시뮬레이션 하려면, 가장 먼저 `wrapper.find()`를 사용 해 버튼의 위치를 찾아야 합니다. 그러면 **버튼 엘리먼트의 래퍼**를 반환합니다. `.trigger()`를 이용하여 버튼 클릭을 시뮬레이션 합니다.
-
-```js
-it('button click should increment the count', () => {
- expect(wrapper.vm.count).toBe(0)
- const button = wrapper.find('button')
- button.trigger('click')
- expect(wrapper.vm.count).toBe(1)
-})
-```
-
-### `nextTick`은 어떻게 할까요?
-
-Vue는 DOM 업데이트를 미루고 비동기적으로 한번에 배치 처리하기 때문에, 여러번의 데이터 변이로 발생하는 불필요한 재 렌더링을 방지합니다. 실제로 상태가 변경된 후, Vue는 실제 DOM을 갱신을 미루고 기다리고 있습니다. 따라서 `Vue.nextTick`을 사용하지 않으면 처리 순서에 따라 업데이트 된 데이터를 바로 볼 수 없습니다.
-
-하지만 테스트를 쉽게 하기 위해 `vue-test-utils`는 모든 업데이트를 동기적으로 반영하므로, DOM 업데이트가 반영되는것을 기다리기 위해 `Vue.nextTick`을 사용할 필요가 없습니다.
-
-*주의: 비동기 콜백이나 Promise같은 작업을 위해, 명시적으로 이벤트 루프를 이용해야할 경우, 아직은 `nextTick`이 필요합니다.*
-
-만약 당신이 테스트 파일에서 `nextTick`를 사용하는 하는 경우, 프로미스 내부에서 발생하는 오류는 테스트 러너가 잡아낼 수 없다는 것을 알아둬야 합니다.
-
-이걸 피하려면, 두가지 접근방법이 있습니다. 테스트를 시작할 때, `done`콜백을 전역 에러 핸들러로 감싸거나, 인자가 없는 `nextTick`을 호출해서 프로미스로 리턴받을 수 있습니다.:
-
-```js
-// 테스트에 잡히지 않는 경우.
-it('잡아내지 못하고 지나갑니다.', (done) => {
- Vue.nextTick(() => {
- expect(true).toBe(false)
- done()
- })
-})
-
-// 테스트가 되는 두가지 케이스.
-it('done을 이용해서 에러를 잡을 것 입니다.', (done) => {
- Vue.config.errorHandler = done
- Vue.nextTick(() => {
- expect(true).toBe(false)
- done()
- })
-})
-
-it('프로미스를 이용해서 오류를 잡을 것 입니다.', () => {
- return Vue.nextTick()
- .then(function () {
- expect(true).toBe(false)
- })
-})
-```
-
-
-## 앞으로 해야할 일은
-
-- [테스트 러너 선택]하고 `vue-test-utils`을 프로젝트에 추가하세요
-- [테스트를 작성하는데 필요한 기본적인 테크닉](./common-tips.md)을 살펴보세요
diff --git a/docs/kr/guides/testing-SFCs-with-jest.md b/docs/kr/guides/testing-SFCs-with-jest.md
deleted file mode 100644
index 428f94640..000000000
--- a/docs/kr/guides/testing-SFCs-with-jest.md
+++ /dev/null
@@ -1,179 +0,0 @@
-# Jest로 싱글 파일 컴포넌트 테스트
-
-> 이 설정의 예제는 [GitHub](https://github.com/vuejs/vue-test-utils-jest-example)에 있습니다.
-
-Jest는 페이스북이 개발한 테스트 러너입니다. 잘 갖춰진 유닛 테스팅 솔루션을 목표로 합니다. 자세한 내용은 Jest의 [공식 문서](https://facebook.github.io/jest/)를 살펴보세요.
-
-## Jest 설정
-
-이미 webpack, vue-loader 및 Babel이 올바르게 설정했다고 가정합니다. `vue-cli`로 스캐폴딩된 `webpack-simple` 템플릿을 사용합니다.
-
-가장 먼저 할 일은 Jest와 `vue-test-utils`를 설치하는 것 입니다.:
-
-```bash
-$ npm install --save-dev jest vue-test-utils
-```
-
-다음은 `package.json`에서 스크립트 하나를 추가합니다.
-
-```json
-// package.json
-{
- "scripts": {
- "test": "jest"
- }
-}
-```
-
-## Jest로 싱글 파일 컴포넌트 처리
-
-Jest에게 `*.vue` 파일을 처리하는 방법을 알려주기 위해, `vue-jest` 프리프로세서를 설치하고 설정해야합니다.:
-
-``` bash
-npm install --save-dev vue-jest
-```
-
-다음으로 `jest` 블럭을 `package.json`에 추가합니다.:
-
-``` json
-{
- // ...
- "jest": {
- "moduleFileExtensions": [
- "js",
- "json",
- // Jest가 *.vue 파일을 처리할 수 있도록 합니다.
- "vue"
- ],
- "transform": {
- // vue-jest로 *.vue 파일을 처리합니다.
- ".*\\.(vue)$": "/node_modules/vue-jest"
- },
- "mapCoverage": true
- }
-}
-```
-
-> **참고:** `vue-jest`는 현재 사용자 정의 블럭 및 스타일 로딩과 같은 `vue-loader`의 모든 기능을 지원하지는 않습니다. 또한, 코드 분할과 같은 일부 webpack 관련 기능은 지원하지 않습니다. 이를 사용하려면, [Mocha + webpack로 싱글 파일 컴포넌트 테스트](./testing-SFCs-with-mocha-webpack.md)를 읽어보세요.
-
-## webpack 알리아스 다루기
-
-webpack 설정에서 `@`를 `/src`로 지정한 알리아스(별칭)를 사용하는 경우, Jest가 알 수 있도록 `moduleNameMapper` 옵션을 사용하여 맞추는 설정을 추가해야 합니다.
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // @를 src로 매핑합니다.
- "moduleNameMapper": {
- "^@/(.*)$": "/src/$1"
- }
- }
-}
-```
-
-## Jest를 위한 Babel 설정
-
-Node의 최신 버전이 이미 대부분의 ES2015 기능을 지원하지만 테스트에서 ES 모듈 문법 및 stage-x 기능을 사용하길 원할 수 있습니다. 이를 위해 `babel-jest`를 설치해야합니다.:
-
-``` bash
-npm install --save-dev babel-jest
-```
-
-다음으로 Jest에게 `babel-jest`로 JavaScript 테스트 파일을 처리하도록 `package.json`에 `jest.transform` 아래에 엔트리를 추가하여 알려줄 필요가 있습니다.:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- "transform": {
- // ...
- // babel-jest로 js를 처리한다.
- "^.+\\.js$": "/node_modules/babel-jest"
- },
- // ...
- }
-}
-```
-
-> 기본적으로 `babel-jest`는 설치 되어있는 한 자동으로 설정됩니다. 그러나 앞서 `*.vue` 파일에 대한 변환을 명시적으로 추가했으므로 이제 `babel-jest`도 명시적으로 구성해야 합니다.
-
-webpack에서 `babel-preset-env`를 사용한다고 가정하면, webpack은 이미 ES 모듈을 처리하는 방법을 알고 있기 때문에 Babel 설정은 ES 모듈 트랜스파일을 비활성화합니다. 그러나 Jest 테스트는 Node에서 직접 실행되기 때문에, 테스트를 위해 이것을 활성해야 합니다.
-
-또한 `babel-preset-env`에 현재 사용하고 있는 Node 버전을 알려줄 수도 있습니다. 이렇게 하면 불필요한 기능을 건너뛰고 테스트가 더 빨리 시작됩니다.
-
-이 옵션을 테스트에만 적용하려면, `env.test` (`babel-jest`를 통해 자동으로 선택)를 아래 설정에 넣으세요.
-
-`.babelrc` 예제:
-
-``` json
-{
- "presets": [
- ["env", { "modules": false }]
- ],
- "env": {
- "test": {
- "presets": [
- ["env", { "targets": { "node": "current" }}]
- ]
- }
- }
-}
-```
-
-### 스냅샷 테스트
-
-[`vue-server-renderer`](https://github.com/vuejs/vue/tree/dev/packages/vue-server-renderer)를 사용해 컴포넌트를 문자열로 렌더링하여 [Jest 스냅샷 테스트](https://facebook.github.io/jest/docs/en/snapshot-testing.html)를 위한 스냅샷으로 제공할 수 있습니다.
-
-`vue-server-renderer`의 렌더링 결과 만으로는 몇개의 SSR 특정 속성을 포함하여 공백 같은 문자열을 무시하므로, diff 부분을 찾아내기가 좀 어렵습니다. 사용자 정의 시리얼라저(custom serializer)를 사용해, 저장된 스냅샷을 개선할 수 있습니다.:
-
-``` bash
-npm install --save-dev jest-serializer-vue
-```
-
-`package.json` 설정:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // 스냅샷을 위한 시리얼라이저
- "snapshotSerializers": [
- "/node_modules/jest-serializer-vue"
- ]
- }
-}
-```
-
-### 테스트 파일 배치
-
-기본적으로 Jest는 전체 프로젝트에서 `.spec.js` 또는 `.test.js` 확장자를 갖는 모든 파일을 재귀적으로 선택합니다. 이것이 상황에 맞지 않으면 `package.json` 파일의 config 섹션에서 [testRegex를 변경할 수 있습니다](https://facebook.github.io/jest/docs/en/configuration.html#testregex-string).
-
-
-Jest는 테스트중인 코드 바로 다음에 `__tests__` 디렉터리를 만들 것을 권장 하지만, 테스트 결과를 적절히 마음대로 구조화할 수 있습니다. Jest는 스냅샷 테스트를 수행하는 파일 옆에 `__snapshots__` 디렉터리를 만듭니다.
-
-### 스펙 예제
-
-Jasmine에 익숙하면 Jest의 [assertion API](https://facebook.github.io/jest/docs/en/expect.html#content)를 사용해 편하게 사용할 수 있습니다.
-
-```js
-import { mount } from '@vue/test-utils'
-import Component from './component'
-
-describe('Component', () => {
- test('is a Vue instance', () => {
- const wrapper = mount(Component)
- expect(wrapper.isVueInstance()).toBeTruthy()
- })
-})
-```
-
-### 리소스
-
-- [위 설정의 예제](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Vue Conf 2017의 예제 및 슬라이드](https://github.com/codebryo/vue-testing-with-jest-conf17)
-- [Jest](https://facebook.github.io/jest/)
-- [Babel preset env](https://github.com/babel/babel-preset-env)
diff --git a/docs/kr/guides/testing-SFCs-with-mocha-webpack.md b/docs/kr/guides/testing-SFCs-with-mocha-webpack.md
deleted file mode 100644
index a519b142c..000000000
--- a/docs/kr/guides/testing-SFCs-with-mocha-webpack.md
+++ /dev/null
@@ -1,180 +0,0 @@
-# Mocha + webpack로 싱글 파일 컴포넌트 테스트
-
-> 이 설정의 예제는 [GitHub](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)에 있습니다.
-
-싱글 파일 컴포넌트를 테스트하기 위한 또 다른 전략은 webpack을 통해 모든 테스트를 컴파일한 다음 테스트 러너에서 실행하는 것 입니다. 이 접근 방식의 장점은 모든 webpack 및 `vue-loader` 기능을 완벽히 지원하므로 소스코드를 테스트에 타협하지 않아도 된다는 점 입니다.
-
-기술적으로 테스트 러너를 사용해 수동으로 연결 할 수 있으나, 특정 작업에 매우 유용한 [`mocha-webpack`](https://github.com/zinserjan/mocha-webpack)이 있습니다.
-
-## `mocha-webpack` 설정
-
-이미 webpack, vue-loader 및 Babel이 올바르게 구성되어 있는 것으로 시작한다고 가정합니다. `vue-cli`에 의해 스캐폴딩된 `webpack-simple`템플릿을 사용합니다.
-
-가장 먼저 할 일은 테스트 종속성을 설치하는 것 입니다.:
-
-``` bash
-npm install --save-dev @vue/test-utils mocha mocha-webpack
-```
-
-다음은 `package.json`에서 스크립트 하나를 추가합니다.:
-
-```json
-// package.json
-{
- "scripts": {
- "test": "mocha-webpack --webpack-config webpack.config.js --require test/setup.js test/**/*.spec.js"
- }
-}
-```
-
-몇가지 참고해야 할 주의사항이 있습니다.:
-
-- `--webpack-config` 플래그는 테스트에 사용할 webpack 설정을 지정합니다. 대부분의 경우 이 설정은 실제 프로젝트에 사용하는 설정과 동일하지만, 작은 수정을 하려합니다. 나중에 이것을 다룰 것입니다.
-
-- `--require` 플래그는 테스트 전에 `test/setup.js`가 실행되도록 합니다. 테스트가 실행될 글로벌 환경을 설정할 수 있습니다.
-
-- 마지막 전달 인자는 모든 테스트 파일의 집합(glob) 입니다.
-
-### 추가 webpack 설정
-
-#### NPM 의존성 외부화
-
-우리는 테스트를 하면서 다양한 NPM 의존성을 가져오게 되는 경우가 많이 있습니다. - 이 모듈 중 일부는 브라우저 사용을 염두하고 작성되어 있는 것 도 있기에, 단순하게 webpack으로 패키지 하기엔 적합하지 않습니다. 또 다른 고려사항으로는 의존성을 외부화 하게 되면, 테스트 시작 속도를 크게 향상시킬 수 있습니다. `webpack-node-externals`을 사용하여 모든 NPM 의존성을 외부화할 수 있습니다.:
-
-```js
-// webpack.config.js
-const nodeExternals = require('webpack-node-externals')
-
-module.exports = {
- // ...
- externals: [nodeExternals()]
-}
-```
-
-#### 소스맵
-
-소스맵은 `mocha-webpack`에 의해서 포착 될 수 있게 하기 위해, in-line화 할 필요가 있습니다. 권장 설정은 다음과 같습니다.:
-
-``` js
-module.exports = {
- // ...
- devtool: 'inline-cheap-module-source-map'
-}
-```
-
-IDE를 통해 디버깅하는 경우, 다음을 추가하는 것이 좋습니다.:
-
-``` js
-module.exports = {
- // ...
- output: {
- // ...
- // 소스맵에 절대 경로 사용 (IDE를 통한 디버깅에서 중요함)
- devtoolModuleFilenameTemplate: '[absolute-resource-path]',
- devtoolFallbackModuleFilenameTemplate: '[absolute-resource-path]?[hash]'
- }
-}
-```
-
-### 브라우저 환경 설정
-
-`vue-test-utils`를 실행하려면, 브라우저 환경이 필요합니다. Node.js에서 `jsdom-global`를 이용해 시뮬레이션합니다.:
-
-```bash
-npm install --save-dev jsdom jsdom-global
-```
-
-`test/setup.js`에 추가합니다.:
-
-``` js
-require('jsdom-global')()
-```
-
-이는 `vue-test-utils`가 올바르게 동작할 수 있도록 브라우저 환경을 노드에 추가합니다.
-
-### 검증(Assertion) 라이브러리 선택
-
-[Chai](http://chaijs.com/)는 Mocha와 함께 사용하는 인기있는 검증 라이브러리입니다. 스파이와 스텁을 만드는 방법에 대해 [Sinon](http://sinonjs.org/)에서 확인하세요.
-
-대안으로 Jest의 일부인 `expect`를 사용할 수 있으며, Jest 문서에서 [정확히 같은 API](http://facebook.github.io/jest/docs/en/expect.html#content)를 노출합니다.
-
-여기서 `expect`를 사용하여 글로벌로 사용할 수 있도록 만들어, 모든 테스트에서 임포트할 필요는 없습니다.:
-
-``` bash
-npm install --save-dev expect
-```
-
-`test/setup.js`입니다.
-
-``` js
-require('jsdom-global')()
-
-global.expect = require('expect')
-```
-
-### 테스트를 위한 Babel 최적화
-
-JavaScript를 처리하기 위해 `babel-loader`를 사용하고 있습니다. 앱에서 Babel을 쓰시는 경우, `.babelrc` 파일이 이미 구성 되어 있을 것입니다. 만약 당신이 별도로 구성하지 않는다면, `babel-loader`는 자동으로 같은 설정 파일을 가져오게 됩니다.
-
-주의 해야 할 한가지는, 이미 ES2015 기능을 대부분 지원하는 Node 6+를 사용하는 경우에 별도의 Babel [env 옵션](https://babeljs.io/docs/usage/babelrc/#env-option)을 설정할 수 있습니다. (예: stage-2 또는 미구현 된 flow 구문을 사용할 수 있도록 지원 등)
-
-### 테스트 추가
-
-`src`에 `Counter.vue` 파일을 만듭니다.:
-
-``` html
-
-
- {{ count }}
-
-
-
-
-
-```
-
-다음 `test/Counter.spec.js` 파일을 만들고 아래 내용으로 테스트를 작성하세요.:
-
-```js
-import { shallow } from '@vue/test-utils'
-import Counter from '../src/Counter.vue'
-
-describe('Counter.vue', () => {
- it('increments count when button is clicked', () => {
- const wrapper = shallow(Counter)
- wrapper.find('button').trigger('click')
- expect(wrapper.find('div').text()).toMatch('1')
- })
-})
-```
-
-이제 테스트를 할 수 있습니다.:
-
-```
-npm run unit
-```
-
-테스트가 실행됩니다!
-
-### 리소스
-
-- [위 설정의 예제](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [Mocha](https://mochajs.org/)
-- [mocha-webpack](http://zinserjan.github.io/mocha-webpack/)
-- [Chai](http://chaijs.com/)
-- [Sinon](http://sinonjs.org/)
-- [jest/expect](http://facebook.github.io/jest/docs/en/expect.html#content)
diff --git a/docs/kr/guides/using-with-vue-router.md b/docs/kr/guides/using-with-vue-router.md
deleted file mode 100644
index 11807110f..000000000
--- a/docs/kr/guides/using-with-vue-router.md
+++ /dev/null
@@ -1,72 +0,0 @@
-# Vue Router 사용하기
-
-## 테스트에 Vue Router 설치
-
-테스트 할때 Vue 기반 생성자에 Vue Router를 설치하면 안됩니다. Vue Router를 설치하면 Vue prototype에 읽기 전용 속성으로 `$route`, `$router`가 추가됩니다.
-
-이를 피하기 위해, localVue를 만들고 여기에 Vue Router를 설치합니다.
-
-```js
-import VueRouter from 'vue-router'
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-const router = new VueRouter()
-
-shallow(Component, {
- localVue,
- router
-})
-```
-
-## `router-link` 또는`router-view`를 사용하는 테스트 컴포넌트
-
-Vue Router를 설치하면 `router-link`와 `router-view` 컴포넌트가 등록됩니다. 즉, 임포트할 필요 없이 앱 어디서나 사용할 수 있습니다.
-
-테스트를 실행할 때 컴포넌트에서 vue-router 관련 컴포넌트를 사용할 수 있도록 해야합니다. 이 방법에는 두가지가 있습니다.
-
-### 스텁 사용하기
-
-```js
-shallow(Component, {
- stubs: ['router-link', 'router-view']
-})
-```
-
-### localVue에 Vue Router 설치
-
-```js
-import VueRouter from 'vue-router'
-const localVue = createLocalVue()
-
-localVue.use(VueRouter)
-
-shallow(Component, {
- localVue
-})
-```
-
-## `$route`와 `$router` 목킹
-
-때로는 컴포넌트가 `$route`와 `$router` 객체의 매개변수로 무언가를 수행하고 있는지 테스트를 할 필요가 있습니다. 이를 위해 사용자 정의 목(mocks-가짜데이터)을 Vue 인스턴스에 전달해야합니다.
-
-```js
-const $route = {
- path: '/some/path'
-}
-
-const wrapper = shallow(Component, {
- mocks: {
- $route
- }
-})
-
-wrapper.vm.$router // /some/path
-```
-
-## 공통적으로 확인 할 주의사항
-
-Vue Router를 설치하면 Vue prototype에 읽기 전용 속성으로 `$route`, `$router`가 추가됩니다.
-
-이는 `$route` 또는 `$router`를 목킹하려고 시도하는 모든 테스트가 실패하는 것을 의미합니다.
-
-이를 피하려면, 테스트를 실행하는 동안에는 Vue Router를 설치하지 마십시오.
diff --git a/docs/kr/guides/using-with-vuex.md b/docs/kr/guides/using-with-vuex.md
deleted file mode 100644
index f0ae5c610..000000000
--- a/docs/kr/guides/using-with-vuex.md
+++ /dev/null
@@ -1,265 +0,0 @@
-# Vuex 사용하기
-
-이번에는 `vue-test-utils`와 함께, 컴포넌트에서 Vuex를 테스트하는 방법을 알아봅니다.
-
-## 액션 목킹하기
-
-약간의 코드를 살펴보겠습니다.
-
-이 컴포넌트는 테스트가 필요합니다. Vuex의 액션을 호출하고 있습니다.
-
-``` html
-
-
-
-
-
-
-
-
-```
-
-이 테스트의 목적을 위해서 액션(action)이 무엇인지, 또는 스토어(store)가 어떻게 구성 되어 있는지 신경 쓸 필요가 없습니다. 우리는 단지 액션이 필요할 때 호출되고 있으며, 기대한 값으로 호출된 것을 확인해야합니다.
-
-이 테스트에서 얕은(shallow) 스토어에 목킹된 스토어를 전달해야합니다.
-
-저장소를 베이스 Vue 생성자에 전달하는 대신 [localVue](../api/options.md#localvue)에 전달할 수 있습니다. localVue는 글로벌 Vue 생성자에 영향을 미치지 않고, 변경할 수 있는 범위가 지정된 Vue 생성자입니다.
-
-어떻게 구성되었는지 보겠습니다.
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Actions from '../../../src/components/Actions'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Actions.vue', () => {
- let actions
- let store
-
- beforeEach(() => {
- actions = {
- actionClick: jest.fn(),
- actionInput: jest.fn()
- }
- store = new Vuex.Store({
- state: {},
- actions
- })
- })
-
- it('calls store action actionInput when input value is input and an input event is fired', () => {
- const wrapper = shallow(Actions, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'input'
- input.trigger('input')
- expect(actions.actionInput).toHaveBeenCalled()
- })
-
- it('does not call store action actionInput when input value is not input and an input event is fired', () => {
- const wrapper = shallow(Actions, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'not input'
- input.trigger('input')
- expect(actions.actionInput).not.toHaveBeenCalled()
- })
-
- it('calls store action actionClick when button is clicked', () => {
- const wrapper = shallow(Actions, { store, localVue })
- wrapper.find('button').trigger('click')
- expect(actions.actionClick).toHaveBeenCalled()
- })
-})
-```
-
-여기서 무슨일이 일어나고 있을까요? 첫째로 Vue에게 `Vue.use` 메소드로 Vuex를 사용하도록 지시합니다. 이는 `Vue.use`에 대한 래퍼일 뿐입니다.
-
-다음 가짜 값과 함께 `Vuex.store`를 호출하여 목킹 스토어를 만듭니다. 우리가 지금 신경써야 할 액션만 전달합니다.
-
-액션은 [jest 목킹 함수](https://facebook.github.io/jest/docs/en/mock-functions.html)입니다. 목킹 함수는 액션이 호출되었는지 아닌지를 검증하는 메소드를 제공합니다.
-
-그런 다음, 우리는 테스트에서 액션 스텁이 예상한 시점에 호출되었는지 검증할 수 있습니다.
-
-여기에서 이러한 스토어를 정의하는 방식이 조금 어색할 수 있습니다.
-
-`beforeEach`를 사용하여, 각 테스트 전에 깨끗한 스토어를 보장 하도록 합니다. `beforeEach`는 각 테스트 전에 호출되는 Mocha 훅입니다. 이 테스트에서는 스토어 변수에 값을 다시 지정합니다. 이렇게 하지 않으면, 목킹 함수를 자동으로 재설정해 주어야 합니다. 물론 테스트에서 상태(state)를 바꿀 수 있습니다만, 이 방법이 다음에 진행되는 테스트들에 영향을 주지 않는 방법입니다.
-
-테스트에서 가장 주의깊게 봐야할 부분은 **가짜 Vuex 스토어를 만든 다음, 이를 vue-test-utils**에 전달하는 것 입니다.
-
-이제 액션을 목킹할 수 있습니다. getters를 목킹해보겠습니다.
-
-## 게터 목킹하기
-
-
-``` html
-
-
-
{{inputValue}}
-
{{clicks}}
-
-
-
-
-```
-
-아주 간단한 컴포넌트입니다. 게터는 `clicks`와 `inputValue`의 결과를 렌더링합니다. 다시 말하지만, 우리는 단지 결과가 올바르게 렌더링 되는 것 외에 게터가 반환하는 것을 신경쓰지 않습니다.
-
-테스트를 봅니다.
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Getters from '../../../src/components/Getters'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Getters.vue', () => {
- let getters
- let store
-
- beforeEach(() => {
- getters = {
- clicks: () => 2,
- inputValue: () => 'input'
- }
-
- store = new Vuex.Store({
- getters
- })
- })
-
- it('Renders state.inputValue in first p tag', () => {
- const wrapper = shallow(Getters, { store, localVue })
- const p = wrapper.find('p')
- expect(p.text()).toBe(getters.inputValue())
- })
-
- it('Renders state.clicks in second p tag', () => {
- const wrapper = shallow(Getters, { store, localVue })
- const p = wrapper.findAll('p').at(1)
- expect(p.text()).toBe(getters.clicks().toString())
- })
-})
-```
-이 테스트는 액션 테스트와 비슷합니다. 각 테스트 전에 가짜 스토어를 만들고 `shallow`를 호출 할 때 옵션을 넘겨주고, 목킹 게터에 의해 반환된 값이 렌더링 되는 것을 검증합니다.
-
-이는 훌륭하지만, getter가 멀쩡한 상태(state)를 리턴하고 있는지 확인 하려면 어떻게 해야할까요?
-
-## 모듈 목킹하기
-
-[모듈](https://vuex.vuejs.org/en/modules.html)은 스토어를 관리 가능한 덩어리로 분리하는데 유용합니다. 또한 게터를 내보냅니다. 테스트에서 이 것을 사용할 수 있습니다.
-
-컴포넌트를 살펴봅니다.
-
-``` html
-
-
-
-
{{moduleClicks}}
-
-
-
-
-```
-
-하나의 액션과 게터를 포함하는 간단한 컴포넌트입니다.
-
-아래는 테스트입니다.
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Modules from '../../../src/components/Modules'
-import module from '../../../src/store/module'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Modules.vue', () => {
- let actions
- let state
- let store
-
- beforeEach(() => {
- state = {
- module: {
- clicks: 2
- }
- }
-
- actions = {
- moduleActionClick: jest.fn()
- }
-
- store = new Vuex.Store({
- state,
- actions,
- getters: module.getters
- })
- })
-
- it('calls store action moduleActionClick when button is clicked', () => {
- const wrapper = shallow(Modules, { store, localVue })
- const button = wrapper.find('button')
- button.trigger('click')
- expect(actions.moduleActionClick).toHaveBeenCalled()
- })
-
- it('Renders state.inputValue in first p tag', () => {
- const wrapper = shallow(Modules, { store, localVue })
- const p = wrapper.find('p')
- expect(p.text()).toBe(state.module.clicks.toString())
- })
-})
-```
-
-### 리소스
-
-- [이 가이드의 예제](https://github.com/eddyerburgh/vue-test-utils-vuex-example)
-- [localVue](../api/options.md#localvue)
-- [createLocalVue](../api/createLocalVue.md)
diff --git a/docs/pt-br/README.md b/docs/pt-br/README.md
deleted file mode 100644
index b8fa08b23..000000000
--- a/docs/pt-br/README.md
+++ /dev/null
@@ -1,71 +0,0 @@
-# vue-test-utils
-
-`vue-test-utils` é a biblioteca oficial de testes de unidade para o Vue.js.
-
-## Índice
-
-* [Guia](guides/README.md)
- * [Iniciando](guides/getting-started.md)
- * [Dicas comuns](guides/common-tips.md)
- * [Mouse, Tecla e outros eventos do DOM](guides/dom-events.md)
- * [Escolhendo um executador de testes](guides/choosing-a-test-runner.md)
- * [Testando SFCs com Jest](guides/testing-SFCs-with-jest.md)
- * [Testando SFCs com Mocha + webpack](guides/testing-SFCs-with-mocha-webpack.md)
- * [Usando com o Vue Router](guides/using-with-vue-router.md)
- * [Usando com o Vuex](guides/using-with-vuex.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallow](api/shallow.md)
- * [Opções de montagem](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- * [Wrapper](api/wrapper/README.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [hasAttribute](api/wrapper/hasAttribute.md)
- * [hasClass](api/wrapper/hasClass.md)
- * [hasProp](api/wrapper/hasProp.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [setComputed](api/wrapper/setComputed.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [hasAttribute](api/wrapper-array/hasAttribute.md)
- * [hasClass](api/wrapper-array/hasClass.md)
- * [hasProp](api/wrapper-array/hasProp.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setComputed](api/wrapper-array/setComputed.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [Componentes](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [Seletores](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [config](api/config.md)
diff --git a/docs/pt-br/SUMMARY.md b/docs/pt-br/SUMMARY.md
deleted file mode 100644
index 0ba25dd21..000000000
--- a/docs/pt-br/SUMMARY.md
+++ /dev/null
@@ -1,66 +0,0 @@
-## Índice
-
-* [Guia](guides/README.md)
- * [Iniciando](guides/getting-started.md)
- * [Dicas comuns](guides/common-tips.md)
- * [Mouse, Tecla e outros eventos do DOM](guides/dom-events.md)
- * [Escolhendo um executador de testes](guides/choosing-a-test-runner.md)
- * [Testando SFCs com Jest](guides/testing-SFCs-with-jest.md)
- * [Testando SFCs com Mocha + webpack](guides/testing-SFCs-with-mocha-webpack.md)
- * [Usando com o Vue Router](guides/using-with-vue-router.md)
- * [Usando com o Vuex](guides/using-with-vuex.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallow](api/shallow.md)
- * [Opções de montagem](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- * [Wrapper](api/wrapper/README.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [hasAttribute](api/wrapper/hasAttribute.md)
- * [hasClass](api/wrapper/hasClass.md)
- * [hasProp](api/wrapper/hasProp.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [hasAttribute](api/wrapper-array/hasAttribute.md)
- * [hasClass](api/wrapper-array/hasClass.md)
- * [hasProp](api/wrapper-array/hasProp.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setComputed](api/wrapper-array/setComputed.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [Componentes](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [Seletores](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [config](api/config.md)
diff --git a/docs/pt-br/api/README.md b/docs/pt-br/api/README.md
deleted file mode 100644
index a49e9c3ef..000000000
--- a/docs/pt-br/api/README.md
+++ /dev/null
@@ -1,57 +0,0 @@
-# API
-
-* [mount](./mount.md)
-* [shallow](./shallow.md)
-* [Opções de montagem](./options.md)
- - [context](./options.md#context)
- - [slots](./options.md#slots)
- - [stubs](./options.md#stubs)
- - [mocks](./options.md#mocks)
- - [localVue](./options.md#localvue)
- - [attachToDocument](./options.md#attachtodocument)
- - [attrs](./options.md#attrs)
- - [listeners](./options.md#listeners)
-* [Wrapper](./wrapper/README.md)
- * [contains](./wrapper/contains.md)
- * [emitted](./wrapper/emitted.md)
- * [emittedByOrder](./wrapper/emittedByOrder.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper/destroy.md)
- * [find](./wrapper/find.md)
- * [findAll](./wrapper/findAll.md)
- * [hasAttribute](./wrapper/hasAttribute.md)
- * [hasClass](./wrapper/hasClass.md)
- * [hasProp](./wrapper/hasProp.md)
- * [html](./wrapper/html.md)
- * [is](./wrapper/is.md)
- * [isEmpty](./wrapper/isEmpty.md)
- * [isVueInstance](./wrapper/isVueInstance.md)
- * [name](./wrapper/name.md)
- * [setComputed](./wrapper/setComputed.md)
- * [setData](./wrapper/setData.md)
- * [setMethods](./wrapper/setMethods.md)
- * [setProps](./wrapper/setProps.md)
- * [text](./wrapper/text.md)
- * [trigger](./wrapper/trigger.md)
-* [WrapperArray](./wrapper-array/README.md)
- * [at](./wrapper-array/at.md)
- * [contains](./wrapper-array/contains.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper-array/destroy.md)
- * [hasAttribute](./wrapper-array/hasAttribute.md)
- * [hasClass](./wrapper-array/hasClass.md)
- * [hasProp](./wrapper-array/hasProp.md)
- * [is](./wrapper-array/is.md)
- * [isEmpty](./wrapper-array/isEmpty.md)
- * [isVueInstance](./wrapper-array/isVueInstance.md)
- * [setComputed](./wrapper-array/setComputed.md)
- * [setData](./wrapper-array/setData.md)
- * [setMethods](./wrapper-array/setMethods.md)
- * [setProps](./wrapper-array/setProps.md)
- * [trigger](./wrapper-array/trigger.md)
-* [components](./components/README.md)
- * [TransitionStub](./components/TransitionStub.md)
- * [TransitionGroupStub](./components/TransitionGroupStub.md)
-* [createLocalVue](./createLocalVue.md)
-* [Seletores](./selectors.md)
-* [config](./config.md)
diff --git a/docs/pt-br/api/components/README.md b/docs/pt-br/api/components/README.md
deleted file mode 100644
index 9fe182248..000000000
--- a/docs/pt-br/api/components/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Componentes
-
-O vue-test-utils apresenta alguns componentes utilitários para que você possa esboçar componentes.
-
-O [TransitionStub](./TransitionStub.md) e o [TransitionGroupStub](./TransitionGroupStub.md) por padrão são usados para esboçar componentes de transições e grupo de transições. Mas você pode editar esses esboços editando as configurações do mesmo.
diff --git a/docs/pt-br/api/components/TransitionGroupStub.md b/docs/pt-br/api/components/TransitionGroupStub.md
deleted file mode 100644
index 0a0d94dbb..000000000
--- a/docs/pt-br/api/components/TransitionGroupStub.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# TransitionGroupStub (Esboço de grupo de transições)
-
-É um componente para substituir o componente `transition-group`. Em vez de executar as transições do grupo de forma assíncrona, ele retorna os componentes filhos de forma síncrona.
-
-Por padrão é configurado para trocar todos os componentes `transitions-group` da sua aplicação. Para desativar o componente `transition-group`, passe `config.stubs['transition-group']` para false:
-
-```js
-import VueTestUtils from '@vue/test-utils'
-
-VueTestUtils.config.stubs['transition-group'] = false
-```
-
-Para redefinir os grupos de transições no esboço, use:
-
-```js
-import VueTestUtils, { TransitionGroupStub } from '@vue/test-utils'
-
-VueTestUtils.config.stubs['transition-group'] = TransitionGroupStub
-```
-
-Para configura-lo na montagem, use:
-
-```js
-import { mount, TransitionGroupStub } from '@vue/test-utils'
-
-mount(Component, {
- stubs: {
- 'transition-group': TransitionGroupStub
- }
-})
-```
diff --git a/docs/pt-br/api/components/TransitionStub.md b/docs/pt-br/api/components/TransitionStub.md
deleted file mode 100644
index 84c557a03..000000000
--- a/docs/pt-br/api/components/TransitionStub.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# TransitionStub (esboço de transição)
-
-É um componente para substituir o componente `transition`. Em vez de executar as transições de forma assíncrona, ele retorna o componente filho de forma síncrona.
-
-Por padrão é configurado para trocar todos os componentes `transitions` da sua aplicação. Para desativar o componente `transition`, passe `config.stubs.transition` para false:
-
-```js
-import VueTestUtils from '@vue/test-utils'
-
-VueTestUtils.config.stubs.transition = false
-```
-
-Para redefini-lo como componente de transição, use:
-
-```js
-import VueTestUtils, { TransitionStub } from '@vue/test-utils'
-
-VueTestUtils.config.stubs.transition = TransitionStub
-```
-
-Para configura-lo como um esboço nas opções de montagem, use:
-
-```js
-import { mount, TransitionStub } from '@vue/test-utils'
-
-mount(Component, {
- stubs: {
- transition: TransitionStub
- }
-})
-```
diff --git a/docs/pt-br/api/config.md b/docs/pt-br/api/config.md
deleted file mode 100644
index 47642e5c7..000000000
--- a/docs/pt-br/api/config.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# Configurações
-
-O vue-test-utils apresenta um objeto de configuração para que você possa definir as opções usadas no wrapper.
-
-## Opções de configurações do `vue-test-utils
-
-### Esboços
-
-- tipo: `Object`
-- padrão: `{
- transition: TransitionStub,
- 'transition-group': TransitionGroupStub
-}`
-
-Esboços são usados em todos componentes. Eles são substituídos pelos esboços passados nas opções da montagem.
-
-Quando você passa os esboços como um Array de String nas opções de montagens, o `config.stubs` é convertido em um Array e os componentes são esboçados com um componente que retorna uma div.
-
-Exemplo:
-
-```js
-import VueTestUtils from '@vue/test-utils'
-
-VueTestUtils.config.stubs['meu-componente'] = ''
-```
diff --git a/docs/pt-br/api/createLocalVue.md b/docs/pt-br/api/createLocalVue.md
deleted file mode 100644
index 04386511b..000000000
--- a/docs/pt-br/api/createLocalVue.md
+++ /dev/null
@@ -1,29 +0,0 @@
-# createLocalVue()
-
-- **Retorna:**
- - `{Component}`
-
-- **Uso:**
-
-O `createLocalVue` retorna uma classe do Vue para que você possa adicionar componentes, mixins e plugins sem poluir sua classe global do Vue.
-
-Usando com o `options.localVue`
-
-```js
-import { createLocalVue, shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const localVue = createLocalVue()
-const wrapper = shallow(Foo, {
- localVue,
- mocks: { foo: true }
-})
-
-expect(wrapper.vm.foo).toBe(true)
-
-const wrapperSemMock = shallow(Foo)
-
-expect(wrapperSemMock.vm.foo).toBe(false)
-```
-
-- **Veja também:** [Dicas comuns](../guides/common-tips.md#applying-global-plugins-and-mixins)
diff --git a/docs/pt-br/api/mount.md b/docs/pt-br/api/mount.md
deleted file mode 100644
index e2294c11f..000000000
--- a/docs/pt-br/api/mount.md
+++ /dev/null
@@ -1,132 +0,0 @@
-# mount(component {, options}])
-
-- **Argumentos:**
-
- - `{Component} component`
- - `{Object} options`
-
-- **Retorna:** `{Wrapper}`
-
-- **Opções:**
-
-Veja [opções](options.md)
-
-- **Uso:**
-
-Retorna um [`Wrapper`](wrapper/README.md) do primeiro elemento do DOM ou o componente Vue correspondente ao seletor.
-
-Use qualquer [seletor](selectors.md) válido.
-
-**Sem opções:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renderiza uma div', () => {
- const wrapper = mount(Foo)
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Com opções do Vue:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('verifica valor padrão da cor', () => {
- const wrapper = mount(Foo, {
- propsData: {
- cor: 'vermelha'
- }
- })
- expect(wrapper.props().cor).toBe('vermelha')
- })
-})
-```
-
-**Anexar ao DOM:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('adiciona anexado ao DOM', () => {
- const wrapper = mount(Foo, {
- attachToDocument: true
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Com slots padrões ou nomeados:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import FooBar from './FooBar.vue'
-
-describe('Foo', () => {
- it('registra slots padrões e nomeados', () => {
- const wrapper = mount(Foo, {
- slots: {
- default: [Bar, FooBar],
- fooBar: FooBar, // Corresponde a ,
- foo: ''
- }
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Adicionando propriedades globais:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('adicionando mock global do $route', () => {
- const $route = { path: 'http://www.meusite.com.br' }
- const wrapper = mount(Foo, {
- mocks: {
- $route
- }
- })
- expect(wrapper.vm.$route.path).toBe($route.path)
- })
-})
-```
-
-**Esboçando componentes filhos:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import Faz from './Faz.vue'
-
-describe('Foo', () => {
- it('verifica componentes filhos de Foo', () => {
- const wrapper = mount(Foo, {
- stub: {
- Bar: ',
- foo: ''
- }
-})
-expect(wrapper.find('div')).toBe(true)
-```
-
-### Esboços
-
-- tipo: `{ [name: String]: Component | Boolean } | Array`
-
-Esboça os componentes filhos. Pode ser um Array com os nomes dos componentes ou um objeto.
-
-Exemplo:
-
-```js
-import Foo from './Foo.vue'
-
-mount(Component, {
- stubs: ['componente-registrado']
-})
-
-shallow(Component, {
- stubs: {
- // esboço com uma implementação específica
- 'componente-registrado': Foo,
- // criar um esboço padrão (simulado com mock)
- 'outro componente': true
- }
-})
-```
-
-### `mocks`
-
-- tipo: `Object`
-
-Adiciona uma propriedade adicional à instância. Ótimo para simular injeções globais.
-
-Exemplo:
-
-```js
-
-const $route = { path: 'http://www.meusite.com.br' }
-const wrapper = shallow(Component, {
- mocks: {
- $route
- }
-})
-expect(wrapper.vm.$route.path).toBe($route.path)
-```
-
-### `localVue`
-
-- tipo: `Vue`
-
-Uma cópia local do Vue é criada pelo [createLocalVue](./createLocalVue.md) para usar quando for montar um componente. A instalação de plugins e outros nessa cópia previne que seu Vue original seja poluído.
-
-Exemplo:
-
-```js
-import { createLocalVue, mount } from '@vue/test-utils'
-import VueRouter from 'vue-router'
-import Foo from './Foo.vue'
-
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-
-const routes = [
- { path: '/foo', component: Foo }
-]
-
-const router = new VueRouter({
- routes
-})
-
-const wrapper = mount(Component, {
- localVue,
- router
-})
-expect(wrapper.vm.$route).toBeInstanceOf(Object)
-```
-
-### `attachToDocument`
-
-- tipo: `Boolean`
-- padrão: `false`
-
-O componente será anexado ao DOM quando configurado como `true`.
-
-### `attrs`
-
-- tipo: `Object`
-
-Define o objeto `$attrs` da instância do componente.
-
-### `listeners`
-
-- tipo: `Object`
-
-Define o objeto `$listeners` da instância do componente.
diff --git a/docs/pt-br/api/selectors.md b/docs/pt-br/api/selectors.md
deleted file mode 100644
index 59bba2a98..000000000
--- a/docs/pt-br/api/selectors.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Seletores
-
-Muitos métodos desse wrapper leva um seletor como argumento. Um seletor pode ser um seletor CSS ou um componente do Vue.
-
-## Seletores CSS
-
-O método `mount` controla e suporta qualquer seletor válido:
-
-- seletores de tag (div, foo, bar)
-- seletores de classes (.foo, .bar)
-- seletores de atributos ([foo], [foo="bar"])
-- seletores de ids (#foo, #bar)
-- pseudo seletores (div:first-of-type)
-
-Você também pode usar qualquer combinação:
-
-- combinador de descendente direto (div > #bar > .foo)
-- combinador de descendente geral (div #bar .foo)
-- seletor de irmão adjacente (div + .foo)
-- seletor geral de irmãos (div ~ .foo)
-
-## Componentes do Vue
-
-Os componentes do Vue também são seletores válidos.
-
-O vue-test-utils usa a propriedade `name` para buscar a instância na árvore de componentes do Vue.
-
-```js
-// Foo.vue
-
-export default{
- name: 'FooComponente'
-}
-```
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = shallow(Foo)
-expect(wrapper.is(Foo)).toBe(true)
-```
diff --git a/docs/pt-br/api/shallow.md b/docs/pt-br/api/shallow.md
deleted file mode 100644
index 1624a5918..000000000
--- a/docs/pt-br/api/shallow.md
+++ /dev/null
@@ -1,118 +0,0 @@
-# shallow(component {, options}])
-
-- **Argumentos:**
-
- - `{Component} component`
- - `{Object} options`
- - `{Boolean} attachToDocument`
- - `{Object} context`
- - `{Object} slots`
- - `{Array|Component|String} default`
- - `{Array|Component|String} named`
- - `{Object} mocks`
- - `{Object|Array} stubs`
- - `{Object} children`
- - `{Vue} localVue`
-
-- **Retorna:** `{Wrapper}`
-
-- **Opções:**
-
-Veja as [opçoes](./options.md)
-
-- **Uso:**
-
-Retorna um [`Wrapper`](wrapper/README.md) do primeiro elemento do DOM ou o componente Vue correspondente ao seletor.
-
-Esboça todos os componentes filhos.
-
-Use qualquer [seletor](selectors.md) válido.
-
-**Sem opções:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('Renderiza uma div', () => {
- const wrapper = shallow(Foo)
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**With Vue options:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo, {
- propsData: {
- color: 'red'
- }
- })
- expect(wrapper.props().color).toBe('red')
- })
-})
-```
-
-**Anexa ao DOM:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('adiciona anexado ao DOM', () => {
- const wrapper = shallow(Foo, {
- attachToDocument: true
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Com slots padrões ou nomeados:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import FooBar from './FooBar.vue'
-
-describe('Foo', () => {
- it('adiciona slots ao componente', () => {
- const wrapper = shallow(Foo, {
- slots: {
- default: [Bar, FooBar],
- fooBar: FooBar, // Corresponde a ,
- foo: ''
- }
- })
- expect(wrapper.find('div')).toBe(true)
- })
-})
-```
-
-**Adicionando propriedades globais:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('adicionando mock global do $route', () => {
- const $route = { path: 'http://www.meusite.com.br' }
- const wrapper = shallow(Foo, {
- mocks: {
- $route
- }
- })
- expect(wrapper.vm.$route.path).toBe($route.path)
- })
-})
-```
diff --git a/docs/pt-br/api/wrapper-array/README.md b/docs/pt-br/api/wrapper-array/README.md
deleted file mode 100644
index eec9b4d17..000000000
--- a/docs/pt-br/api/wrapper-array/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# WrapperArray (Array de wrappers)
-
-Um Array de wrappers é um objeto que contem uma lista com [Wrappers](../wrapper/README.md), e os alguns métodos para testar esses wrappers.
-
-- **Propriedades:**
-
-`length` `number`: O número de wrappers contidos nesse Array.
-
-- **Métodos:**
-
-Nessa documentação você tem uma lista detalhada dos métodos apresentados na seção WrapperArray.
diff --git a/docs/pt-br/api/wrapper-array/at.md b/docs/pt-br/api/wrapper-array/at.md
deleted file mode 100644
index e73604f7e..000000000
--- a/docs/pt-br/api/wrapper-array/at.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# at(indice)
-
-Retorna o wrapper correspondente ao `indice` passado. Use números para corresponder ao item do arra, por exemplo o `indice` 0 para o primeiro elemento.
-
-- **Argumentos:**
- - `{number} indice`
-
-- **Retorna:** `{Wrapper}`
-
-- **Exemplo:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = shallow(Foo)
-const divArray = wrapper.findAll('div')
-
-const segundaDiv = divArray.at(1)
-expect(segundaDiv.is('p')).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/contains.md b/docs/pt-br/api/wrapper-array/contains.md
deleted file mode 100644
index 6d1ee9cbd..000000000
--- a/docs/pt-br/api/wrapper-array/contains.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# contains(selector)
-
-Verifica se cada wrapper do Array contém correspondência do seletor informado.
-
-Use qualquer [seletor](../selectors.md) válido.
-
-- **Argumentos:**
- - `{String|Component} selector`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = shallow(Foo)
-const divArray = wrapper.findAll('div')
-
-expect(divArray.contains('p')).toBe(true)
-expect(divArray.contains(Bar)).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/destroy.md b/docs/pt-br/api/wrapper-array/destroy.md
deleted file mode 100644
index fe70870a1..000000000
--- a/docs/pt-br/api/wrapper-array/destroy.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# destroy()
-
-Destroí a instância do Vue da cada um dos wrappers do Array.
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-
-const divArray = wrapper.findAll('div')
-expect(divArray.contains('p')).toBe(true)
-divArray.destroy()
-
-expect(divArray.contains('p')).toBe(false)
-```
diff --git a/docs/pt-br/api/wrapper-array/hasAttribute.md b/docs/pt-br/api/wrapper-array/hasAttribute.md
deleted file mode 100644
index 44777ef05..000000000
--- a/docs/pt-br/api/wrapper-array/hasAttribute.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# hasAttribute(attribute, value)
-
-Verifica se algum wrapper do Array tem o `atributo` com `value` correspondente no elemento do DOM.
-
-- **Argumentos:**
- - `{String} attribute`
- - `{String} value`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const divArray = wrapper.findAll('div')
-
-expect(divArray.hasAttribute('id', 'foo')).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/hasClass.md b/docs/pt-br/api/wrapper-array/hasClass.md
deleted file mode 100644
index 94cc8bb0d..000000000
--- a/docs/pt-br/api/wrapper-array/hasClass.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# hasClass(className)
-
-Verifica se algum wrapper do Array contém uma classe com o nome `className` no elemento do DOM.
-
-- **Argumentos:**
- - `{String} className`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const divArray = wrapper.findAll('div')
-
-expect(divArray.hasClass('bar')).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/hasProp.md b/docs/pt-br/api/wrapper-array/hasProp.md
deleted file mode 100644
index 745e166ad..000000000
--- a/docs/pt-br/api/wrapper-array/hasProp.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# hasProp(propriedade, value)
-
-Verifica se algum wrapper do Array possui a `propriedade` com o `value` no `vm`.
-
-**Nota: o wrapper deve ser uma intância do Vue.**
-
-- **Argumentos:**
- - `{String} propriedade`
- - `{any} value`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-
-expect(barArray.hasProp('bar', 10)).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/is.md b/docs/pt-br/api/wrapper-array/is.md
deleted file mode 100644
index 5d38fc52a..000000000
--- a/docs/pt-br/api/wrapper-array/is.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# is(selector)
-
-Verifica se algum wrapper do Array possui o [seletor](../selectors.md) no seu `vm`.
-
-- **Argumentos:**
- - `{String|Component} selector`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const divArray = wrapper.find('div')
-
-expect(divArray.is('div')).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/isEmpty.md b/docs/pt-br/api/wrapper-array/isEmpty.md
deleted file mode 100644
index 49f10cf16..000000000
--- a/docs/pt-br/api/wrapper-array/isEmpty.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# isEmpty()
-
-Verifica se algum wrapper do Array não tem um elemento filho.
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const divArray = wrapper.findAll('div')
-
-expect(divArray.isEmpty()).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/isVueInstance.md b/docs/pt-br/api/wrapper-array/isVueInstance.md
deleted file mode 100644
index 13553ca1d..000000000
--- a/docs/pt-br/api/wrapper-array/isVueInstance.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# isVueInstance()
-
-Verifica se algum wrapper do Array é uma instância do Vue.
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-
-expect(barArray.isVueInstance()).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/setComputed.md b/docs/pt-br/api/wrapper-array/setComputed.md
deleted file mode 100644
index e6341d987..000000000
--- a/docs/pt-br/api/wrapper-array/setComputed.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# setComputed(computedProperties)
-
-Define as propriedades computadas e força a atualização de cada um dos wrappers no Array.
-
-**Nota: cada wrapper deve ser uma instância do Vue.**
-**Nota2: cada instância de cada wrapper deve ter as propriedades computadas já declaradas, pois esse método apenas simular o seu valor.**
-
-- **Argumentos:**
- - `{Object} computedPropertiess`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-
-barArray.setComputed({
- propriedade1: 'nova-propriedade1',
- propriedade2: 'nova-propriedade2'
-})
-```
diff --git a/docs/pt-br/api/wrapper-array/setData.md b/docs/pt-br/api/wrapper-array/setData.md
deleted file mode 100644
index aa057ffce..000000000
--- a/docs/pt-br/api/wrapper-array/setData.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# setData(data)
-
-Define os dados e força a atualização de cada wrapper presente no Array.
-
-**Nota: cada wrapper deve ser uma instância do Vue.**
-
-- **Argumentos:**
- - `{Object} data`
-
-- **Exemplho:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-
-barArray.setData({ foo: 'bar' })
-expect(barArray.at(0).vm.foo).toBe('bar')
-```
diff --git a/docs/pt-br/api/wrapper-array/setMethods.md b/docs/pt-br/api/wrapper-array/setMethods.md
deleted file mode 100644
index 3f077f571..000000000
--- a/docs/pt-br/api/wrapper-array/setMethods.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# setMethods(methods)
-
-Define os métodos do componente e força sua atualização para cada wrapper no Array.
-
-**Nota: cada wrapper deve ser uma instância do Vue.**
-
-- **Argumentos:**
- - `{Object} methods`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-const mockClique = sinon.stub()
-
-barArray.setMethods({ methodoClique: mockClique })
-barArray.at(0).trigger('click')
-expect(mockClique.called).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper-array/setProps.md b/docs/pt-br/api/wrapper-array/setProps.md
deleted file mode 100644
index f3c2b4371..000000000
--- a/docs/pt-br/api/wrapper-array/setProps.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# setProps(props)
-
-Define as `propriedades` do componente e força sua atualização para cada wrapper no Array.
-
-**Nota: cada wrapper deve ser uma instância do Vue.**
-
-- **Argumentos:**
- - `{Object} propriedades`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-
-barArray.setProps({ foo: 'bar' })
-expect(barArray.at(0).vm.foo).toBe('bar')
-```
diff --git a/docs/pt-br/api/wrapper-array/trigger.md b/docs/pt-br/api/wrapper-array/trigger.md
deleted file mode 100644
index 506289c02..000000000
--- a/docs/pt-br/api/wrapper-array/trigger.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# trigger(eventName)
-
-Aciona um evento no elemeto do DOM de cada wrapper no Array.
-
-**Nota: cada wrapper deve ser uma instância do Vue.**
-
-- **Argumentos:**
- - `{String} eventName`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-
-const mockDoClique = sinon.stub()
-const wrapper = mount(Foo, {
- propsData: { mockDoClique }
-})
-
-const divArray = wrapper.findAll('div')
-divArray.trigger('click')
-
-expect(mockDoClique.called).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper/README.md b/docs/pt-br/api/wrapper/README.md
deleted file mode 100644
index b7eccd817..000000000
--- a/docs/pt-br/api/wrapper/README.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# Wrapper
-
-vue-test-utils é uma API baseada em *wrapper*.
-
-Um `Wrapper` é um objeto que contém um componente montado ou um vnode e alguns métodos para testar esse item envelopado.
-
-- **Propriedades:**
-
-`vm` `Component`: é uma instância Vue. Você pode acessar todos os [métodos de instância e propriedades de um vm](https://vuejs.org/v2/api/#Instance-Properties) com o `wrapper.vm`. Ela só exite em wrappers de componentes Vue.
-
-`element` `HTMLElement`: elemento raiz do DOM do wrapper.
-
-`options` `Object`: Objeto que contém as opções do vue-test-utils para ser passado para o `mount` ou `shallow`.
-
-- **Métodos:**
-
-Exite uma lista detalhada de métodos na seção Wrapper dessa documentação.
diff --git a/docs/pt-br/api/wrapper/contains.md b/docs/pt-br/api/wrapper/contains.md
deleted file mode 100644
index 612e8364f..000000000
--- a/docs/pt-br/api/wrapper/contains.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# contains(selector)
-
-Verifica se o wrapper contém um elemento ou componente com o [seletor](../selectors.md) informado.
-
-- **Argumentos:**
- - `{String|Component} selector`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.contains('p')).toBe(true)
-expect(wrapper.contains(Bar)).toBe(true)
-```
-
-- **Veja também:** [seletores](../selectors.md)
diff --git a/docs/pt-br/api/wrapper/destroy.md b/docs/pt-br/api/wrapper/destroy.md
deleted file mode 100644
index 56572e6e6..000000000
--- a/docs/pt-br/api/wrapper/destroy.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# destroy()
-
-Destrói a instância do componente Vue.
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-
-const spy = sinon.stub()
-
-mount({
- render: null,
- destroyed () {
- spy()
- }
-}).destroy()
-
-expect(spy.calledOnce).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper/emitted.md b/docs/pt-br/api/wrapper/emitted.md
deleted file mode 100644
index 99fc30845..000000000
--- a/docs/pt-br/api/wrapper/emitted.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# emitted()
-
-Retorna um objeto contendo os eventos cutomizados emitidos pelo `vm` do wrapper.
-
-- **Retorna:** `{ [name: String]: Array> }`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-
-const wrapper = mount(Componente)
-
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('foo', 123)
-
-/*
-wrapper.emitted() retorna o seguinte objeto:
-{
- foo: [[], [123]]
-}
-*/
-
-// Verifica se o evento foi emitido
-expect(wrapper.emitted().foo).toBeTruthy()
-
-// Verifica aquantidade de emissões do evento
-expect(wrapper.emitted().foo.length).toBe(2)
-
-// Verifica a carga do segundo evento foo emitido
-expect(wrapper.emitted().foo[1]).toEqual([123])
-```
diff --git a/docs/pt-br/api/wrapper/emittedByOrder.md b/docs/pt-br/api/wrapper/emittedByOrder.md
deleted file mode 100644
index e84909624..000000000
--- a/docs/pt-br/api/wrapper/emittedByOrder.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# emittedByOrder()
-
-Retorna um Array contendo os eventos customizados emitidos pelo `vm` do wrapper.
-
-- **Retorna:** `Array<{ name: String, args: Array }>`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-
-const wrapper = mount(Component)
-
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('bar', 123)
-
-/*
-wrapper.emittedByOrder() retorna o seguinte Array:
-[
- { name: 'foo', args: [] },
- { name: 'bar', args: [123] }
-]
-*/
-
-// Verifica a ordem dos eventos chamados
-expect(wrapper.emittedByOrder().map(e => e.name)).toEqual(['foo', 'bar'])
-```
diff --git a/docs/pt-br/api/wrapper/exists.md b/docs/pt-br/api/wrapper/exists.md
deleted file mode 100644
index 4657f2375..000000000
--- a/docs/pt-br/api/wrapper/exists.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# exists()
-
-Verifica se o `Wrapper` ou o `WrapperArray` existe.
-
-Retorna `false` se chamado com um `Wrapper` ou `WrapperArray` vazio.
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-
-expect(wrapper.exists()).toBe(true)
-expect(wrapper.find('nao-existe').exists()).toBe(false)
-expect(wrapper.findAll('div').exists()).toBe(true)
-expect(wrapper.findAll('nao-existe').exists()).toBe(false)
-```
diff --git a/docs/pt-br/api/wrapper/find.md b/docs/pt-br/api/wrapper/find.md
deleted file mode 100644
index cd6defc27..000000000
--- a/docs/pt-br/api/wrapper/find.md
+++ /dev/null
@@ -1,28 +0,0 @@
-# find(selector)
-
-Retorna um wrapper [`Wrapper`](README.md) com o primeiro elmento do DOM ou o componente Vue encontrado a partir do seletor
-
-Use qualquer [seletor](../selectors.md) válido.
-
-- **Argumentos:**
- - `{String|Component} selector`
-
-- **Retorna:** `{Wrapper}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-
-const div = wrapper.find('div')
-expect(div.is('div')).toBe(true)
-
-const bar = wrapper.find(Bar)
-expect(bar.is(Bar)).toBe(true)
-```
-
-- **Veja também:** [Wrapper](README.md)
diff --git a/docs/pt-br/api/wrapper/findAll.md b/docs/pt-br/api/wrapper/findAll.md
deleted file mode 100644
index 963fb8385..000000000
--- a/docs/pt-br/api/wrapper/findAll.md
+++ /dev/null
@@ -1,28 +0,0 @@
-# findAll(selector)
-
-Retorna um [`WrapperArray`](../wrapper-array/README.md) de [Wrappers](README.md).
-
-Use qualquer [seletor](../selectors.md) válido.
-
-- **Argumentos:**
- - `{String|Component} selector`
-
-- **Retorna:** `{WrapperArray}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-
-const div = wrapper.findAll('div').at(0)
-expect(div.is('div')).toBe(true)
-
-const bar = wrapper.findAll(Bar).at(0)
-expect(bar.is(Bar)).toBe(true)
-```
-
-- **Veja também:** [Wrapper](README.md)
diff --git a/docs/pt-br/api/wrapper/hasAttribute.md b/docs/pt-br/api/wrapper/hasAttribute.md
deleted file mode 100644
index d753d66fb..000000000
--- a/docs/pt-br/api/wrapper/hasAttribute.md
+++ /dev/null
@@ -1,36 +0,0 @@
-# hasAttribute(attribute, value)
-
-Verifica se o wrapper contém o atributo mencionado no seu elemento do DOM.
-
-Retorna `true` se o wrapper contém o atributo.
-
-- **Argumentos:**
- - `{String} attribute`
- - `{String} value`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-// Exemplo
...
-const wrapper = mount(Foo)
-expect(wrapper.hasAttribute('id', 'foo')).toBe(true)
-```
-
-- **Alternativa:**
-
-Você poderia obter o atributo do `Wrapper.element` para então verificar baseado no valor retornado:
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.element.getAttribute('id')).toBe('foo')
-```
-
-Isso faz com que o erro da asserção sejá mais informativo.
diff --git a/docs/pt-br/api/wrapper/hasClass.md b/docs/pt-br/api/wrapper/hasClass.md
deleted file mode 100644
index 4ab18d235..000000000
--- a/docs/pt-br/api/wrapper/hasClass.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# hasClass(className)
-
-Verifica se o wrapper do elemento do DOM contém uma classe informada pelo `className`.
-
-Retorna `true` se o wrapper contém a classe.
-
-- **Argumentos:**
- - `{String} className`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.hasClass('bar')).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper/hasProp.md b/docs/pt-br/api/wrapper/hasProp.md
deleted file mode 100644
index 958addc60..000000000
--- a/docs/pt-br/api/wrapper/hasProp.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# hasProp(propriedade, value)
-
-Verifica se o `vm` do wrapper possui uma pripriedade com o valor definido.
-
-Retorna `true` se o `vm` do wrapper tem a `propriedade` com o `value` passado.
-
-**Nota: o wrapper deve conter uma instância do Vue.**
-
-- **Argumentos:**
- - `{String} propriedade`
- - `{any} value`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.hasProp('bar', 10)).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper/html.md b/docs/pt-br/api/wrapper/html.md
deleted file mode 100644
index 336d827d1..000000000
--- a/docs/pt-br/api/wrapper/html.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# html()
-
-Retorna o HTML do elemento do wrapper como uma String.
-
-- **Retorna:** `{String}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.html()).toBe('
Foo
')
-```
diff --git a/docs/pt-br/api/wrapper/is.md b/docs/pt-br/api/wrapper/is.md
deleted file mode 100644
index 46ae1da3a..000000000
--- a/docs/pt-br/api/wrapper/is.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# is(selector)
-
-Verifica se o `vm` do wrapper possui o [seletor](../selectors.md) informado.
-
-- **Argumentos:**
- - `{String|Component} selector`
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.is('div')).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper/isEmpty.md b/docs/pt-br/api/wrapper/isEmpty.md
deleted file mode 100644
index 61e804df1..000000000
--- a/docs/pt-br/api/wrapper/isEmpty.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# isEmpty()
-
-Verifica se o wrapper não contem elementos filhos.
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.isEmpty()).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper/isVueInstance.md b/docs/pt-br/api/wrapper/isVueInstance.md
deleted file mode 100644
index 9bdebe70d..000000000
--- a/docs/pt-br/api/wrapper/isVueInstance.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# isVueInstance()
-
-Verifica se o wrapper é uma intância do Vue.
-
-- **Retorna:** `{Boolean}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.isVueInstance()).toBe(true)
- ```
diff --git a/docs/pt-br/api/wrapper/name.md b/docs/pt-br/api/wrapper/name.md
deleted file mode 100644
index 24ad5d1b8..000000000
--- a/docs/pt-br/api/wrapper/name.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# name()
-
-Retorna o nome do componente se o wrapper for uma instância do Vue, ou então o nome da tag se o wrapper for um elemento do DOM e não for uma instância do Vue.
-
-- **Retorna:** `{String}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.name()).toBe('Foo')
-const p = wrapper.find('p')
-expect(p.name()).toBe('p')
-```
diff --git a/docs/pt-br/api/wrapper/setData.md b/docs/pt-br/api/wrapper/setData.md
deleted file mode 100644
index f9b22deb5..000000000
--- a/docs/pt-br/api/wrapper/setData.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# setData(data)
-
-Define os dados do `vm` do wrapper e força a sua atualização.
-
-**Nota: o wrapper deve ser uma instância do Vue.**
-
-- **Argumentos:**
- - `{Object} data`
-
-- **Exemplo:**
-
-```js
-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')
-```
diff --git a/docs/pt-br/api/wrapper/setMethods.md b/docs/pt-br/api/wrapper/setMethods.md
deleted file mode 100644
index c8ade1826..000000000
--- a/docs/pt-br/api/wrapper/setMethods.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# setMethods(methods)
-
-Define os métodos do `vm` do wrapper e força sua atualização.
-
-**Nota: o wrapper deve ser uma instância do Vue.**
-
-- **Argumentos:**
- - `{Object} methods`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const mockClique = sinon.stub()
-
-wrapper.setMethods({ metodoClique: mockClique })
-wrapper.find('button').trigger('click')
-expect(mockClique.called).toBe(true)
-```
diff --git a/docs/pt-br/api/wrapper/setProps.md b/docs/pt-br/api/wrapper/setProps.md
deleted file mode 100644
index 0d5b0c176..000000000
--- a/docs/pt-br/api/wrapper/setProps.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# setProps(props)
-
-Define as propriedades do `vm` do wrapper e força sua atualização.
-
-**Nota: o wrapper deve ser uma instância do Vue.**
-
-- **Argumentos:**
- - `{Object} propriedades`
-
-- **Exemplo:**
-
-```js
-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')
-```
-
-Além disso, você pode passar o objeto `propsData`, que irá inicializar a instância do Vue com os valores passados.
-
-``` js
-// Foo.vue
-export default {
- props: {
- foo: {
- type: String,
- required: true
- }
- }
-}
-```
-
-``` js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo, {
- propsData: {
- foo: 'bar'
- }
-})
-
-expect(wrapper.vm.foo).toBe('bar')
-```
diff --git a/docs/pt-br/api/wrapper/text.md b/docs/pt-br/api/wrapper/text.md
deleted file mode 100644
index 4cca08814..000000000
--- a/docs/pt-br/api/wrapper/text.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# text()
-
-Retorna o texto contido no wrapper.
-
-- **Retorna:** `{String}`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.text()).toBe('bar')
-```
diff --git a/docs/pt-br/api/wrapper/trigger.md b/docs/pt-br/api/wrapper/trigger.md
deleted file mode 100644
index 2748b5d5c..000000000
--- a/docs/pt-br/api/wrapper/trigger.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# trigger(eventName {, options}])
-
-Aciona um evento do elemento do wrapper.
-
-O método `trigger` usa o objeto opicional `options`, essas opções serão adicionadas ao evento.
-
-- **Argumentos:**
- - `{String} eventName`
- - `{Object} options`
-
-- **Exemplo:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo'
-
-const eventoClique = sinon.stub()
-const wrapper = mount(Foo, {
- propsData: { eventoClique }
-})
-
-wrapper.trigger('click')
-
-wrapper.trigger('click', {
- botao: 0
-})
-
-expect(clickHandler.called).toBe(true)
-```
diff --git a/docs/pt-br/guides/README.md b/docs/pt-br/guides/README.md
deleted file mode 100644
index 8739bb4bc..000000000
--- a/docs/pt-br/guides/README.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Guia
-
-* [Iniciando](./getting-started.md)
-* [Dicas comuns](./common-tips.md)
-* [Escolhendo um executador de testes](./choosing-a-test-runner.md)
-* [Testando SFCs com Jest](./testing-SFCs-with-jest.md)
-* [Testando SFCs com Mocha + webpack](./testing-SFCs-with-mocha-webpack.md)
-* [Usando com o Vue Router](./using-with-vue-router.md)
-* [Usando com o Vuex](./using-with-vuex.md)
diff --git a/docs/pt-br/guides/choosing-a-test-runner.md b/docs/pt-br/guides/choosing-a-test-runner.md
deleted file mode 100644
index 94a6ec1a0..000000000
--- a/docs/pt-br/guides/choosing-a-test-runner.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# Escolhendo um executador de testes
-
-Um *test runner* é um programa com objetivo de executar seus testes.
-
-Existem muitos executadores de testes populares no Javascript, o `vue-test-utils` funciona com todos eles.
-
-Há algumas coisas a considerar ao escolher um *test runner*: conjunto de recursos, desempenho e suporte a pré-compilação de componentes de arquivo único (SFC). Depois de comparar cuidadosamente as bibliotecas existentes, aqui estão dois *test runner* que recomendamos:
-
-- [Jest](https://facebook.github.io/jest/docs/en/getting-started.html#content) é o executador de testes mais completo. Ele requer menos configuração, usa JSDOM por padrão, e fornece uma ótima experiência de usuário na linha de comando. Contudo, você vai precisar de um pré-processador para ser possível importar componentes SFC em seus testes. Nos criamos o pré-processador `vue-jest`, para lidar com os recursos SFC mais comuns, mas atualmente não possuímos 100% de compatibilidade com o `vue-loader`.
-
-- [mocha-webpack](https://github.com/zinserjan/mocha-webpack) é um
-wrapper que envolve o webpack e o Mocha, mas com uma interface simplificada e um modo observador. O benefício dessa configuração é o suporte SFC completo via webpack + `vue-loader`, mas isso requer maiores configurações antecipadas.
-
-## Ambiente de navegador
-
-O `vue-test-utils` depende de um ambiente de navegador. Tecnicamente, você pode executa-lo em um navegador real, mas não recomendamos isso por causa da complexidade de executar navegadores reais em diferentes plataformas. Portanto, recomendamos que execute seus testes no Node.js com um ambiente virtual de navegador usando o [JSDOM](https://github.com/tmpvar/jsdom).
-
-O Jets configura automaticamente o JSDOM. Para outros *test runners*, você pode configurar o JSDOM manualmente para os seus testes usando o [jsdom-global](https://github.com/rstacruz/jsdom-global) na entrada dos testes:
-
-``` bash
-npm install --save-dev jsdom jsdom-global
-```
----
-``` js
-// na entrada ou configurações dos testes
-require('jsdom-global')()
-```
-
-## Testando componentes de arquivo único (SFC)
-
-Os componentes de arquivo único do Vue requerem uma pré-compilação antes que possam ser executados no Node ou no navegador. Há duas maneiras recomendadas para executar essa compilação: com o pré-processador Jest ou diretamente usando o webpack.
-
-O pré-processador `vue-jest` suporta as funcionalidades básicas dos SFCs, mas atualmente não manipula blocos de estilos ou personalizados, que são suportados apenas no `vue-loader`. Se você depender desses recursos ou de outras configurações específicas do webpack, você precisará usar uma configuração baseada no webpack + `vue-loader`.
-
-Leia os guias a seguir para cofigurações diferentes:
-
-- [Testando SFCs com Jest](./testing-SFCs-with-jest.md)
-- [Testando SFCs com Mocha + webpack](./testing-SFCs-with-mocha-webpack.md)
-
-## Recursos
-
-- [Comparação de desempenho entre test runners](https://github.com/eddyerburgh/vue-unit-test-perf-comparison)
-- [Projeto de exemplo com o Jest](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Projeto de exemplo com o Mocha](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [Projeto de exemplo com o tape](https://github.com/eddyerburgh/vue-test-utils-tape-example)
-- [Projeto de exemplo com o AVA](https://github.com/eddyerburgh/vue-test-utils-ava-example)
diff --git a/docs/pt-br/guides/common-tips.md b/docs/pt-br/guides/common-tips.md
deleted file mode 100644
index cefda989d..000000000
--- a/docs/pt-br/guides/common-tips.md
+++ /dev/null
@@ -1,136 +0,0 @@
-# Dicas comuns
-
-## Sabendo o que testar
-
-Para componentes com interface não recomendamos o foco na cobertura completa baseada em linha, porque ela leva muito o foco para detalhes internos da implementação dos componentes, podendo resultar em testes frágeis.
-
-Em vez disso, nós recomendamos escrever testes que verifiquem seus componentes com interface pública e trate os internos como uma caixa preta. Um caso de teste único irá verificar se a entrada (interações do usuário ou troca de props) forneceu o resultado (renderização ou emissão de eventos) esperado para o componente.
-
-Por exemplo, para o componente `Counter` que incrementa um contador em cada vez que um botão é clicado, seu caso de teste teria que simular o clique e verificar se a saída renderizada se incrementou. O teste não se importa sobre como `Counter` incrementou o valor, ele apenas se preocupa com a entrada e a saída dos dados.
-
-O benefício desta abordagem é que enquanto a interface pública do seu componente permanece a mesma, seus testes irão passar sem se importar de como o componente faz a implementação do código interno e se houve ou não mudanças por lá.
-
-Esse tópico é discutido com mais detalhes em uma [excelente apresentação de Matt O'Connell](http://slides.com/mattoconnell/deck#/).
-
-## Renderização superficial
-
-Em testes de unidade, normalmente queremos nos focar no componente a ser testeado, isolando-o como uma unidade e evitando verificações indiretas em comportamentos dos seus filhos.
-
-Além disso, para componentes que possuem muitos componentes filhos, toda a árvore de renderização pode ficar realmente grande. A repetição de renderização de todos componentes filhos vão deixar seus testes lentos.
-
-O `vue-test-utils` permite que você monte um componente sem renderizar seus componentes filhos, para isso, use o método `shallowMount`:
-
-```js
-import { shallowMmount } from '@vue/test-utils'
-
-// obtém o wrapper contendo a instância montada de Componente
-const wrapper = shallowMount(Componente)
-wrapper.vm // instância do Vue já montada
-```
-
-## Verificando os eventos emitidos
-
-Cada wrapper montado grava automaticamente todos os eventos emitidos pela instância Vue contida. Você pode recuperar os eventos registrados usando o método `emitted`:
-
-``` js
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('foo', 123)
-
-/*
-wrapper.emitted() retorna o objeto a seguir:
-{
- foo: [ [], [123] ]
-}
-*/
-```
-
-Então você pode criar asserções baseadas nesses dados:
-
-``` js
-// verifica se o evento 'foo' foi emitido
-expect(wrapper.emitted().foo).toBeTruthy()
-
-// verifica as vezes que o evento 'foo' doi emitido
-expect(wrapper.emitted().foo.length).toBe(2)
-
-// verifica a carga do segundo evento 'foo' emitido
-expect(wrapper.emitted().foo[1]).toEqual([123])
-```
-
-Além disso, você pode pegar um Array dos eventos emitidos em ordem de chamada com o método [wrapper.emittedByOrder()](../api/wrapper/emittedByOrder.md).
-
-## Manipulando o estado do componente
-
-Você pode manipular diretamente o estado do componente usando os métodos `setData` ou `setProps` no wrapper:
-
-```js
-wrapper.setData({ contador: 10 })
-
-wrapper.setProps({ foo: 'bar' })
-```
-
-## Simulando propriedades
-
-Você pode passar propriedades para o componente usando a opção `propsData` integrada no Vue:
-
-```js
-import { mount } from '@vue/test-utils'
-
-mount(Component, {
- propsData: {
- umaProp: 'qualquer valor'
- }
-})
-```
-
-Você também pode atualizar as propriedades mesmo com o componente já montado, para isso use o método `wrapper.setProps({})`.
-
-*Para ver a lista completa de opções, por favor veja a seção [opções de montagem](../api/options.md) nessa documentação.*
-
-## Aplicando plugins e mixins globais
-
-Alguns dos seus componentes podem ter características injetadas por um plugin ou mixin global, por exemplo o `vuex`, `vue-router` e `vue-multilanguage`.
-
-Se você está escrevendo testes para componentes de uma aplicação específica, você pode configurar os plugins e mixins globais uma vez na entrada dos seus testes. Mas, em alguns casos, por exemplo, testando um pacote de componentes genéricos que podem ser compartilhados em diferentes aplicações, será melhor testar seus componentes com uma configuração mais isolada, sem popular o construtor global do Vue. Nós podemos usar o método [createLocalVue](../api/createLocalVue.md) para conseguir isso:
-
-``` js
-import { createLocalVue } from '@vue/test-utils'
-
-// criando um construtor ampliado do Vue
-const localVue = createLocalVue()
-
-// Instalando normalmente os seus plugins
-localVue.use(MeuPlugin)
-
-// Passe o localVue para o wrapper do componente
-mount(Componente, {
- localVue
-})
-```
-
-## Simulando injeções
-
-Outra estratégia para injetar propriedades é simplesmente simular ela. Você pode fazer isso com a opção `mocks`:
-
-```js
-import { mount } from '@vue/test-utils'
-
-const $route = {
- path: '/',
- hash: '',
- params: { id: '123' },
- query: { q: 'hello' }
-}
-
-mount(Component, {
- mocks: {
- // adiciona o objeto $route simulado na instância Vue
- // antes da montagem do componente
- $route
- }
-})
-```
-
-## Lidando com o roteamento
-
-Uma vez que o roteamento, por definição, tem a ver com a estrutura geral da aplicação e envolve muitos componentes, é melhor testado atráves de testes de integração ou de ponta a ponta. Para componentes individuais que dependem dos recursos do `vue-router`, você pode simula-lo usando as técnicas mencionadas acima.
diff --git a/docs/pt-br/guides/dom-events.md b/docs/pt-br/guides/dom-events.md
deleted file mode 100644
index 5b3402db4..000000000
--- a/docs/pt-br/guides/dom-events.md
+++ /dev/null
@@ -1,194 +0,0 @@
-# Testando mouse, teclas e outros eventos do DOM
-
-## Desencadear eventos
-
-O wrapper (wrapper) expõe o método `trigger`. Ele pode ser usado para desencadear eventos do DOM.
-
-```js
-const wrapper = mount(MeuBotao)
-
-wrapper.trigger('click')
-```
-
-Você deve estar ciente que esse método também retorna um wrapper. Assumindo que em `MeuComponente` há um botão, o código a seguir simula o clique no botão.
-
-```js
-const wrapper = mount(MeuComponente)
-
-wrapper.find('button').trigger('click')
-```
-
-## Opções
-
-O método `trigger` pode receber um objeto `options` opcional. As propriedades no objeto `options` serão adicionadas no evento.
-
-```js
-const wrapper = mount(MeuBotao)
-
-wrapper.trigger('click', { button: 0 })
-```
-
-## Exemplo de clique no mouse
-
-**Componente que será testado**
-
-```html
-
-
-
-
-
-
-
-
-```
-
-**Teste**
-
-```js
-import SimNaoComponente from '@/componentes/SimNaoComponente'
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-
-describe('Evento de clique', () => {
- it('Clieque no botão sim chama o método com o argumento "sim"', () => {
- const spy = sinon.spy()
- const wrapper = mount(SimNaoComponente, {
- propsData: {
- meLigou: spy
- }
- })
- wrapper.find('button.sim').trigger('click')
-
- spy.should.have.been.calledWith('sim')
- })
-})
-```
-
-## Exemplo do teclado
-
-**Componente a ser testado**
-
-Esse componente permite incrementar ou decrementar o contador usando várias teclas do teclado.
-
-```html
-
-
-
-
-
-```
-
-**Test**
-
-```js
-import ContadorComponente from '@/componentes/ContadorComponente'
-import { mount } from '@vue/test-utils'
-
-describe('Testes de eventos de tecla', () => {
- it('Contador é zero por padrão', () => {
- const wrapper = mount(ContadorComponente)
- expect(wrapper.vm.contador).toBe(0)
- })
-
- it('Tecla para cima incrementa contador para um', () => {
- const wrapper = mount(ContadorComponente)
- wrapper.trigger('keydown.up')
- expect(wrapper.vm.contador).toBe(1)
- })
-
- it('Tecla para baixo decrementa contador para quatro', () => {
- const wrapper = mount(ContadorComponente)
- wrapper.vm.contador = 5
- wrapper.trigger('keydown.down')
- expect(wrapper.vm.contador).toBe(4)
- })
-
- it('Tecla esc volta o contador para zero', () => {
- const wrapper = mount(ContadorComponente)
- wrapper.vm.contador = 5
- wrapper.trigger('keydown.esc')
- expect(wrapper.vm.contador).toBe(0)
- })
-
- it('Tecla A define o contador para 13', () => {
- const wrapper = mount(ContadorComponente)
- wrapper.trigger('keydown', {
- which: 65
- })
- expect(wrapper.vm.contador).toBe(13)
- })
-})
-
-```
-
-**Limitações**
-
-O nome da tecla depois do ponto em `keydown.up` é traduzido para o `keyCode`. Isso é suportado para os seguintes nomes:
-
-* enter, tab, delete, esc, space, up, down, left, right
-
-## Importante
-
-vue-test-utils desencadeia eventos de forma síncrona. Consequentemente, o uso do `vue.nextTick` não é necessário.
diff --git a/docs/pt-br/guides/getting-started.md b/docs/pt-br/guides/getting-started.md
deleted file mode 100644
index 50710fd6c..000000000
--- a/docs/pt-br/guides/getting-started.md
+++ /dev/null
@@ -1,116 +0,0 @@
-# Iniciando
-
-## Configuração
-
-Para obter um exemplo rápido de uso do `vue-test-utils` clone nosso repositório de demonstração que contém as configurações básicas e instale as dependências:
-
-``` bash
-git clone https://github.com/vuejs/vue-test-utils-getting-started
-cd vue-test-utils-getting-started
-npm install
-```
-
-Você verá que o projeto inclui um componente simples, chamado `counter.js`:
-
-```js
-// counter.js
-
-export default {
- template: `
-
- {{ count }}
-
-
- `,
-
- data () {
- return {
- count: 0
- }
- },
-
- methods: {
- increment () {
- this.count++
- }
- }
-}
-```
-
-### Montando seus componentes
-
-O `vue-test-utils` testa os componentes do Vue montando-os isoladamente, simulando as entradas necessárias (propriedades, slots e eventos de usuário) e verificando as saídas (renderização, eventos personalizados emitidos).
-
-Os componentes montados são retornados em um wrapper (wrapper) que expõe muitos métodos para manipular, percorrer e consultar a instância do componente Vue correspondente.
-
-Você pode criar essses wrappers usando o método `mount`. Vamos criar um chamado `test.js`:
-
-```js
-// test.js
-
-// Importando o método mount() do test utils
-// e o componente Counter para ser testado
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-// Agora montamos o componente e obtermos o wrapper
-const wrapper = mount(Counter)
-
-// Você pode acessar a instância atual do Vue através de wrapper.vm
-const vm = wrapper.vm
-
-// Para inspecionar a composição do wrapper exiba-o no console
-// ...Sua aventura com o vue-test-utils começa agora :)
-console.log(wrapper)
-```
-
-### Testar a saída HTML do componente
-
-Agora que nós já temos o wrapper, a primeira coisa que podemos fazer é verificar se a saída HTML que componente nos entrega é a esperada.
-
-```js
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-describe('Counter', () => {
- // Montando o componente e obtendo o wrapper
- const wrapper = mount(Counter)
-
- it('renderiza o HTML correto', () => {
- expect(wrapper.html()).toContain('0')
- })
-
- // Também é fácil verificar se um elemento existe
- it('verifica se o botão foi desenhado', () => {
- expect(wrapper.contains('button')).toBe(true)
- })
-})
-```
-
-Agora execute os testes com o comando `npm tests`. Você deve ver os testes passando.
-
-### Simulando a interação do usuário
-
-Nosso `Counter` deve incrementar o contador quando o usuário clica no botão. Para simular esse comportamento, primeiro precisamos localizar o botão com `wrapper.find()`, que retorna um wrapper (wrapper) para o elemento do botão. Agora nós podemos simular o evento de clique, chamando o método `trigger()` no wrapper do botão:
-
-```js
-it('o clique do botão deve incrementar a contagem', () => {
- expect(wrapper.vm.count).toBe(0)
- const button = wrapper.find('button')
- button.trigger('click')
- expect(wrapper.vm.count).toBe(1)
-})
-```
-
-### E quanto ao `nextTick`?
-
-Os lotes Vue estão pendentes de atualizações do DOM, aplicando-as de forma assíncrona para evitar re-renders desnecessários causados por múltiplas mutações de dados. É por isso que, na prática, muitas vezes temos que usar `Vue.nextTick` para esperar até que o Vue realize a atualização real do DOM, depois de ativar algumas mudanças de estado.
-
-Para simplificar o uso, o `vue-test-utils` aplica todas as atualizações de forma síncrona, então você não precisa usar o `Vue.nextTick` para esperar por atualizações do DOM nos seus testes.
-
-*Nota: o `nextTick` ainda é necessário para quando você precisa avançar explicitamente o ciclo do evento, ou seja, para operações como retorno de chamadas assíncronas ou resultados de uma Promise.*
-
-## A seguir
-
-- Integre o `vue-test-utils` no seu projeto [escolhendo seu executador de testes](./choosing-a-test-runner.md)
-- Leia mais sobre [técnicas comuns ao escrever testes](./common-tips.md)
diff --git a/docs/pt-br/guides/testing-SFCs-with-jest.md b/docs/pt-br/guides/testing-SFCs-with-jest.md
deleted file mode 100644
index a4a459af4..000000000
--- a/docs/pt-br/guides/testing-SFCs-with-jest.md
+++ /dev/null
@@ -1,182 +0,0 @@
-# Testando componentes de arquivo único com Jest
-
-> Um projeto de exemplo para esta configuração está disponível no [GitHub](https://github.com/vuejs/vue-test-utils-jest-example).
-
-Jest é um executador de teste desenvolvido pelo Facebook, visa entregar uma bateria de testes de unidade. Você pode aprender mais sobre o Jets na sua [documentanção oficial](https://facebook.github.io/jest/).
-
-## Configurando o Jest
-
-Nós vamos assumir que você está iniciando com a configuração que já possui o webpack, vue-loader e Babel configurados corretamente - por exemplo o template `webpack-simple` fornecido pelo `vue-cli`.
-
-A primeira coisa para se fazer é instalar o Jest e o `vue-test-utils`:
-
-```bash
-$ npm install --save-dev jest vue-test-utils
-```
-ou
-
-```bash
-$ npm install --save-dev jest @vue/test-utils
-```
-
-Posteriormente, devemos definir um script novo no `package.json`:
-
-```json
-// package.json
-{
- "scripts": {
- "test": "jest"
- }
-}
-```
-
-## Processando SFCs com o Jest
-
-Para ensinar o Jest cmo processar arquivos `*.vue`, precisamos instalar e configurar o pré-processador `vue-jest`:
-
-``` bash
-npm install --save-dev vue-jest
-```
-
-Agora, crie um bloco chamado `jest` no `package.json`:
-
-``` json
-{
- // ...
- "jest": {
- "moduleFileExtensions": [
- "js",
- "json",
- // diga que o Jest irá reconhecer arquivos vue
- "vue"
- ],
- "transform": {
- // processa arquivos vue com o vue-jest
- ".*\\.(vue)$": "/node_modules/vue-jest"
- },
- }
-}
-```
-
-> **Nota:** o `vue-jest` atualmente não suporta todos os recursos do `vue-loader`, por exemplo, blocos personalizados e estilo de carregamento. Além disso, alguns recursos específicos do webpack, como o [code-splitting](http://www.vuejs-brasil.com.br/separando-codigo-vue), também não são suportados. Para usá-los, leia o guia [testando SFCs com Mocha + webpack](./testing-SFCs-with-mocha-webpack.md).
-
-## Manipulação de alias do webpack
-
-Se você usa um alias de resolução na configuração do webpack, por exemplo usar `@` como atalho para `/src`, você precisará adicionar uma configuração correspondente para o Jest, usando a opção `moduleNameMapper`:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // suporta o mapeamento @ para /src do código fonte
- "moduleNameMapper": {
- "^@/(.*)$": "/src/$1"
- }
- }
-}
-```
-
-## Configurando o Babel no Jest
-
-Apesar das últimas versões do Node já suportar muitos recursos do ES2015, você ainda pode querer usar a síntaxe e stage-x nos módulos ES em seus testes. Para isso, precisamos instalar o `babel-jest`:
-
-``` bash
-npm install --save-dev babel-jest
-```
-
-Agora, nos precisamos dizer ao Jest para processar o arquivos de teste em Javascript com o `babel-jest`. Para isso, adicionamos uma entrada `jest.transform` no `package.json`:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- "transform": {
- // ...
- // processar arquivos .js com o babel-jest
- "^.+\\.js$": "/node_modules/babel-jest"
- },
- // ...
- }
-}
-```
-
-> Por padrão, o `babel-jest` configura-se automaticamente enquanto estiver instalado. Contudo, adicionamos explicitamente uma transformação para arquivos `*.vue`, então agora precisamos configurar isso no `babel-jest` também.
-
-Assumindo que você usa o `babel-preset-env` com o webpack, a configuração padrão do Babel desabilitará a transpilação dos módulos ES porque o webpack já sabe como lidar com módulos ES. Entretanto, precisamos habilitar isso para nossos testes, porque o Jest executa seus testes diretamente no Node.
-
-Além disso, podemos dizer ao `babel-preset-env` para segmentar a versão do Node que estamos usando. Isso ignora a transposição de recursos desnecessários e faz com que nossos testes sejam mais rápidos.
-
-Para aplicar todas essas opções apenas para os testes, coloque-as em uma configuração separada em `env.test` (isso será automaticamente pego pelo `babel-jest`).
-
-Exemplo do novo `.babelrc`:
-
-``` json
-{
- "presets": [
- ["env", { "modules": false }]
- ],
- "env": {
- "test": {
- "presets": [
- ["env", { "targets": { "node": "current" }}]
- ]
- }
- }
-}
-```
-
-### Teste instantâneo
-
-Você pode usar o [`vue-server-renderer`](https://github.com/vuejs/vue/tree/dev/packages/vue-server-renderer) para transformar um componente em uma String para que ele possa ser salvo como instântaneo para o [teste instântaneo com Jest](https://facebook.github.io/jest/docs/en/snapshot-testing.html).
-
-O resultado do `vue-server-renderer` inclui alguns atributos específicos de SSR e ignora espaços em branco, dificultando a detecção de um diff. Podemos melhorar o instantâneo salvo com um serializador personalizado:
-
-``` bash
-npm install --save-dev jest-serializer-vue
-```
-
-Em seguida, configure-o no `package.json`:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // serializador para o instantâneo
- "snapshotSerializers": [
- "/node_modules/jest-serializer-vue"
- ]
- }
-}
-```
-
-### Colocando arquivos de teste
-
-Por padrão, o Jest irá recursivamente pegar todos os arquivosque tenham uma extensão `.spec.js` ou `.test.js` em todo o seu projeto. Se isso não for de acordo com o seu esperado, é possível [alterar o testRegex](https://facebook.github.io/jest/docs/en/configuration.html#testregex-String) na seção `config` no arquivo `package.json`.
-
-O Jest recomenda a criação de um diretório `__tests__` logo ao lado do código que está sendo testado, mas sinta-se livre para estruturar seus testes conforme entender. Apenas tenha cuidado com o fato de o Jest criar um diretório `__snapshots__` ao lado dos arquivos de teste que executam testes instantâneos.
-
-### Exemplo de spec
-
-Se você está familiarizado com o Jasmine, você deve se sentir em casa com a [API de asserção](https://facebook.github.io/jest/docs/en/expect.html#content) do Jest:
-
-```js
-import { mount } from '@vue/test-utils'
-import Componente from './componente'
-
-describe('Componente', () => {
- test('é uma instância do Vue', () => {
- const wrapper = mount(Componente)
- expect(wrapper.isVueInstance()).toBeTruthy()
- })
-})
-```
-
-### Recursos
-
-- [Exemplo de projeto para esta configuração](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Exemplos e slides do Vue Conf 2017](https://github.com/codebryo/vue-testing-with-jest-conf17)
-- [Jest](https://facebook.github.io/jest/)
-- [Babel preset env](https://github.com/babel/babel-preset-env)
diff --git a/docs/pt-br/guides/testing-SFCs-with-mocha-webpack.md b/docs/pt-br/guides/testing-SFCs-with-mocha-webpack.md
deleted file mode 100644
index adbd5f789..000000000
--- a/docs/pt-br/guides/testing-SFCs-with-mocha-webpack.md
+++ /dev/null
@@ -1,180 +0,0 @@
-# Testando componentes de arquivo único com o Mocha + webpack
-
-> Um projeto de exemplo com essa configuração está disponível no [GitHub](https://github.com/vuejs/vue-test-utils-mocha-webpack-example).
-
-Outra estratégia para testar SFCs é compilar todos os seus testes via webpack e depois rodar em um *test runner*. A vantagem dessa abordagem é poder ter o suporte total para todos os recursos do webpack e `vue-loader`, por isso não temos que fazer compromissos em nosso código-fonte.
-
-Tecnicamente você pode usar qualquer executador de teste que você goste e alinhar as coisas de forma manual, mas descobrimos o [`mocha-webpack`](https://github.com/zinserjan/mocha-webpack) para fornecer uma experiência muito simplificada para essa tarefa específica.
-
-## Configurando o `mocha-webpack`
-
-Assumiremos que você está começando com o webpack, vue-loader e babel corretamente configurados, por exemplo com o template `webpack-simple` fornecido pelo `vue-cli`.
-
-A primeira coisa a se fazer é instalar as dependências dos testes:
-
-``` bash
-npm install --save-dev @vue/test-utils mocha mocha-webpack
-```
-
-Posteriormente, defina o script `test` no `package.json`:
-
-```json
-// package.json
-{
- "scripts": {
- "test": "mocha-webpack --webpack-config webpack.config.js --require test/setup.js test/**/*.spec.js"
- }
-}
-```
-
-Temos algumas coisas a serem observadas aqui:
-
-- A flag `--webpack-config` especifica o arquivo de configuração do webpack para seus testes. Na maioria dos casos, ele é idêntico à configuração que você usa para o projeto real, mas com um pequeno ajuste que falaremos mais tarde.
-
-- A flag `--require` garante que o arquivo `test/setup.js` seja executado antes de qualquer teste, nele nós podemos configurar o ambiente global para nossos testes que irão ser executados.
-
-- O último argumento é um glob para os arquivos de teste a serem incluídos no pacote de teste.
-
-### Configurações extras do webpack
-
-#### Externalização das dependências do NPM
-
-Em nossos testes, provavelmente importaremos uma série de dependências do NPM - algumas dessas dependências podem ser escritas sem o uso do navegador em mente e simplesmente não serão empacotadas corretamente pelo webpack. Então consideramos a externalização das dependências, que melhora consideravelmente a velocidade na inicialização dos testes. Podemos externalizar todas as dependências do NPM com o `webpack-node-externals`:
-
-```js
-// webpack.config.js
-const nodeExternals = require('webpack-node-externals')
-
-module.exports = {
- // ...
- externals: [nodeExternals()]
-}
-```
-
-#### Mapas de origem
-
-Os mapas de origem precisam ser incorporados pra ser capturados pelo `mocha-webpack`. A configuração recomendada é:
-
-``` js
-module.exports = {
- // ...
- devtool: 'inline-cheap-module-source-map'
-}
-```
-
-Se for depurar pela IDE, também recomendamos adicionar o seguinte:
-
-``` js
-module.exports = {
- // ...
- output: {
- // ...
- // use caminhos absolutos nos mapas de origem (depuração via IDE)
- devtoolModuleFilenameTemplate: '[absolute-resource-path]',
- devtoolFallbackModuleFilenameTemplate: '[absolute-resource-path]?[hash]'
- }
-}
-```
-
-### Configurando o ambiente de navegador
-
-O `vue-test-utils` requere um ambiente de navegador para ser executado. Nos simulamos isso no Node.js usando o `jsdom-global`:
-
-```bash
-npm install --save-dev jsdom jsdom-global
-```
-
-Então, em `test/setup.js`:
-
-``` js
-require('jsdom-global')()
-```
-
-Isso adiciona um ambiente de navegador ao Node, de modo que o `vue-test-utils` possa ser executado corretamente.
-
-### Escolhendo uma biblioteca de asserção
-
-[Chai](http://chaijs.com/) é uma biblioteca popular que é comumente usada ao lado do Mocha. Você também pode querer usar o [Sinon](http://sinonjs.org/) para criar spies e esboços.
-
-Como alternativa, você pode usar o `expect` que agora é uma parte do Jest e expõe [exatamente a mesma API](http://facebook.github.io/jest/docs/en/expect.html#content) na documentação do Jest.
-
-Estaremos usando o `expect`aqui e o tornaremos disponível globlamente para que não tenhamos que importá-lo em cada teste:
-
-``` bash
-npm install --save-dev expect
-```
-
-Então, em `test/setup.js`:
-
-``` js
-require('jsdom-global')()
-
-global.expect = require('expect')
-```
-
-### Otimizando o Babel para os testes
-
-Observe que estamos usando o `babel-loader` para lidar com o JavaScript. Você já deve ter o Babel configurado se existir um arquivo `.babelrc` no seu projeto. O `babel-loader` usará automaticamente o mesmo arquivo para realizar a configuração.
-
-Uma coisa deve ser observada se você está usando o Node 6+, a partir dessa versão ele suporta a maioria dos recursos do ES2015, então você pode configurar separadamente a opção Babel [env option](https://babeljs.io/docs/usage/babelrc/#env-option) que transpila somente os recursos que ainda não são suportados na versão do Node instalada, por exemplo o stage-2 ou o suporte de síntaxe de fluxo, entre outros.
-
-### Adicionando um teste
-
-Crie um arquivo no diretório `src` chamado `Contador.vue`:
-
-``` html
-
-
- {{ contador }}
-
-
-
-
-
-```
-
-Agora crie um arquivo de teste chamado `test/Contador.spec.js` com o código a seguir:
-
-```js
-import { shallow } from '@vue/test-utils'
-import Contador from '../src/Contador.vue'
-
-describe('Contador.vue', () => {
- it('incrementa o contador quando o botão é clicado', () => {
- const wrapper = shallow(Contador)
- wrapper.find('button').trigger('click')
- expect(wrapper.find('div').text()).toMatch('1')
- })
-})
-```
-
-Agora nós podemos executar o teste usando:
-
-```
-npm run test
-```
-
-Woohoo :o, nossos testes estão rodando!
-
-### Recursos
-
-- [Projeto de exemplo com essa configuração](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [Mocha](https://mochajs.org/)
-- [mocha-webpack](http://zinserjan.github.io/mocha-webpack/)
-- [Chai](http://chaijs.com/)
-- [Sinon](http://sinonjs.org/)
-- [jest/expect](http://facebook.github.io/jest/docs/en/expect.html#content)
diff --git a/docs/pt-br/guides/using-with-vue-router.md b/docs/pt-br/guides/using-with-vue-router.md
deleted file mode 100644
index 066468e07..000000000
--- a/docs/pt-br/guides/using-with-vue-router.md
+++ /dev/null
@@ -1,72 +0,0 @@
-# Usando com o Vue Router
-
-## Instalando o Vue Router nos testes
-
-Você nunca deveria instalar o Vue Router no construtor base do Vue dos seus testes. A instalação do Vue Router adiciona `$route` e `$router` como propriedades de somente leitura no protótipo dos componentes Vue.
-
-Para evitar isso, nós criamos o `localVue` e instalamos o Vue Router no seu interior.
-
-```js
-import VueRouter from 'vue-router'
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-const router = new VueRouter()
-
-shallow(Component, {
- localVue,
- router
-})
-```
-
-## Testando componentes que usam `router-link` ou `router-view`
-
-Quando você instala o Vue Router, os componentes `router-link` e `router-view` são registrados. Isso significa que podemos usa-los em qualquer lugar da nossa aplicação sem precisar importá-los.
-
-Quando executamos os testes, nós precisamos disponibilizar os componentes do Vue Router para os componentes que estamos montando. Existem dois métodos para se fazer isso.
-
-### Usando esboços
-
-```js
-shallow(Componente, {
- stubs: ['router-link', 'router-view']
-})
-```
-
-### Instalando o Vue Router com o localVue
-
-```js
-import VueRouter from 'vue-router'
-const localVue = createLocalVue()
-
-localVue.use(VueRouter)
-
-shallow(Componente, {
- localVue
-})
-```
-
-## Simulando o `$route` e o `$router`
-
-Às vezes você quer testar que um componente faz algo com os parâmetros dos objetos `$route` e `$router`. Para fazer isso você pode passar mocks personalizados para a instância do Vue.
-
-```js
-const $route = {
- path: '/rota/qualquer'
-}
-
-const wrapper = shallow(Component, {
- mocks: {
- $route
- }
-})
-
-wrapper.vm.$router // /rota/qualquer
-```
-
-## Obstáculos comuns
-
-A instalação do Vue Router adiciona `$route` e `$router` como propriedades de somente leitura do protótipo Vue.
-
-Isso significa que todos os testes futuros que tentam simular o `$route` ou o `$router` irão falhar.
-
-Para evitar isso, nunca instale o Vue Router quando estiver executando seus testes.
diff --git a/docs/pt-br/guides/using-with-vuex.md b/docs/pt-br/guides/using-with-vuex.md
deleted file mode 100644
index d4a07c1f4..000000000
--- a/docs/pt-br/guides/using-with-vuex.md
+++ /dev/null
@@ -1,266 +0,0 @@
-# Usando com o Vuex
-
-Nesse guia verems como testar o Vuex nos componentes com o `vue-test-utils`.
-
-## Simulando ações
-
-Vejamos algum código...
-
-Esse é o componente que queremos testar. Ele chama ações do Vuex.
-
-``` html
-
-
-
-
-
-
-
-
-```
-
-Para os fins desse teste, não nos importa o que cada ação do Vuex faz ou como a store é criada. Nos precisamos apenas saber que essas ações estão sendo disparadas quando deveriam, e que elas são disparadas com os valores esperados.
-
-Para testar isso, precisamos passar um mock da store para o Vue quando envelopamos nosso componente.
-
-Em vez de passar a store para o construtor do Vue, nós passamos um [localVue](../api/options.md#localvue). Um localVue é um construtor local do Vue com escopo que permite alterações sem afetar o construtor global.
-
-Vamos ver como isso se apreenta no código:
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Acoes from '../../../src/componentes/Acoes'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Acoes.vue', () => {
- let acoes
- let store
-
- beforeEach(() => {
- acoes = {
- acaoDeClique: jest.fn(),
- acaoInput: jest.fn()
- }
-
- store = new Vuex.Store({
- state: {},
- acoes
- })
- })
-
- it('chama a ação acaoInput da store quando o valor do input é inserido e um evento do input é disparado', () => {
- const wrapper = shallow(Acoes, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'input'
- input.trigger('input')
- expect(acoes.acaoInput).toHaveBeenCalled()
- })
-
- it('não liga a ação acaoInput da store quando o valor do input não é inserido e um evento do input é disparado', () => {
- const wrapper = shallow(Acoes, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'not input'
- input.trigger('input')
- expect(acoes.acaoInput).not.toHaveBeenCalled()
- })
-
- it('calls store action actionClick when button is clicked', () => {
- const wrapper = shallow(Actions, { store, localVue })
- wrapper.find('button').trigger('click')
- expect(actions.actionClick).toHaveBeenCalled()
- })
-})
-```
-
-O que está acontecendo aqui? Primeiro contamos ao localVue que ele usará o Vuex no método `localVue.use`. Este é apenas um wrapper do `Vue.use`.
-
-Em seguida, fazemos uma store simulada chamando o método `Vuex.Store` com os valores do mock. Nós apenas passamos as ações, já que é o que nos importa no momento.
-
-As ações são [funções de mock do Jest](https://facebook.github.io/jest/docs/en/mock-functions.html). Essas funções simuladas nos dão alguns métodos para verificar se as determinadas ações foram ou não chamadas.
-
-Então, podemos fazer a asserção nos nossos testes esperando que essas ações do Vuex foram chamadas no momento esperado.
-
-A forma como definimos a store pode parecer um pouco estranha para você.
-
-Nós usamos o `beforeEach` para garantir que teremos uma store limpa antes de cada teste. O `beforeEach` é um método gancho do Mocha que é chamado antes de cada teste. Em nosso teste, reatribuímos os valores da store. Se nós não fizessemos isso, as funções simuladas deveriam ser reiniciadas automaticamente. Esse método também permite que alteremos o estado nos testes sem que afete os testes posteriores, pois ele será redefinido entre esses testes.
-
-A coisa mais impotante a ser notada neste teste é que **criamos um mock da store e depois passamos ela para o vue-test-utils**.
-
-Ótimo, agora que nós já conseguimos simular as actions, vamos ver como simular o getters.
-
-## Simulando os getters
-
-``` html
-
-
-
{{valorDoInput}}
-
{{cliques}}
-
-
-
-
-```
-
-Esse é um componente bastante simples, Ele mostra os resultados capturados pelos getters `cliques` e `valorDoInput`. Mais um vez, nós não importamos com o que esses getters retornam e o que fazem no seu interior, mas sim com o resultado que ele acarretará no componente a ser testado.
-
-Valos ver o teste do componente:
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import GettersComponente from '../../../src/componentes/GettersComponente'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('GettersComponente.vue', () => {
- let getters
- let store
-
- beforeEach(() => {
- getters = {
- cliques: () => 2,
- valorDoInput: () => 'input'
- }
-
- store = new Vuex.Store({
- getters
- })
- })
-
- it('Renderiza o valor do input na primeira tag P', () => {
- const wrapper = shallow(GettersComponente, { store, localVue })
- const p = wrapper.find('p')
- expect(p.text()).toBe(getters.valorDoInput())
- })
-
- it('Renderiza o valor de cliques na segunda tag P', () => {
- const wrapper = shallow(GettersComponente, { store, localVue })
- const p = wrapper.findAll('p').at(1)
- expect(p.text()).toBe(getters.cliques().toString())
- })
-})
-```
-
-Esse teste é bastante similar com nosso teste de actions. Criamos um mock da store antes de cada teste, passamos ele como uma opção do método `shallow`, e verificamos o valor retornado pelo getter, verificando se o mesmo foi renderizado no template do componente.
-
-Isso é ótimo, mas se quisermos garantir que nossos getters estão retornando a parte correta do nosso state?
-
-## Criando mocks com módulos
-
-Os [módulos](https://vuex.vuejs.org/en/modules.html) são úteis para separar nossa store em partes gerenciáveis. Podemos usa-los em nossos testes.
-
-Dê uma olhada nesse nosso componente:
-
-``` html
-
-
-
-
{{cliquesModulo}}
-
-
-
-
-```
-
-Esse simples componente incluí uma ação e um getter.
-
-E seu teste fica assim:
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import ModuloComponente from '../../../src/componentes/ModuloComponente'
-import modulo from '../../../src/store/modulo'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('ModuloComponente.vue', () => {
- let actions
- let state
- let store
-
- beforeEach(() => {
- state = {
- modulo: {
- cliques: 2
- }
- }
-
- actions = {
- cliqueEmModulo: jest.fn()
- }
-
- store = new Vuex.Store({
- state,
- actions,
- getters: modulo.getters
- })
- })
-
- it('chama a ação cliqueEmModulo quand o botão é clicado', () => {
- const wrapper = shallow(ModuloComponente, { store, localVue })
- const button = wrapper.find('button')
- button.trigger('click')
- expect(actions.cliqueEmModulo).toHaveBeenCalled()
- })
-
- it('Renderiza os cliques do state do módulo no primeiro P', () => {
- const wrapper = shallow(ModuloComponente, { store, localVue })
- const p = wrapper.find('p')
- expect(p.text()).toBe(state.modulo.cliques.toString())
- })
-})
-```
-
-### Recursos
-
-- [Projeto de exemplo com essa configuração](https://github.com/eddyerburgh/vue-test-utils-vuex-example)
-- [localVue](../api/options.md#localvue)
-- [createLocalVue](../api/createLocalVue.md)
diff --git a/docs/ru/README.md b/docs/ru/README.md
deleted file mode 100644
index 91f9ca68d..000000000
--- a/docs/ru/README.md
+++ /dev/null
@@ -1,71 +0,0 @@
-# vue-test-utils
-
-`vue-test-utils` — официальная библиотека модульного тестирования для Vue.js.
-
-## Содержание
-
-* [Руководства](guides/README.md)
- * [Введение](guides/getting-started.md)
- * [Общие советы](guides/common-tips.md)
- * [Мышь, клавиши и другие события DOM](guides/dom-events.md)
- * [Чем запускать тесты](guides/choosing-a-test-runner.md)
- * [Тестирование однофайловых компонентов с Jest](guides/testing-SFCs-with-jest.md)
- * [Тестирование однофайловых компонентов с Mocha + webpack](guides/testing-SFCs-with-mocha-webpack.md)
- * [Использование с Vue Router](guides/using-with-vue-router.md)
- * [Использование с Vuex](guides/using-with-vuex.md)
- * [Тестирование асинхронной логики](guides/testing-async-components.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallow](api/shallow.md)
- * [Опции монтирования](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- - [provide](api/options.md#provide)
- - [другие опции](api/options.md#other-options)
- * [Wrapper](api/wrapper/README.md)
- * [attributes](api/wrapper/attributes.md)
- * [classes](api/wrapper/classes.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [props](api/wrapper/props.md)
- * [setComputed](api/wrapper/setComputed.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setComputed](api/wrapper-array/setComputed.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [Компоненты](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [Селекторы](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [Конфигурация](api/config.md)
diff --git a/docs/ru/SUMMARY.md b/docs/ru/SUMMARY.md
deleted file mode 100644
index f5e5a1b5b..000000000
--- a/docs/ru/SUMMARY.md
+++ /dev/null
@@ -1,66 +0,0 @@
-## Содержание
-
-* [Руководства](guides/README.md)
- * [Введение](guides/getting-started.md)
- * [Общие советы](guides/common-tips.md)
- * [Мышь, клавиши и другие события DOM](guides/dom-events.md)
- * [Чем запускать тесты](guides/choosing-a-test-runner.md)
- * [Тестирование однофайловых компонентов с Jest](guides/testing-SFCs-with-jest.md)
- * [Тестирование однофайловых компонентов с Mocha + webpack](guides/testing-SFCs-with-mocha-webpack.md)
- * [Использование с Vue Router](guides/using-with-vue-router.md)
- * [Использование с Vuex](guides/using-with-vuex.md)
- * [Тестирование асинхронной логики](guides/testing-async-components.md)
-* [API](api/README.md)
- * [mount](api/mount.md)
- * [shallow](api/shallow.md)
- * [Опции монтирования](api/options.md)
- - [context](api/options.md#context)
- - [slots](api/options.md#slots)
- - [stubs](api/options.md#stubs)
- - [mocks](api/options.md#mocks)
- - [localVue](api/options.md#localvue)
- - [attachToDocument](api/options.md#attachtodocument)
- - [attrs](api/options.md#attrs)
- - [listeners](api/options.md#listeners)
- - [provide](api/options.md#provide)
- - [другие опции](api/options.md#other-options)
- * [Wrapper](api/wrapper/README.md)
- * [attributes](api/wrapper/attributes.md)
- * [classes](api/wrapper/classes.md)
- * [contains](api/wrapper/contains.md)
- * [emitted](api/wrapper/emitted.md)
- * [emittedByOrder](api/wrapper/emittedByOrder.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper/destroy.md)
- * [find](api/wrapper/find.md)
- * [findAll](api/wrapper/findAll.md)
- * [html](api/wrapper/html.md)
- * [is](api/wrapper/is.md)
- * [isEmpty](api/wrapper/isEmpty.md)
- * [isVueInstance](api/wrapper/isVueInstance.md)
- * [name](api/wrapper/name.md)
- * [props](api/wrapper/props.md)
- * [setData](api/wrapper/setData.md)
- * [setMethods](api/wrapper/setMethods.md)
- * [setProps](api/wrapper/setProps.md)
- * [text](api/wrapper/text.md)
- * [trigger](api/wrapper/trigger.md)
- * [WrapperArray](api/wrapper-array/README.md)
- * [at](api/wrapper-array/at.md)
- * [contains](api/wrapper-array/contains.md)
- * [exists](api/wrapper/exists.md)
- * [destroy](api/wrapper-array/destroy.md)
- * [is](api/wrapper-array/is.md)
- * [isEmpty](api/wrapper-array/isEmpty.md)
- * [isVueInstance](api/wrapper-array/isVueInstance.md)
- * [setComputed](api/wrapper-array/setComputed.md)
- * [setData](api/wrapper-array/setData.md)
- * [setMethods](api/wrapper-array/setMethods.md)
- * [setProps](api/wrapper-array/setProps.md)
- * [trigger](api/wrapper-array/trigger.md)
- * [Компоненты](api/components/README.md)
- * [TransitionStub](api/components/TransitionStub.md)
- * [TransitionGroupStub](api/components/TransitionGroupStub.md)
- * [Селекторы](api/selectors.md)
- * [createLocalVue](api/createLocalVue.md)
- * [Конфигурация](api/config.md)
diff --git a/docs/ru/api/README.md b/docs/ru/api/README.md
deleted file mode 100644
index 85e1c030d..000000000
--- a/docs/ru/api/README.md
+++ /dev/null
@@ -1,56 +0,0 @@
-# API
-
-* [mount](./mount.md)
-* [shallow](./shallow.md)
-* [Опции монтирования](./options.md)
- - [context](./options.md#context)
- - [slots](./options.md#slots)
- - [stubs](./options.md#stubs)
- - [mocks](./options.md#mocks)
- - [localVue](./options.md#localvue)
- - [attachToDocument](./options.md#attachtodocument)
- - [attrs](./options.md#attrs)
- - [listeners](./options.md#listeners)
- - [provide](./options.md#provide)
- - [другие опции](./options.md#other-options)
-* [Wrapper](./wrapper/README.md)
- * [attributes](./wrapper/attributes.md)
- * [classes](./wrapper/classes.md)
- * [contains](./wrapper/contains.md)
- * [emitted](./wrapper/emitted.md)
- * [emittedByOrder](./wrapper/emittedByOrder.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper/destroy.md)
- * [find](./wrapper/find.md)
- * [findAll](./wrapper/findAll.md)
- * [html](./wrapper/html.md)
- * [is](./wrapper/is.md)
- * [isEmpty](./wrapper/isEmpty.md)
- * [isVueInstance](./wrapper/isVueInstance.md)
- * [name](./wrapper/name.md)
- * [props](./wrapper/props.md)
- * [setComputed](./wrapper/setComputed.md)
- * [setData](./wrapper/setData.md)
- * [setMethods](./wrapper/setMethods.md)
- * [setProps](./wrapper/setProps.md)
- * [text](./wrapper/text.md)
- * [trigger](./wrapper/trigger.md)
-* [WrapperArray](./wrapper-array/README.md)
- * [at](./wrapper-array/at.md)
- * [contains](./wrapper-array/contains.md)
- * [exists](./wrapper/exists.md)
- * [destroy](./wrapper-array/destroy.md)
- * [is](./wrapper-array/is.md)
- * [isEmpty](./wrapper-array/isEmpty.md)
- * [isVueInstance](./wrapper-array/isVueInstance.md)
- * [setComputed](./wrapper-array/setComputed.md)
- * [setData](./wrapper-array/setData.md)
- * [setMethods](./wrapper-array/setMethods.md)
- * [setProps](./wrapper-array/setProps.md)
- * [trigger](./wrapper-array/trigger.md)
-* [Компоненты](./components/README.md)
- * [TransitionStub](./components/TransitionStub.md)
- * [TransitionGroupStub](./components/TransitionGroupStub.md)
-* [Селекторы](./selectors.md)
-* [createLocalVue](./createLocalVue.md)
-* [Конфигурация](./config.md)
diff --git a/docs/ru/api/components/README.md b/docs/ru/api/components/README.md
deleted file mode 100644
index 517cd1895..000000000
--- a/docs/ru/api/components/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Компоненты
-
-vue-test-utils включает утилиты, которые вы можете использовать для создания заглушек компонентов.
-
-[TransitionStub](./TransitionStub.md) и [TransitionGroupStub](./TransitionGroupStub.md) используются для создания заглушек компонентов `transition` и `transition-group` по умолчанию. Вы можете изменить эти заглушки отредактировав конфигурацию.
\ No newline at end of file
diff --git a/docs/ru/api/components/TransitionGroupStub.md b/docs/ru/api/components/TransitionGroupStub.md
deleted file mode 100644
index b87fbaf29..000000000
--- a/docs/ru/api/components/TransitionGroupStub.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# TransitionGroupStub
-
-Компонент для создания заглушки компонента `transition-group`. Вместо асинхронного выполнения переходов он возвращает дочерние компоненты синхронно.
-
-Это настроено на заглушку всех компонентов `transition-group` по умолчанию в конфигурации vue-test-utils. Чтобы использовать стандартный компонент `transition-group` установите `config.stubs['transition-group']` в значение false:
-
-```js
-import { config } from '@vue/test-utils'
-
-config.stubs['transition-group'] = false
-```
-
-Чтобы переустановить обратно на заглушки компонентов `transition-group`:
-
-```js
-import { config, TransitionGroupStub } from '@vue/test-utils'
-
-config.stubs['transition-group'] = TransitionGroupStub
-```
-
-Для установки заглушек в настройках монтирования:
-
-```js
-import { mount, TransitionGroupStub } from '@vue/test-utils'
-
-mount(Component, {
- stubs: {
- 'transition-group': TransitionGroupStub
- }
-})
-```
\ No newline at end of file
diff --git a/docs/ru/api/components/TransitionStub.md b/docs/ru/api/components/TransitionStub.md
deleted file mode 100644
index acd449851..000000000
--- a/docs/ru/api/components/TransitionStub.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# TransitionStub
-
-Компонент для создания заглушки компонента `transition`. Вместо асинхронного выполнения переходов он возвращает дочерний компонент синхронно.
-
-Это настроено на заглушку всех компонентов `transition` по умолчанию в конфигурации vue-test-utils. Чтобы использовать стандартный компонент `transition` установите `config.stubs.transition` в значение false:
-
-```js
-import { config } from '@vue/test-utils'
-
-config.stubs.transition = false
-```
-
-Чтобы переустановить обратно на заглушки компонентов `transition`:
-```js
-import { config, TransitionStub } from '@vue/test-utils'
-
-config.stubs.transition = TransitionStub
-```
-
-Для установки заглушек в настройках монтирования:
-
-```js
-import { mount, TransitionStub } from '@vue/test-utils'
-
-mount(Component, {
- stubs: {
- transition: TransitionStub
- }
-})
-```
\ No newline at end of file
diff --git a/docs/ru/api/config.md b/docs/ru/api/config.md
deleted file mode 100644
index bcaec9132..000000000
--- a/docs/ru/api/config.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# Конфигурация
-
-vue-test-utils включает в себя объект конфигурации для определения опций, используемых vue-test-utils.
-
-## Конфигурация настроек `vue-test-utils`
-
-### `stubs`
-
-- Тип: `Object`
-- По умолчанию: `{
- transition: TransitionStub,
- 'transition-group': TransitionGroupStub
-}`
-
-Заглушки указанные в `config.stubs` используются по умолчанию.
-Заглушки, используемые в компонентах. Они перезаписываются значениями `stubs` переданными в настройках монтирования.
-
-При передаче `stubs` в качестве массива в настройках монтирования, `config.stubs` будет преобразована в массив, и будут создаваться компоненты заглушки с базовым компонентом, который возвращает div.
-
-Пример:
-
-```js
-import VueTestUtils from '@vue/test-utils'
-
-VueTestUtils.config.stubs['my-component'] = ''
-```
\ No newline at end of file
diff --git a/docs/ru/api/createLocalVue.md b/docs/ru/api/createLocalVue.md
deleted file mode 100644
index 00e9117e0..000000000
--- a/docs/ru/api/createLocalVue.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# `createLocalVue()`
-
-- **Возвращает:**
- - `{Component}`
-
-- **Использование:**
-
-`createLocalVue` возвращает класс Vue, чтобы вы могли добавлять компоненты, примеси и устанавливать плагины без загрузнения глобального класса Vue.
-
-Используйте вместе с `options.localVue`:
-
-```js
-import { createLocalVue, shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const localVue = createLocalVue()
-const wrapper = shallow(Foo, {
- localVue,
- mocks: { foo: true }
-})
-expect(wrapper.vm.foo).toBe(true)
-
-const freshWrapper = shallow(Foo)
-expect(freshWrapper.vm.foo).toBe(false)
-```
-
-- **См. также:** [Общие советы](../guides/common-tips.md#applying-global-plugins-and-mixins)
diff --git a/docs/ru/api/mount.md b/docs/ru/api/mount.md
deleted file mode 100644
index 3717e9324..000000000
--- a/docs/ru/api/mount.md
+++ /dev/null
@@ -1,130 +0,0 @@
-# `mount(component [, options])`
-
-- **Принимает:**
-
- - `{Component} component`
- - `{Object} options`
-
-- **Возвращает:** `{Wrapper}`
-
-- **Опции:**
-
-См. [опции монтирования](options.md)
-
-- **Использование:**
-
-Создаёт [`Wrapper`](wrapper/README.md), который содержит примонтированный и отрендеренный компонент Vue.
-
-**Без опций:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo)
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**С опциями Vue:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- propsData: {
- color: 'red'
- }
- })
- expect(wrapper.props().color).toBe('red')
- })
-})
-```
-
-**Прикрепление к DOM:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- attachToDocument: true
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Слот по умолчанию и именованные слоты:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import FooBar from './FooBar.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- slots: {
- default: [Bar, FooBar],
- fooBar: FooBar, // будет соответствовать ``
- foo: ''
- }
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Заглушки глобальных свойств:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const $route = { path: 'http://www.example-path.com' }
- const wrapper = mount(Foo, {
- mocks: {
- $route
- }
- })
- expect(wrapper.vm.$route.path).toBe($route.path)
- })
-})
-```
-
-**Заглушки компонентов:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import Faz from './Faz.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = mount(Foo, {
- stubs: {
- Bar: '',
- BarFoo: true,
- FooBar: Faz
- }
- })
- expect(wrapper.contains('.stubbed')).toBe(true)
- expect(wrapper.contains(Bar)).toBe(true)
- })
-})
-```
-
-- **См. также:** [Wrapper](wrapper/README.md)
diff --git a/docs/ru/api/options.md b/docs/ru/api/options.md
deleted file mode 100644
index 9152c191c..000000000
--- a/docs/ru/api/options.md
+++ /dev/null
@@ -1,197 +0,0 @@
-# Опции монтирования
-
-Опции для `mount` и `shallow`. Объект опций может содержать как настройки монтирования `vue-test-utils`, так и сырые опции Vue.
-
-## Специальные опции монтирования `vue-test-utils`
-
-- [`context`](#context)
-- [`slots`](#slots)
-- [`stubs`](#stubs)
-- [`mocks`](#mocks)
-- [`localVue`](#localvue)
-- [`attachToDocument`](#attachtodocument)
-- [`attrs`](#attrs)
-- [`listeners`](#listeners)
-- [`provide`](#provide)
-
-### `context`
-
-- Тип: `Object`
-
-Передаёт контекст в функциональный компонент. Может использоваться только с функциональными компонентами.
-
-Пример:
-
-```js
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Component, {
- context: {
- props: { show: true },
- children: [Foo, Bar]
- }
-})
-
-expect(wrapper.is(Component)).toBe(true)
-```
-
-### `slots`
-
-- Тип: `{ [name: string]: Array|Component|string }`
-
-Предоставляет объект с содержимым слотов компоненту. Ключ соответствует имени слота. Значение может быть компонентом, массивом компонентов или строковым шаблоном, или текстом.
-
-Пример:
-
-```js
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = shallow(Component, {
- slots: {
- default: [Foo, Bar],
- fooBar: Foo, // будет соответствовать ``
- foo: '',
- bar: 'bar'
- }
-})
-expect(wrapper.find('div')).toBe(true)
-```
-
-#### Передача текста
-
-Вы можете передать текст в `slots`.
-Для этого есть одно ограничение.
-
-Это не поддерживается PhantomJS.
-Используйте [Puppeteer](https://github.com/karma-runner/karma-chrome-launcher#headless-chromium-with-puppeteer).
-
-### `stubs`
-
-- Тип: `{ [name: string]: Component | boolean } | Array`
-
-Заглушки дочерних компонентов. Может быть массивом имен компонентов заменяемых заглушкой, или объектом.
-
-Пример:
-
-```js
-import Foo from './Foo.vue'
-
-mount(Component, {
- stubs: ['registered-component']
-})
-
-shallow(Component, {
- stubs: {
- // заглушка со специальной реализацией
- 'registered-component': Foo,
- // создание обычной заглушки
- 'another-component': true
- }
-})
-```
-
-### `mocks`
-
-- Тип: `Object`
-
-Дополнительные свойства для экземпляра. Полезно при создании моков глобальных инъекций.
-
-Пример:
-
-```js
-const $route = { path: 'http://www.example-path.com' }
-const wrapper = shallow(Component, {
- mocks: {
- $route
- }
-})
-expect(wrapper.vm.$route.path).toBe($route.path)
-```
-
-### `localVue`
-
-- Тип: `Vue`
-
-Локальная копия Vue, созданная с помощью [`createLocalVue`](./createLocalVue.md) для использования при монтировании компонента. Установка плагинов на этой копии `Vue` предотвращает загрязнение оригинальной копии `Vue`.
-
-Пример:
-
-```js
-import { createLocalVue, mount } from '@vue/test-utils'
-import VueRouter from 'vue-router'
-import Foo from './Foo.vue'
-
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-
-const routes = [
- { path: '/foo', component: Foo }
-]
-
-const router = new VueRouter({
- routes
-})
-
-const wrapper = mount(Component, {
- localVue,
- router
-})
-expect(wrapper.vm.$route).toBeInstanceOf(Object)
-```
-
-### `attachToDocument`
-
-- Тип: `boolean`
-- По умолчанию: `false`
-
-Компонент будет прикрепляться к DOM при рендеринге, если установлено в `true`.
-
-### `attrs`
-
-- Тип: `Object`
-
-Устанавливает объект `$attrs` на экземпляре компонента.
-
-### `listeners`
-
-- Тип: `Object`
-
-Устанавливает объект `$listeners` на экземпляре компонента.
-
-### `provide`
-
-- Тип: `Object`
-
-Передаёт свойства в компоненты для использования в инъекциях. См. [provide/inject](https://ru.vuejs.org/v2/api/#provide-inject).
-
-## Другие опции
-
-Если в параметрах для `mount` и `shallow` содержатся другие опции, отличные от опций монтирования, опции компонента будут перезаписаны с помощью [extends](https://ru.vuejs.org/v2/api/#extends).
-
-```js
-const Component = {
- template: '
{{ foo() }}{{ bar() }}{{ baz() }}
',
- methods: {
- foo () {
- return 'a'
- },
- bar () {
- return 'b'
- }
- }
-}
-const options = {
- methods: {
- bar () {
- return 'B'
- },
- baz () {
- return 'C'
- }
- }
-}
-const wrapper = mount(Component, options)
-expect(wrapper.text()).toBe('aBC')
-```
\ No newline at end of file
diff --git a/docs/ru/api/selectors.md b/docs/ru/api/selectors.md
deleted file mode 100644
index 0c00a3032..000000000
--- a/docs/ru/api/selectors.md
+++ /dev/null
@@ -1,60 +0,0 @@
-# Селекторы
-
-Многие методы принимают селектор в качестве аргумента. Селектором может быть CSS селектор, компонент Vue или опция поиска объекта.
-
-## CSS селекторы
-
-Обрабатывают любой допустимый CSS селектор:
-
-- селекторы тегов (`div`, `foo`, `bar`)
-- селекторы классов (`.foo`, `.bar`)
-- селекторы атрибутов (`[foo]`, `[foo="bar"]`)
-- селекторы id (`#foo`, `#bar`)
-- селекторы псевдо-элементов (`div:first-of-type`)
-
-Вы также можете использовать комбинации:
-
-- выбор только непосредственных потомков (`div > #bar > .foo`)
-- выбор элементов, являющихся потомками (`div #bar .foo`)
-- селектор выбора соседа идущего за элементом (`div + .foo`)
-- селектор выбора соседей идущих после элемента (`div ~ .foo`)
-
-## Компоненты Vue
-
-Компоненты Vue также являются допустимыми селекторами.
-
-```js
-// Foo.vue
-
-export default {
- name: 'FooComponent'
-}
-```
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = shallow(Foo)
-expect(wrapper.is(Foo)).toBe(true)
-```
-
-## Опция поиска объекта
-
-### Name
-
-Использование объекта для опции поиска, позволяет `vue-test-utils` выбирать элементы по `name` компонента на компонентах обёртках.
-
-```js
-const buttonWrapper = wrapper.find({ name: 'my-button' })
-buttonWrapper.trigger('click')
-```
-
-### Ref
-
-Использование опции поиска объекта позволяет `vue-test-utils` выбирать элементы по `$ref` на компонентах обёрток.
-
-```js
-const buttonWrapper = wrapper.find({ ref: 'myButton' })
-buttonWrapper.trigger('click')
-```
diff --git a/docs/ru/api/shallow.md b/docs/ru/api/shallow.md
deleted file mode 100644
index 4e9eb514f..000000000
--- a/docs/ru/api/shallow.md
+++ /dev/null
@@ -1,114 +0,0 @@
-# `shallow(component [, options])`
-
-- **Принимает:**
-
- - `{Component} component`
- - `{Object} options`
- - `{boolean} attachToDocument`
- - `{Object} context`
- - `{Array|Component} children`
- - `{Object} slots`
- - `{Array|Component|String} default`
- - `{Array|Component|String} named`
- - `{Object} mocks`
- - `{Object|Array} stubs`
- - `{Vue} localVue`
-
-- **Возвращает:** `{Wrapper}`
-
-- **Опции:**
-
-См. [опции монтирования](./options.md)
-
-- **Использование:**
-
-Аналогично [`mount`](mount.md), создаёт [`Wrapper`](wrapper/README.md), который содержит примонтированный и отрендеренный компонент Vue, но с заглушками вместо дочерних компонентов.
-
-**Без опций:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo)
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**С опциями Vue:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo, {
- propsData: {
- color: 'red'
- }
- })
- expect(wrapper.props().color).toBe('red')
- })
-})
-```
-
-**Прикрепление к DOM:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo, {
- attachToDocument: true
- })
- expect(wrapper.contains('div')).toBe(true)
- })
-})
-```
-
-**Слот по умолчанию и именованные слоты:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-import FooBar from './FooBar.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const wrapper = shallow(Foo, {
- slots: {
- default: [Bar, FooBar],
- fooBar: FooBar, // будет соответствовать ,
- foo: ''
- }
- })
- expect(wrapper.find('div')).toBe(true)
- })
-})
-```
-
-**Заглушки глобальных свойств:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-describe('Foo', () => {
- it('renders a div', () => {
- const $route = { path: 'http://www.example-path.com' }
- const wrapper = shallow(Foo, {
- mocks: {
- $route
- }
- })
- expect(wrapper.vm.$route.path).toBe($route.path)
- })
-})
-```
diff --git a/docs/ru/api/wrapper-array/README.md b/docs/ru/api/wrapper-array/README.md
deleted file mode 100644
index fa6a167c6..000000000
--- a/docs/ru/api/wrapper-array/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-# WrapperArray
-
-`WrapperArray` — это объект, содержащий массив [`Wrappers`](../wrapper/README.md), и методы для тестирования `Wrappers`.
-
-- **Свойства:**
-
-`wrappers` `array`: массив `Wrappers` содержащихся в `WrapperArray`
-`length` `number`: количество `Wrappers` содержащихся в `WrapperArray`
-
- - **Методы:**
-
-Подробный список методов можно изучить в разделе документации о `WrapperArray`.
diff --git a/docs/ru/api/wrapper-array/at.md b/docs/ru/api/wrapper-array/at.md
deleted file mode 100644
index ceb96c6fb..000000000
--- a/docs/ru/api/wrapper-array/at.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# at(index)
-
-Возвращает `Wrapper` по указанному индексу `index`. Используется нумерация с нуля (т.е. первый элемент имеет индекс 0).
-
-- **Принимает:**
- - `{number} index`
-
-- **Возвращает:** `{Wrapper}`
-
-- **Пример:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = shallow(Foo)
-const divArray = wrapper.findAll('div')
-const secondDiv = divArray.at(1)
-expect(secondDiv.is('p')).toBe(true)
-```
diff --git a/docs/ru/api/wrapper-array/contains.md b/docs/ru/api/wrapper-array/contains.md
deleted file mode 100644
index eea3a3720..000000000
--- a/docs/ru/api/wrapper-array/contains.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# contains(selector)
-
-Проверка, что каждый `Wrapper` в `WrapperArray` содержит указанный селектор.
-
-Используйте любой валидный [селектор](../selectors.md).
-
-- **Принимает:**
- - `{string|Component} selector`
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = shallow(Foo)
-const divArray = wrapper.findAll('div')
-expect(divArray.contains('p')).toBe(true)
-expect(divArray.contains(Bar)).toBe(true)
-```
diff --git a/docs/ru/api/wrapper-array/destroy.md b/docs/ru/api/wrapper-array/destroy.md
deleted file mode 100644
index aa544f3ca..000000000
--- a/docs/ru/api/wrapper-array/destroy.md
+++ /dev/null
@@ -1,16 +0,0 @@
-# destroy()
-
-Уничтожает каждый `Wrapper` Vue в `WrapperArray`.
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const divArray = wrapper.findAll('div')
-expect(divArray.contains('p')).toBe(true)
-divArray.destroy()
-expect(divArray.contains('p')).toBe(false)
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper-array/is.md b/docs/ru/api/wrapper-array/is.md
deleted file mode 100644
index 250f11536..000000000
--- a/docs/ru/api/wrapper-array/is.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# is(selector)
-
-Проверка, что каждый `Wrapper` в `WrapperArray` DOM узле или `vm` соответствует [селектору](../selectors.md).
-
-- **Принимает:**
- - `{string|Component} selector`
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const divArray = wrapper.find('div')
-expect(divArray.is('div')).toBe(true)
-```
diff --git a/docs/ru/api/wrapper-array/isEmpty.md b/docs/ru/api/wrapper-array/isEmpty.md
deleted file mode 100644
index d9f375a6e..000000000
--- a/docs/ru/api/wrapper-array/isEmpty.md
+++ /dev/null
@@ -1,16 +0,0 @@
-# isEmpty()
-
-Проверка, что каждый `Wrapper` в `WrapperArray` не содержит дочерних узлов.
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const divArray = wrapper.findAll('div')
-expect(divArray.isEmpty()).toBe(true)
-```
diff --git a/docs/ru/api/wrapper-array/isVueInstance.md b/docs/ru/api/wrapper-array/isVueInstance.md
deleted file mode 100644
index 0117a2bf0..000000000
--- a/docs/ru/api/wrapper-array/isVueInstance.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# isVueInstance()
-
-Проверка, что каждый `Wrapper` в `WrapperArray` является экземпляром Vue.
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-expect(barArray.isVueInstance()).toBe(true)
-```
diff --git a/docs/ru/api/wrapper-array/setComputed.md b/docs/ru/api/wrapper-array/setComputed.md
deleted file mode 100644
index c84b3438d..000000000
--- a/docs/ru/api/wrapper-array/setComputed.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# setComputed(computedObjects)
-
-Устанавливает для `Wrapper` `vm` вычисляемое свойство и принудительно обновляет каждый `Wrapper` в `WrapperArray`.
-
-**Каждый `Wrapper` должен содержать экземпляр Vue.**
-**Каждый экземпляр Vue должен уже иметь вычисляемое свойство, переданные в `setComputed`.**
-
-- **Аргументы:**
- - `{Object} вычисляемые свойства`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-
-barArray.setComputed({
- computed1: 'new-computed1',
- computed2: 'new-computed2'
-})
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper-array/setData.md b/docs/ru/api/wrapper-array/setData.md
deleted file mode 100644
index 557e22960..000000000
--- a/docs/ru/api/wrapper-array/setData.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# setData(data)
-
-Устанавливает данные `Wrapper` `vm` и выполняет принудительное обновление каждого `Wrapper` в `WrapperArray`.
-
-**Обратите внимание, что каждый `Wrapper` должен содержать экземпляр Vue.**
-
-- **Принимает:**
- - `{Object} data`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-barArray.setData({ foo: 'bar' })
-expect(barArray.at(0).vm.foo).toBe('bar')
-```
diff --git a/docs/ru/api/wrapper-array/setMethods.md b/docs/ru/api/wrapper-array/setMethods.md
deleted file mode 100644
index c5a128055..000000000
--- a/docs/ru/api/wrapper-array/setMethods.md
+++ /dev/null
@@ -1,26 +0,0 @@
-
-# setMethods(methods)
-
-Устанавливает методы `Wrapper` `vm` и выполняет принудительное обновление каждого `Wrapper` в `WrapperArray`.
-
-**Обратите внимание, что каждый `Wrapper` должен содержать экземпляр Vue.**
-
-- **Принимает:**
- - `{Object} methods`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-const clickMethodStub = sinon.stub()
-
-barArray.setMethods({ clickMethod: clickMethodStub })
-barArray.at(0).trigger('click')
-expect(clickMethodStub.called).toBe(true)
-```
diff --git a/docs/ru/api/wrapper-array/setProps.md b/docs/ru/api/wrapper-array/setProps.md
deleted file mode 100644
index e5b3751c4..000000000
--- a/docs/ru/api/wrapper-array/setProps.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# setProps(props)
-
-Устанавливает входные параметры `Wrapper` `vm` и выполняет принудительное обновление каждого `Wrapper` в `WrapperArray`.
-
-**Обратите внимание, что каждый `Wrapper` должен содержать экземпляр Vue.**
-
-- **Принимает:**
- - `{Object} props`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const barArray = wrapper.findAll(Bar)
-barArray.setProps({ foo: 'bar' })
-expect(barArray.at(0).vm.foo).toBe('bar')
-```
diff --git a/docs/ru/api/wrapper-array/trigger.md b/docs/ru/api/wrapper-array/trigger.md
deleted file mode 100644
index 593c8d37a..000000000
--- a/docs/ru/api/wrapper-array/trigger.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# trigger(eventName)
-
-Генерирует событие на каждом `Wrapper` в `WrapperArray` DOM узле.
-
-**Обратите внимание, что каждый `Wrapper` должен содержать экземпляр Vue.**
-
-- **Принимает:**
- - `{string} eventName`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-
-const clickHandler = sinon.stub()
-const wrapper = mount(Foo, {
- propsData: { clickHandler }
-})
-
-const divArray = wrapper.findAll('div')
-divArray.trigger('click')
-expect(clickHandler.called).toBe(true)
-```
diff --git a/docs/ru/api/wrapper/README.md b/docs/ru/api/wrapper/README.md
deleted file mode 100644
index 4a6b6b44d..000000000
--- a/docs/ru/api/wrapper/README.md
+++ /dev/null
@@ -1,16 +0,0 @@
-# `Wrapper`
-
-`vue-test-utils` — это API основанное на использовании обёрток (wrapper).
-
-`Wrapper` — это объект, который содержит примонтированный компонент или VNode и методы для тестирования компонента или VNnode.
-
-- **Свойства:**
-
-`vm` `Component`: это экземпляр `Vue`. Вы можете получить доступ ко всем [методам и свойствам экземпляра](https://ru.vuejs.org/v2/api/index.html#Опции-—-данные) через `wrapper.vm`. Это существует только в обёртках для компонентов Vue
-`element` `HTMLElement`: корневой DOM-узел обёртки
-`options` `Object`: Объект содержащий опции `vue-test-utils`, передаваемые в `mount` или `shallow`
-`options.attachedToDom` `Boolean`: `true` если был передан `attachToDom` в `mount` или `shallow`
-
-- **Методы:**
-
-Подробный список методов можно изучить в разделе документации про wrapper.
diff --git a/docs/ru/api/wrapper/attributes.md b/docs/ru/api/wrapper/attributes.md
deleted file mode 100644
index 04a5990a8..000000000
--- a/docs/ru/api/wrapper/attributes.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# attributes()
-
-Возвращает объект атрибутов DOM-узла `Wrapper`.
-
-- **Возвращает:** `{[attribute: string]: any}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.attributes().id).toBe('foo')
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper/classes.md b/docs/ru/api/wrapper/classes.md
deleted file mode 100644
index 4da728cbf..000000000
--- a/docs/ru/api/wrapper/classes.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# classes()
-
-Возвращает классы DOM-узла `Wrapper`.
-
-Возвращает массив имён классов.
-
-- **Возвращает:** `Array<{string}>`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.classes()).toContain('bar')
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper/contains.md b/docs/ru/api/wrapper/contains.md
deleted file mode 100644
index 064ae3bcc..000000000
--- a/docs/ru/api/wrapper/contains.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# `contains(selector)`
-
-Проверка, что `Wrapper` содержит элемент или компонент, соответствующий [селектору](../selectors.md).
-
-- **Принимает:**
- - `{string|Component} selector`
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.contains('p')).toBe(true)
-expect(wrapper.contains(Bar)).toBe(true)
-```
-
-- **См. также:** [Селекторы](../selectors.md)
diff --git a/docs/ru/api/wrapper/destroy.md b/docs/ru/api/wrapper/destroy.md
deleted file mode 100644
index 9eb06baa3..000000000
--- a/docs/ru/api/wrapper/destroy.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# destroy()
-
-Уничтожает экземпляр компонента Vue.
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-
-const spy = sinon.stub()
-mount({
- render: null,
- destroyed () {
- spy()
- }
-}).destroy()
-expect(spy.calledOnce).toBe(true)
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper/emitted.md b/docs/ru/api/wrapper/emitted.md
deleted file mode 100644
index 97ab6f327..000000000
--- a/docs/ru/api/wrapper/emitted.md
+++ /dev/null
@@ -1,57 +0,0 @@
-# emitted()
-
-Возвращает объект, содержащий вызванные пользовательские события в `Wrapper` `vm`.
-
-- **Возвращает:** `{ [name: string]: Array> }`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-
-const wrapper = mount(Component)
-
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('foo', 123)
-
-/*
-wrapper.emitted() возвращает следующий объект:
-{
- foo: [[], [123]]
-}
-*/
-
-// проверка, что событие было вызвано
-expect(wrapper.emitted().foo).toBeTruthy()
-
-// проверка, что событие вызывалось определённое число раз
-expect(wrapper.emitted().foo.length).toBe(2)
-
-// проверка, что с событием были переданы определённые данные
-expect(wrapper.emitted().foo[1]).toEqual([123])
-```
-
-Вы также можете написать это так:
-
-```js
-// проверка, что событие было вызвано
-expect(wrapper.emitted('foo')).toBeTruthy()
-
-// проверка, что событие вызывалось определённое число раз
-expect(wrapper.emitted('foo').length).toBe(2)
-
-// проверка, что с событием были переданы определённые данные
-expect(wrapper.emitted('foo')[1]).toEqual([123])
-```
-
-Метод `.emitted()`, когда он вызывается, каждый раз возвращает тот же объект, а не новый, поэтому объект будет обновляться при генерации новых событий:
-
-```js
-const emitted = wrapper.emitted()
-
-expect(emitted.foo.length).toBe(1)
-
-// делаем что-то, что заставляет `wrapper` сгенерировать событие "foo"
-
-expect(emitted.foo.length).toBe(2)
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper/emittedByOrder.md b/docs/ru/api/wrapper/emittedByOrder.md
deleted file mode 100644
index fc0820ad3..000000000
--- a/docs/ru/api/wrapper/emittedByOrder.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# emittedByOrder()
-
-Возвращает массив, содержащий вызванные пользовательские события в `Wrapper` `vm`.
-
-- **Возвращает:** `Array<{ name: string, args: Array }>`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-
-const wrapper = mount(Component)
-
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('bar', 123)
-
-/*
-wrapper.emittedByOrder() возвращает следующий массив:
-[
- { name: 'foo', args: [] },
- { name: 'bar', args: [123] }
-]
-*/
-
-// проверка, что события были вызваны в определённом порядке
-expect(wrapper.emittedByOrder().map(e => e.name)).toEqual(['foo', 'bar'])
-```
diff --git a/docs/ru/api/wrapper/exists.md b/docs/ru/api/wrapper/exists.md
deleted file mode 100644
index ca56c4e53..000000000
--- a/docs/ru/api/wrapper/exists.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# exists()
-
-Проверка, что `Wrapper` или `WrapperArray` существует.
-
-Возвращает `false` если вызывается на пустом `Wrapper` или `WrapperArray`.
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.exists()).toBe(true)
-expect(wrapper.find('does-not-exist').exists()).toBe(false)
-expect(wrapper.findAll('div').exists()).toBe(true)
-expect(wrapper.findAll('does-not-exist').exists()).toBe(false)
-```
diff --git a/docs/ru/api/wrapper/find.md b/docs/ru/api/wrapper/find.md
deleted file mode 100644
index 8f5df5cdc..000000000
--- a/docs/ru/api/wrapper/find.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# find(selector)
-
-Возвращает [`Wrapper`](README.md) первого DOM узла или компонента Vue, соответствующий селектору.
-
-Используйте любой валидный [селектор](../selectors.md).
-
-- **Принимает:**
- - `{string|Component} selector`
-
-- **Возвращает:** `{Wrapper}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const div = wrapper.find('div')
-expect(div.is('div')).toBe(true)
-const bar = wrapper.find(Bar)
-expect(bar.is(Bar)).toBe(true)
-```
-
-- **См. также:** [Wrapper](README.md)
diff --git a/docs/ru/api/wrapper/findAll.md b/docs/ru/api/wrapper/findAll.md
deleted file mode 100644
index a6b69715a..000000000
--- a/docs/ru/api/wrapper/findAll.md
+++ /dev/null
@@ -1,26 +0,0 @@
-# findAll(selector)
-
-Возвращает [`WrapperArray`](../wrapper-array/README.md), состоящий из [Wrappers](README.md).
-
-Используйте любой валидный [селектор](../selectors.md).
-
-- **Принимает:**
- - `{string|Component} selector`
-
-- **Возвращает:** `{WrapperArray}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-import Bar from './Bar.vue'
-
-const wrapper = mount(Foo)
-const div = wrapper.findAll('div').at(0)
-expect(div.is('div')).toBe(true)
-const bar = wrapper.findAll(Bar).at(0)
-expect(bar.is(Bar)).toBe(true)
-```
-
-- **См. также:** [Wrapper](README.md)
diff --git a/docs/ru/api/wrapper/html.md b/docs/ru/api/wrapper/html.md
deleted file mode 100644
index bfe5031ee..000000000
--- a/docs/ru/api/wrapper/html.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# html()
-
-Возвращает HTML `Wrapper` DOM узла в виде строки.
-
-- **Возвращает:** `{string}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.html()).toBe('
Foo
')
-```
diff --git a/docs/ru/api/wrapper/is.md b/docs/ru/api/wrapper/is.md
deleted file mode 100644
index 06f6141e3..000000000
--- a/docs/ru/api/wrapper/is.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# is(selector)
-
-Проверяет, что DOM-элемент `Wrapper` или `vm` соответствуют [селектору](../selectors.md).
-
-- **Принимает:**
- - `{string|Component} selector`
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.is('div')).toBe(true)
-```
diff --git a/docs/ru/api/wrapper/isEmpty.md b/docs/ru/api/wrapper/isEmpty.md
deleted file mode 100644
index 908de15c9..000000000
--- a/docs/ru/api/wrapper/isEmpty.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# isEmpty()
-
-Проверяет, что `Wrapper` не содержит дочерних узлов.
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.isEmpty()).toBe(true)
-```
diff --git a/docs/ru/api/wrapper/isVueInstance.md b/docs/ru/api/wrapper/isVueInstance.md
deleted file mode 100644
index fe83892e0..000000000
--- a/docs/ru/api/wrapper/isVueInstance.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# isVueInstance()
-
-Проверка, что `Wrapper` является экземпляром Vue.
-
-- **Возвращает:** `{boolean}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.isVueInstance()).toBe(true)
-```
diff --git a/docs/ru/api/wrapper/name.md b/docs/ru/api/wrapper/name.md
deleted file mode 100644
index 4a46d21e8..000000000
--- a/docs/ru/api/wrapper/name.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# name()
-
-Возвращает имя компонента, если `Wrapper` содержит экземпляр Vue, или имя тега DOM-узла `Wrapper` если `Wrapper` не содержит экземпляра Vue.
-
-- **Возвращает:** `{string}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.name()).toBe('Foo')
-const p = wrapper.find('p')
-expect(p.name()).toBe('p')
-```
diff --git a/docs/ru/api/wrapper/props.md b/docs/ru/api/wrapper/props.md
deleted file mode 100644
index 827606ee2..000000000
--- a/docs/ru/api/wrapper/props.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# props()
-
-Возвращает объект с входными параметрами `vm` для `Wrapper`.
-
-**Обратите внимание что Wrapper должен содержать экземпляр Vue.**
-
-- **Возвращает:** `{[prop: string]: any}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo, {
- propsData: {
- bar: 'baz'
- }
-})
-expect(wrapper.props().bar).toBe('baz')
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper/setData.md b/docs/ru/api/wrapper/setData.md
deleted file mode 100644
index f5e9f76bc..000000000
--- a/docs/ru/api/wrapper/setData.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# setData(data)
-
-Устанавливает данные `Wrapper` `vm` и выполняет принудительное обновление.
-
-**Обратите внимание, что `Wrapper` должен содержать экземпляр Vue.**
-
-- **Принимает:**
- - `{Object} data`
-
-- **Пример:**
-
-```js
-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')
-```
diff --git a/docs/ru/api/wrapper/setMethods.md b/docs/ru/api/wrapper/setMethods.md
deleted file mode 100644
index 8bc728dfe..000000000
--- a/docs/ru/api/wrapper/setMethods.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# setMethods(methods)
-
-Устанавливает методы `Wrapper` `vm` и выполняет принудительное обновление.
-
-**Обратите внимание, что `Wrapper` должен содержать экземпляр Vue.**
-
-- **Принимает:**
- - `{Object} methods`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-const clickMethodStub = sinon.stub()
-
-wrapper.setMethods({ clickMethod: clickMethodStub })
-wrapper.find('button').trigger('click')
-expect(clickMethodStub.called).toBe(true)
-```
diff --git a/docs/ru/api/wrapper/setProps.md b/docs/ru/api/wrapper/setProps.md
deleted file mode 100644
index 31d2db8fa..000000000
--- a/docs/ru/api/wrapper/setProps.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# setProps(props)
-
-- **Принимает:**
- - `{Object} props`
-
-- **Использование:**
-
-Устанавливает входные параметры `Wrapper` `vm` и выполняет принудительное обновление.
-
-**Обратите внимание, что `Wrapper` должен содержать экземпляр Vue.**
-
-```js
-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')
-```
-
-Вы также можете передать объект `propsData`, который инициализирует экземпляр Vue с переданными значениями.
-
-``` js
-// Foo.vue
-export default {
- props: {
- foo: {
- type: String,
- required: true
- }
- }
-}
-```
-
-``` js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo, {
- propsData: {
- foo: 'bar'
- }
-})
-
-expect(wrapper.vm.foo).toBe('bar')
-```
\ No newline at end of file
diff --git a/docs/ru/api/wrapper/text.md b/docs/ru/api/wrapper/text.md
deleted file mode 100644
index f62ba500f..000000000
--- a/docs/ru/api/wrapper/text.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# text()
-
-Возвращает текстовое содержимое `Wrapper`.
-
-- **Возвращает:** `{string}`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import Foo from './Foo.vue'
-
-const wrapper = mount(Foo)
-expect(wrapper.text()).toBe('bar')
-```
diff --git a/docs/ru/api/wrapper/trigger.md b/docs/ru/api/wrapper/trigger.md
deleted file mode 100644
index f2199dca3..000000000
--- a/docs/ru/api/wrapper/trigger.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# trigger(eventName)
-
-Вызывает событие на `Wrapper` DOM узле.
-
-В `trigger` также можно передать опциональный объект `options`. Свойства объекта `options` будут добавлены к Event.
-
-- **Принимает:**
- - `{string} eventName`
- - `{Object} options`
-
-- **Пример:**
-
-```js
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-import Foo from './Foo'
-
-const clickHandler = sinon.stub()
-const wrapper = mount(Foo, {
- propsData: { clickHandler }
-})
-
-wrapper.trigger('click')
-
-wrapper.trigger('click', {
- button: 0
-})
-
-expect(clickHandler.called).toBe(true)
-```
-
-- **Установка target для event:**
-
-Под капотом, `trigger` создаёт объект `Event` и вызывает событие на элементе Wrapper.
-
-Невозможно изменить значение `target` объекта `Event`, поэтому вы не можете установить `target` в объекте опций.
-
-Чтобы добавить атрибут к `target`, вам нужно установить значение элемента Wrapper перед вызовом `trigger`. Вы можете сделать это с помощью свойства `element`.
-
-```js
-const input = wrapper.find('input')
-input.element.value = 100
-input.trigger('click')
-```
\ No newline at end of file
diff --git a/docs/ru/guides/README.md b/docs/ru/guides/README.md
deleted file mode 100644
index ac385ad92..000000000
--- a/docs/ru/guides/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Руководства
-
-* [Введение](./getting-started.md)
-* [Общие советы](./common-tips.md)
-* [Мышь, клавиши и другие события DOM](./dom-events.md)
-* [Чем запускать тесты](./choosing-a-test-runner.md)
-* [Тестирование однофайловых компонентов с Jest](./testing-SFCs-with-jest.md)
-* [Тестирование однофайловых компонентов с Mocha + webpack](./testing-SFCs-with-mocha-webpack.md)
-* [Использование с Vue Router](./using-with-vue-router.md)
-* [Использование с Vuex](./using-with-vuex.md)
diff --git a/docs/ru/guides/choosing-a-test-runner.md b/docs/ru/guides/choosing-a-test-runner.md
deleted file mode 100644
index 0f59de271..000000000
--- a/docs/ru/guides/choosing-a-test-runner.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# Чем запускать тесты
-
-Test runner — это программа, которая запускает тесты.
-
-Есть много популярных программ запуска тестов для JavaScript, и `vue-test-utils` работает с любой из них. Нет зависимости от используемого test runner.
-
-Есть несколько вещей, которые следует учитывать при выборе программы запуска тестов: набор функций, производительность и поддержка предварительной компиляции однофайловых компонентов. После тщательного сравнения существующих библиотек мы рекомендуем два варианта конфигурации:
-
-- [Jest](https://facebook.github.io/jest/docs/en/getting-started.html#content) наиболее функциональный способ запуска тестов. Он меньше всех требует конфигурирования, устанавливает JSDOM по умолчанию, предоставляет встроенные проверки (assertions) и имеет отличный интерфейс для работы через командную строку. Тем не менее, вам понадобится пре-процессор, чтобы иметь возможность импортировать однофайловые компоненты в свои тесты. Мы создали пре-процессор `vue-jest`, который может обрабатывать наиболее распространённые функции однофайловых компонентов, но в настоящее время он не имеет 100% паритетности функций с `vue-loader`.
-
-- [mocha-webpack](https://github.com/zinserjan/mocha-webpack) — это обёртка вокруг webpack + Mocha, но с более оптимизированным интерфейсом и режимом отслеживания. Преимущества этой конфигурации в том, что мы можем получить полную поддержку однофайловых компонентов с помощью webpack + `vue-loader`, но для этого требуется больше настройки.
-
-## Браузерное окружение
-
-`vue-test-utils` полагается на браузерное окружение. Технически вы можете запустить его в реальном браузере, но это не рекомендуется из-за сложности запуска реальных браузеров на разных платформах. Вместо этого мы рекомендуем запускать тесты в Node с виртуальным браузерным окружением, реализуемым с помощью [JSDOM](https://github.com/tmpvar/jsdom).
-
-Jest настраивает JSDOM автоматически. Для других программ запуска тестов вы можете вручную настроить JSDOM для тестов с помощью [jsdom-global](https://github.com/rstacruz/jsdom-global) в записи для ваших тестов:
-
-``` bash
-npm install --save-dev jsdom jsdom-global
-```
----
-``` js
-// в настройке теста / entry
-require('jsdom-global')()
-```
-
-## Тестирование однофайловых компонентов
-
-Однофайловые компоненты Vue требуют предварительной компиляции, прежде чем могут быть запущены в Node или в браузере. Существует два рекомендуемых способа выполнения компиляции: с пре-процессором Jest, или непосредственно с помощью webpack.
-
-Пре-процессор `vue-jest` поддерживает базовую функциональность однофайловых компонентов, но в настоящее время не обрабатывает блоки стилей или пользовательские блоки, которые поддерживаются только в `vue-loader`. Если вы полагаетесь на эти функции или другие конфигурации, специфичные для webpack, вам нужно будет использовать связку webpack + `vue-loader`.
-
-Изучите следующие руководства по вариантам настройки:
-
-- [Тестирование однофайловых компонентов с Jest](./testing-SFCs-with-jest.md)
-- [Тестирование однофайловых компонентов с Mocha + webpack](./testing-SFCs-with-mocha-webpack.md)
-
-## Дополнительные ресурсы
-
-- [Сравнение производительностей программ для запуска тестов](https://github.com/eddyerburgh/vue-unit-test-perf-comparison)
-- [Пример проекта с Jest](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Пример проекта с Mocha](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [Пример проекта с tape](https://github.com/eddyerburgh/vue-test-utils-tape-example)
-- [Пример проекта с AVA](https://github.com/eddyerburgh/vue-test-utils-ava-example)
-- [tyu — Восхитительное веб-тестирование от egoist](https://github.com/egoist/tyu)
\ No newline at end of file
diff --git a/docs/ru/guides/common-tips.md b/docs/ru/guides/common-tips.md
deleted file mode 100644
index 173ffd9af..000000000
--- a/docs/ru/guides/common-tips.md
+++ /dev/null
@@ -1,135 +0,0 @@
-# Общие советы
-
-## Понимание что тестировать
-
-Для компонентов пользовательского интерфейса мы не рекомендуем стремиться к покрытию каждой строки кода, поскольку это приводит к слишком большому фокусу на деталях внутренней реализации компонентов и может привести к созданию хрупких тестов.
-
-Вместо этого, мы рекомендуем писать тесты, которые проверяют ваш публичный интерфейс взаимодействия с компонентом и относиться к его внутренностям как к чёрному ящику. Один тестовый пример должен проверять, что некоторые входные данные (взаимодействие пользователя или изменение входных параметров), предоставляемые компоненту будут приводить к ожидаемому результату (результату рендеринга или вызванным пользовательским событиям).
-
-Например, для компонента `Counter`, который при каждом нажатии кнопки будет увеличивать отображаемый счётчик на 1, может тестироваться с помощью симуляции клика и проверке, что в отрендренном результате значение будет увеличено на 1. Тест не заботится о том, каким образом `Counter` увеличивает значение, он сосредоточен только на входных данных и результате.
-
-Преимуществом этого подхода в том, что до тех пор пока интерфейс вашего компонента остаётся прежним, ваши тесты будут проходить независимо от того, как будет меняться внутренняя реализация компонента с течением времени.
-
-Эта тема обсуждается более подробно в [отличной презентации Matt O'Connell](http://slides.com/mattoconnell/deck#/).
-
-## Поверхностный рендеринг
-
-В модульных тестах мы обычно хотим сосредоточиться на тестируемом компоненте, как на изолированном блоке и избежать неявной проверки поведения его дочерних компонентов.
-
-Кроме того, для компонентов, которые содержат много дочерних компонентов, отрендеренное дерево целиком может стать очень большим. Повторяющийся рендеринг всех дочерних компонентов может замедлить наши тесты.
-
-`vue-test-utils` позволяет вам монтировать компонент без рендеринга его дочерних компонентов (заменяя их заглушками) с помощью метода `shallow`:
-
-```js
-import { shallow } from '@vue/test-utils'
-
-const wrapper = shallow(Component) // возвращает Wrapper, содержащий примонтированный экземпляр компонента
-wrapper.vm // примонтированный экземпляр Vue
-```
-
-## Проверка вызванных событий
-
-Каждая примонтированная обёртка автоматически записывает все события, вызванные на экземпляре Vue. Вы можете получить записанные события с помощью метода `wrapper.emitted()`:
-
-``` js
-wrapper.vm.$emit('foo')
-wrapper.vm.$emit('foo', 123)
-
-/*
-`wrapper.emitted()` возвращает указанный объект:
-{
- foo: [[], [123]]
-}
-*/
-```
-
-Затем вы можете добавить проверки на основе этих данных:
-
-``` js
-// проверка, что событие было вызвано
-expect(wrapper.emitted().foo).toBeTruthy()
-
-// проверка, что событие вызывалось определённое число раз
-expect(wrapper.emitted().foo.length).toBe(2)
-
-// проверка, что с событием были переданы определённые данные
-expect(wrapper.emitted().foo[1]).toEqual([123])
-```
-
-Вы также можете получить массив событий в порядке их вызова с помощью [`wrapper.emittedByOrder()`](../api/wrapper/emittedByOrder.md).
-
-## Манипулирование состоянием компонента
-
-Вы можете напрямую манипулировать состоянием компонента с помощью методов `setData` или `setProps` на обёртке:
-
-```js
-wrapper.setData({ count: 10 })
-
-wrapper.setProps({ foo: 'bar' })
-```
-
-## Моки входных параметров
-
-Вы можете передать входные параметры в компонент с использованием встроенной во Vue опции `propsData`:
-
-```js
-import { mount } from '@vue/test-utils'
-
-mount(Component, {
- propsData: {
- aProp: 'some value'
- }
-})
-```
-
-Вы также можете обновить входные параметры на уже примонтированном компоненте с помощью метода `wrapper.setProps({})`.
-
-*Полный список опции можно посмотреть в [секции настроек монтирования](../api/options.md) документации.*
-
-## Добавление глобальных плагинов и примесей
-
-Некоторые из компонентов могут полагаться на функции, добавляемые глобальным плагином или примесью, к примеру `vuex` и `vue-router`.
-
-Если вы пишете тесты для компонентов определённого приложения, вы можете настроить одни и те же глобальные плагины и примеси один раз перед началом ваших тестов. Но в некоторых случаях, например при тестировании набора общих компонентов, которые могут использоваться в разных приложениях, гораздо лучше протестировать ваши компоненты в более изолированной конфигурации, без загрязнения глобального конструктора `Vue`. Мы можем использовать метод [`createLocalVue`](../api/createLocalVue.md) для достижения этого:
-
-``` js
-import { createLocalVue } from '@vue/test-utils'
-
-// создаём расширенный конструктор `Vue`
-const localVue = createLocalVue()
-
-// устанавливаем плагины как обычно
-localVue.use(MyPlugin)
-
-// передаём `localVue` в настройки монтирования
-mount(Component, {
- localVue
-})
-```
-
-**Обратите внимание, что некоторые плагины, такие как Vue Router, добавляют свойства только для чтения к глобальному конструктору Vue. Это делает невозможным переустановку плагина на конструкторе localVue или добавление моков для этих свойств**
-
-## Создание моков инъекций
-
-Другая стратегия для инъекции входных параметров — просто создание их моков. Вы можете это сделать с помощью опции `mocks`:
-
-```js
-import { mount } from '@vue/test-utils'
-
-const $route = {
- path: '/',
- hash: '',
- params: { id: '123' },
- query: { q: 'hello' }
-}
-
-mount(Component, {
- mocks: {
- $route // добавление мока объекта `$route` в экземпляр Vue перед монтированием компонента
- }
-})
-```
-
-## Работа с маршрутизацией
-
-Поскольку маршрутизация по определению имеет отношение к общей структуре приложения и включает в себя несколько компонентов, её лучше всего тестировать с помощью интеграционных или end-to-end тестов. Для отдельных компонентов, которые используют возможности `vue-router`, вы можете создать моки с использованием упомянутых выше методов.
diff --git a/docs/ru/guides/dom-events.md b/docs/ru/guides/dom-events.md
deleted file mode 100644
index b2751bc49..000000000
--- a/docs/ru/guides/dom-events.md
+++ /dev/null
@@ -1,210 +0,0 @@
-# Тестирование нажатий клавиш, мыши и других событий DOM
-
-## Генерация событий
-
-`Wrapper` предоставляет метод `trigger`. Его можно использовать для генерации событий DOM.
-
-```js
-const wrapper = mount(MyButton)
-
-wrapper.trigger('click')
-```
-
-Вы должны помнить, что метод `find` также возвращает `Wrapper`. Предполагается, что `MyComponent` содержит кнопку, а следующий код нажимает эту кнопку.
-
-```js
-const wrapper = mount(MyComponent)
-
-wrapper.find('button').trigger('click')
-```
-
-## Опции
-
-Метод `trigger` также может опционально принимать объект `options`. Свойства объекта `options` добавятся к Event.
-
-```js
-const wrapper = mount(MyButton)
-
-wrapper.trigger('click', { button: 0 })
-```
-
-
-## Пример тестирования кнопки мыши
-
-**Тестируемый компонент**
-
-```html
-
-
-
-
-
-
-
-
-```
-
-**Тест**
-
-```js
-import YesNoComponent from '@/components/YesNoComponent'
-import { mount } from '@vue/test-utils'
-import sinon from 'sinon'
-
-describe('Click event', () => {
- it('Нажатие на кнопке yes вызывает наш метод с аргументом "yes"', () => {
- const spy = sinon.spy()
- const wrapper = mount(YesNoComponent, {
- propsData: {
- callMe: spy
- }
- })
- wrapper.find('button.yes').trigger('click')
-
- spy.should.have.been.calledWith('yes')
- })
-})
-```
-
-## Пример тестирования клавиши
-
-**Тестируемый компонент**
-
-Этот компонент позволяет увеличивать/уменьшать количество с помощью различных клавиш.
-
-```html
-
-
-
-
-
-```
-
-**Тест**
-
-```js
-import QuantityComponent from '@/components/QuantityComponent'
-import { mount } from '@vue/test-utils'
-
-describe('Тестирование событий клавиш', () => {
- it('Quantity по умолчанию равно нулю', () => {
- const wrapper = mount(QuantityComponent)
- expect(wrapper.vm.quantity).toBe(0)
- })
-
- it('Клавиша вверх устанавливает quantity равным 1', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.trigger('keydown.up')
- expect(wrapper.vm.quantity).toBe(1)
- })
-
- it('Клавиша вниз уменьшает quantity на 1', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.vm.quantity = 5
- wrapper.trigger('keydown.down')
- expect(wrapper.vm.quantity).toBe(4)
- })
-
- it('Escape устанавливает quantity равным 0', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.vm.quantity = 5
- wrapper.trigger('keydown.esc')
- expect(wrapper.vm.quantity).toBe(0)
- })
-
- it('Магический символ "a" устанавливает quantity равным 13', () => {
- const wrapper = mount(QuantityComponent)
- wrapper.trigger('keydown', {
- which: 65
- })
- expect(wrapper.vm.quantity).toBe(13)
- })
-})
-
-```
-
-**Ограничения**
-
-Имя модификатора после точки `keydown.up` преобразуется в `keyCode`. Это поддерживается для следующих имён:
-
-| key name | key code |
-| --- | --- |
-| enter | 13 |
-| esc | 27 |
-| tab | 9 |
-| space | 32 |
-| delete | 46 |
-| backspace | 8 |
-| insert | 45 |
-| up | 38 |
-| down | 40 |
-| left | 37 |
-| right | 39 |
-| end | 35 |
-| home | 36 |
-| pageup | 33 |
-| pagedown | 34 |
-
-## Важно
-
-`vue-test-utils` генерирует событие синхронно. Следовательно, `Vue.nextTick` не требуется.
diff --git a/docs/ru/guides/getting-started.md b/docs/ru/guides/getting-started.md
deleted file mode 100644
index 151fd1795..000000000
--- a/docs/ru/guides/getting-started.md
+++ /dev/null
@@ -1,144 +0,0 @@
-# Введение
-
-## Настройка
-
-Для быстрого старта работы с `vue-test-utils`, клонируйте наш демонстрационный репозиторий с базовыми настройками и установите зависимости:
-
-``` bash
-git clone https://github.com/vuejs/vue-test-utils-getting-started
-cd vue-test-utils-getting-started
-npm install
-```
-
-Вы увидите, что проект содержит простой компонент `counter.js`:
-
-```js
-// counter.js
-
-export default {
- template: `
-
- {{ count }}
-
-
- `,
-
- data () {
- return {
- count: 0
- }
- },
-
- methods: {
- increment () {
- this.count++
- }
- }
-}
-```
-
-### Монтирование компонентов
-
-`vue-test-utils` тестирует компоненты Vue монтируя их изолированно, создавая моки необходимых входных данных (входные параметры, инъекции и пользовательские события) и выполняя проверки над результатом (результат рендеринга, вызванные пользовательские события).
-
-Примонтированные компоненты возвращаются внутри [Wrapper](../api/wrapper/), который предоставляет множество удобных методов для манипулирования, перемещения и различных запросов для экземпляра компонента Vue.
-
-Вы можете создавать wrapper с помощью метода `mount`. Давайте создадим файл `test.js`:
-
-```js
-// test.js
-
-// Импортируем метод `mount()` из `vue-test-utils`
-// и компонент, который хотим протестировать
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-// Теперь монтируем компонент и у нас появляется wrapper
-const wrapper = mount(Counter)
-
-// Вы можете получить доступ к экземпляру Vue через `wrapper.vm`
-const vm = wrapper.vm
-
-// Чтобы изучить wrapper подробнее, просто выведите его в консоль
-// и ваши приключения с `vue-test-utils` начнутся
-console.log(wrapper)
-```
-
-### Тестирование отрендеренного HTML компонента
-
-Теперь, когда у нас есть wrapper, первой вещью, которую мы можем захотеть проверить что отрендеренный HTML компонента соответствует нашим ожиданиям.
-
-```js
-import { mount } from '@vue/test-utils'
-import Counter from './counter'
-
-describe('Компонент Counter', () => {
- // Теперь монтируем компонент и получаем wrapper
- const wrapper = mount(Counter)
-
- it('отображает корректную разметку', () => {
- expect(wrapper.html()).toContain('0')
- })
-
- // также легко проверить наличие других элементов
- it('имеет кнопку', () => {
- expect(wrapper.contains('button')).toBe(true)
- })
-})
-```
-
-Теперь запустите тесты командой `npm test`. Вы должны увидеть, что все тесты проходят успешно.
-
-### Симуляция пользовательских действий
-
-Наш счётчик должен увеличивать значение, когда пользователь нажимает кнопку. Чтобы симулировать это поведение, нам необходимо сначала получить кнопку с помощью `wrapper.find()`, который возвращает **wrapper для элемента кнопки**. Мы можем симулировать клик с помощью вызова `.trigger()` на wrapper кнопки:
-
-```js
-it('нажатие кнопки должно увеличивать счётчик', () => {
- expect(wrapper.vm.count).toBe(0)
- const button = wrapper.find('button')
- button.trigger('click')
- expect(wrapper.vm.count).toBe(1)
-})
-```
-
-### Что делать с `nextTick`?
-
-Vue собирает пачку предстоящих обновлений DOM и применяет их асинхронно для избежания ненужных повторных рендерингов, вызываемых множественными изменениями данных. Вот почему на практике на часто приходится использовать `Vue.nextTick` для ожидания, пока Vue не выполнит фактическое обновление DOM после того, как мы инициируем некоторое изменение состояния.
-
-Для упрощения работы, `vue-test-utils` применяет все обновления синхронно, поэтому вам не потребуется использовать `Vue.nextTick` для ожидания обновления DOM в ваших тестах.
-
-*Примечание: `nextTick` по-прежнему необходим, когда вам нужно явно форсировать цикл событий, для таких операций как асинхронные обратные вызовы или разрешение промисов.*
-
-Если вам всё ещё нужно использовать `nextTick` в ваших тестовых файлах, имейте ввиду, что любые ошибки, выброшенные внутри него, могут не быть отловлены вашей программой для запуска тестов, поскольку внутри он реализован на Promise. Существует два подхода исправления этого: либо вы можете установить коллбэк `done` как глобальный обработчик ошибок Vue в начале теста, либо вы можете вызывать `nextTick` без аргумента и вернуть его как Promise:
-
-```js
-// эта ошибка не будет отловлена
-it('ошибка не будет отслеживаться', (done) => {
- Vue.nextTick(() => {
- expect(true).toBe(false)
- done()
- })
-})
-
-// два следующих теста будут работать как ожидается
-it('должен отлавливать ошибку с использованием done', (done) => {
- Vue.config.errorHandler = done
- Vue.nextTick(() => {
- expect(true).toBe(false)
- done()
- })
-})
-
-it('должен отлавливать ошибку с использованием promise', () => {
- return Vue.nextTick()
- .then(function () {
- expect(true).toBe(false)
- })
-})
-```
-
-## Что дальше
-
-- Интегрируйте `vue-test-utils` в ваш проект выбрав [программу для запуска тестов](./choosing-a-test-runner.md).
-- Прочитайте больше об [общих техниках и советах при написании тестов](./common-tips.md).
diff --git a/docs/ru/guides/testing-SFCs-with-jest.md b/docs/ru/guides/testing-SFCs-with-jest.md
deleted file mode 100644
index b9458eea1..000000000
--- a/docs/ru/guides/testing-SFCs-with-jest.md
+++ /dev/null
@@ -1,212 +0,0 @@
-# Тестирование однофайловых компонентов с Jest
-
-> Пример проекта для этой конфигурации доступен на [GitHub](https://github.com/vuejs/vue-test-utils-jest-example).
-
-Jest — это программа для запуска тестов, разработанная Facebook, направленная на предоставление функционального решения для модульного тестирования. Вы можете узнать больше о Jest в [официальной документации](https://facebook.github.io/jest/).
-
-## Установка Jest
-
-Предположим, что вы начинаете с конфигурации, где правильно настроены webpack, vue-loader и Babel — например, развёрнутый шаблон `webpack-simple` с помощью `vue-cli`.
-
-Первым делом нам необходимо установить Jest и `vue-test-utils`:
-
-```bash
-$ npm install --save-dev jest vue-test-utils
-```
-
-Затем, необходимо указать псевдоним для запуска тестов в нашем `package.json`.
-
-```json
-// package.json
-{
- "scripts": {
- "test": "jest"
- }
-}
-```
-
-## Обработка однофайловых компонентов с Jest
-
-Чтобы научить Jest как обрабатывать `*.vue` файлы, нам необходимо установить и настроить пре-процессор `vue-jest`:
-
-``` bash
-npm install --save-dev vue-jest
-```
-
-Теперь, создадим секцию `jest` в файле `package.json`:
-
-``` json
-{
- // ...
- "jest": {
- "moduleFileExtensions": [
- "js",
- "json",
- // сообщаем Jest что необходимо обрабатывать `*.vue` файлы
- "vue"
- ],
- "transform": {
- // обрабатываем `*.vue` файлы с помощью `vue-jest`
- ".*\\.(vue)$": "/node_modules/vue-jest"
- },
- "mapCoverage": true
- }
-}
-```
-
-> **Примечание:** `vue-jest` в настоящее время не поддерживает все возможности `vue-loader`, например пользовательские блоки и загрузку стилей. Кроме того, некоторые функции, специфичные для webpack, такие как code-splitting, также не поддерживаются. Чтобы использовать их прочитайте руководство по [тестированию однофайловых компонентов с Mocha + webpack](./testing-SFCs-with-mocha-webpack.md).
-
-## Обработка псевдонимов webpack
-
-Если вы используете псевдонимы в конфигурации webpack, например когда `@` ссылается на путь `/src`, вам также нужно добавить соответствующую конфигурацию для Jest, используя опцию `moduleNameMapper`:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // добавление поддержки псевдонима @ -> src в исходном коде
- "moduleNameMapper": {
- "^@/(.*)$": "/src/$1"
- }
- }
-}
-```
-
-## Конфигурация Babel для Jest
-
-
-Хотя последние версии Node уже поддерживают большинство функций ES2015, вы всё равно можете использовать синтаксис ES-модулей и stage-x функции в ваших тестах. Для этого нужно установить `babel-jest`:
-
-``` bash
-npm install --save-dev babel-jest
-```
-
-Затем мы должны сообщить Jest обрабатывать файлы тестов с JavaScript с помощью `babel-jest`, добавив запись `jest.transform` в `package.json`:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- "transform": {
- // ...
- // обрабатывать js с помощью `babel-jest`
- "^.+\\.js$": "/node_modules/babel-jest"
- },
- // ...
- }
-}
-```
-
-> По умолчанию `babel-jest` автоматически настраивается по установке. Однако, поскольку мы явно добавили преобразование файлов `*.vue`, нам теперь нужно также настроить `babel-jest`.
-
-Предполагая использование `babel-preset-env` с webpack, конфигурация Babel по умолчанию отключает транспиляцию ES-модулей, потому что webpack уже знает как обрабатывать ES-модули. Однако нам нужно включить его для наших тестов, потому что тесты Jest запускаются непосредственно в Node.
-
-Кроме того, мы можем указать `babel-preset-env` в качестве цели используемую нами версию Node. Это пропустит транспиляцию ненужных функций и ускорит загрузку тестов.
-
-Чтобы применить эти параметры только для тестов, поместите их в отдельную конфигурацию в `env.test` (это будет автоматически обработано `babel-jest`).
-
-Пример `.babelrc`:
-
-``` json
-{
- "presets": [
- ["env", { "modules": false }]
- ],
- "env": {
- "test": {
- "presets": [
- ["env", { "targets": { "node": "current" }}]
- ]
- }
- }
-}
-```
-
-## Тестирование моментальными снимками
-
-Вы можете использовать [`vue-server-renderer`](https://github.com/vuejs/vue/tree/dev/packages/vue-server-renderer) для рендеринга компонента в строку, чтобы его можно было сохранить в качестве снимка для [тестирования моментальными снимками в Jest](https://facebook.github.io/jest/docs/en/snapshot-testing.html).
-
-Результат рендеринга `vue-server-renderer` включает в себя несколько атрибутов, специфичных для SSR, и игнорирует пробелы, что затрудняет сравнивать diff. Мы можем улучшить сохранённый снимок с помощью специального сериализатора:
-
-``` bash
-npm install --save-dev jest-serializer-vue
-```
-
-Затем добавьте конфигурацию в `package.json`:
-
-``` json
-{
- // ...
- "jest": {
- // ...
- // сериализатор для снимков
- "snapshotSerializers": [
- "/node_modules/jest-serializer-vue"
- ]
- }
-}
-```
-
-## Расположение файлов тестов
-
-По умолчанию Jest будет рекурсивно выбирать все файлы с расширением `.spec.js` или `.test.js` во всём проекте. Если это поведение не соответствует вашим потребностям, то возможно [изменить `testRegex`](https://facebook.github.io/jest/docs/en/configuration.html#testregex-string) в секции конфигурации в файле `package.json`.
-
-Jest рекомендует создать каталог `__tests__` рядом с тестируемым кодом, но не стесняйтесь структурировать ваши тесты по своему усмотрению. Просто остерегайтесь того, что Jest создаст каталог `__snapshots__` рядом с тестовыми файлами, который необходим для тестирования с помощью моментальных снимков.
-
-## Покрытие кода (Coverage)
-
-Jest может быть использован для генерации отчётов о покрытии кода в нескольких форматах. Ниже приведён простой пример для начала:
-
-Расширьте вашу конфигурацию `jest` (обычно расположенную в `package.json` или `jest.config.js`) с помощью опции [collectCoverage](https://facebook.github.io/jest/docs/en/configuration.html#collectcoverage-boolean), и затем добавьте массив [collectCoverageFrom](https://facebook.github.io/jest/docs/en/configuration.html#collectcoveragefrom-array) для определения файлов, для которых требуется собирать информацию о покрытии. Вы также можете установить [mapCoverage](https://facebook.github.io/jest/docs/en/configuration.html#mapcoverage-boolean) в значение `true`, для более аккуратного сбора информации о покрытии.
-
-```json
-{
- "jest": {
- // ...
- "collectCoverage": true,
- "collectCoverageFrom": [
- "**/*.{js,vue}",
- "!**/node_modules/**"
- ],
- "mapCoverage": true
- }
-}
-```
-
-Это включит отчёты о покрытии с использованием [стандартных отчётов о покрытии](https://facebook.github.io/jest/docs/en/configuration.html#coveragereporters-array-string). Вы можете настроить их с помощью опции `coverageReporters`:
-
-```json
-{
- "jest": {
- // ...
- "coverageReporters": ["html", "text-summary"]
- }
-}
-```
-
-Дополнительную информацию можно найти в [документации по конфигурации Jest](https://facebook.github.io/jest/docs/en/configuration.html#collectcoverage-boolean), где вы можете найти параметры для пороговых значений покрытия, каталоги вывода данных и т.д.
-
-## Пример спецификации
-
-Если вы знакомы с Jasmine, то вы должны чувствовать себя как дома с [проверочным API](https://facebook.github.io/jest/docs/en/expect.html#content) Jest:
-
-```js
-import { mount } from '@vue/test-utils'
-import Component from './component'
-
-describe('Component', () => {
- test('является экземпляром Vue', () => {
- const wrapper = mount(Component)
- expect(wrapper.isVueInstance()).toBeTruthy()
- })
-})
-```
-
-## Ресурсы
-
-- [Пример проекта для этой конфигурации](https://github.com/vuejs/vue-test-utils-jest-example)
-- [Примеры и слайды с Vue Conf 2017](https://github.com/codebryo/vue-testing-with-jest-conf17)
-- [Jest](https://facebook.github.io/jest/)
-- [Babel preset env](https://github.com/babel/babel-preset-env)
diff --git a/docs/ru/guides/testing-SFCs-with-mocha-webpack.md b/docs/ru/guides/testing-SFCs-with-mocha-webpack.md
deleted file mode 100644
index dc8a8b88c..000000000
--- a/docs/ru/guides/testing-SFCs-with-mocha-webpack.md
+++ /dev/null
@@ -1,184 +0,0 @@
-# Тестирование однофайловых компонентов с Mocha + webpack
-
-> Пример проекта для этой конфигурации доступен на [GitHub](https://github.com/vuejs/vue-test-utils-mocha-webpack-example).
-
-Другая стратегия тестирования однофайловых компонентов заключается в компиляции всех наших тестов с помощью webpack, а затем программой для запуска тестов. Преимущество такого подхода заключается в том, что он даёт нам полную поддержку всех функций webpack и `vue-loader`, поэтому нам не нужно идти на компромиссы в нашем исходном коде.
-
-Технически, вы можете использовать любую программу для запуска тестов, которая вам нравится, и вручную соединять вещи, но мы нашли [`mocha-webpack`](https://github.com/zinserjan/mocha-webpack) как очень удобный способ для реализации этой задачи.
-
-## Настройка `mocha-webpack`
-
-Мы предположим, что вы начинаете с настройки, когда уже есть правильно настроенные webpack, vue-loader и Babel — например используя шаблон `webpack-simple`, развёрнутый с помощью `vue-cli`.
-
-Первое, что нужно сделать, это установить тестовые зависимости:
-
-``` bash
-npm install --save-dev @vue/test-utils mocha mocha-webpack
-```
-
-Затем мы должны указать скрипт test в нашем `package.json`.
-
-```json
-// package.json
-{
- "scripts": {
- "test": "mocha-webpack --webpack-config webpack.config.js --require test/setup.js test/**/*.spec.js"
- }
-}
-```
-
-Несколько вещей, о том что мы сделали:
-
-- Флаг `--webpack-config` указывает конфигурационный файл webpack для использования в тестах. В большинстве случаев это будут идентичная конфигурация, используемой в проекте, с одной небольшой доработкой. Мы поговорим об этом позднее.
-
-- Флаг `--require` гарантирует, что файл `test/setup.js` будет запущен перед любыми тестами, в котором мы можем настроить для наших тестов глобальное окружение, в котором они будут запускаться.
-
-- Последний аргумент — это шаблон для тестовых файлов, которые будут включены в тестовую сборку.
-
-### Дополнительная конфигурация webpack
-
-#### Вынесение внешних NPM-зависимостей
-
-В наших тестах мы, скорее всего, импортируем ряд NPM-зависимостей — некоторые из этих модулей могут быть написаны не для использования в браузере и просто не смогут быть корректно добавлены в сборку webpack. Другой плюс в том, что извлечение внешних зависимостей значительно улучшит скорость загрузки тестов. Мы можем вынести все NPM-зависимости с помощью `webpack-node-externals`:
-
-```js
-// webpack.config.js
-const nodeExternals = require('webpack-node-externals')
-
-module.exports = {
- // ...
- externals: [nodeExternals()]
-}
-```
-
-#### Source Maps
-
-Source maps должны быть встроены для использования в `mocha-webpack`. Рекомендуемая конфигурация:
-
-``` js
-module.exports = {
- // ...
- devtool: 'inline-cheap-module-source-map'
-}
-```
-
-При отладке через IDE рекомендуется также добавить следующее:
-
-``` js
-module.exports = {
- // ...
- output: {
- // ...
- // использовать абсолютные пути в sourcemaps (важно для отладки через IDE)
- devtoolModuleFilenameTemplate: '[absolute-resource-path]',
- devtoolFallbackModuleFilenameTemplate: '[absolute-resource-path]?[hash]'
- }
-}
-```
-
-### Настройка браузерного окружения
-
-`vue-test-utils` требует браузерного окружения для запуска. Мы можем симулировать его в Node используя `jsdom-global`:
-
-```bash
-npm install --save-dev jsdom jsdom-global
-```
-
-Затем в `test/setup.js`:
-
-``` js
-require('jsdom-global')()
-```
-
-Это добавит браузерное окружение в Node, таким образом `vue-test-utils` сможет корректно запуститься.
-
-### Выбор библиотеки утверждений
-
-[Chai](http://chaijs.com/) — популярная библиотека утверждений, которая обычно используется вместе с Mocha. Вы также можете воспользоваться [Sinon](http://sinonjs.org/) для создания шпионов и заглушек.
-
-В качестве альтернативы вы можете использовать `expect`, который является частью Jest и реализует [точно такой же API](http://facebook.github.io/jest/docs/en/expect.html#content) в документации Jest.
-
-Мы будем использовать `expect` здесь и сделаем его глобально доступным, чтобы нам не приходилось импортировать его в каждом тесте:
-
-``` bash
-npm install --save-dev expect
-```
-
-Затем в `test/setup.js`:
-
-``` js
-require('jsdom-global')()
-
-global.expect = require('expect')
-```
-
-### Оптимизация Babel для тестов
-
-Обратите внимание, что мы используем `babel-loader` для обработки JavaScript. У вас уже должен быть настроен Babel, если вы используете его в своём приложении, через файл `.babelrc`. Здесь `babel-loader` будет автоматически использовать тот же файл конфигурации.
-
-Следует отметить, что если вы используете Node 6+, которая уже поддерживает большинство функций ES2015, вы можете настроить отдельную [опцию env](https://babeljs.io/docs/usage/babelrc/#env-option) Babel, которая будет транспилировать только те функции, которые ещё не поддерживаются в используемой версии Node (например, `stage-2` или поддержку синтаксиса flow, и т.п.).
-
-### Добавление теста
-
-Создайте файл в `src` названный `Counter.vue`:
-
-``` html
-
-
- {{ count }}
-
-
-
-
-
-```
-
-И создайте файл теста, названный `test/Counter.spec.js` со следующим кодом:
-
-```js
-import { shallow } from '@vue/test-utils'
-import Counter from '../src/Counter.vue'
-
-describe('Counter.vue', () => {
- it('увеличивает счётчик по нажатию кнопки', () => {
- const wrapper = shallow(Counter)
- wrapper.find('button').trigger('click')
- expect(wrapper.find('div').text()).toMatch('1')
- })
-})
-```
-
-И теперь мы можем запустить тест:
-
-```
-npm run unit
-```
-
-Ура, мы запустили наши тесты!
-
-### Покрытие кода (Coverage)
-
-Для настройки покрытия кода в mocha-webpack, следуйте [инструкции по настройке покрытия кода mocha-webpack](https://github.com/zinserjan/mocha-webpack/blob/master/docs/guides/code-coverage.md).
-
-### Ресурсы
-
-- [Пример проекта для этой конфигурации](https://github.com/vuejs/vue-test-utils-mocha-webpack-example)
-- [Mocha](https://mochajs.org/)
-- [mocha-webpack](http://zinserjan.github.io/mocha-webpack/)
-- [Chai](http://chaijs.com/)
-- [Sinon](http://sinonjs.org/)
-- [jest/expect](http://facebook.github.io/jest/docs/en/expect.html#content)
diff --git a/docs/ru/guides/testing-async-components.md b/docs/ru/guides/testing-async-components.md
deleted file mode 100644
index dc481fbc2..000000000
--- a/docs/ru/guides/testing-async-components.md
+++ /dev/null
@@ -1,97 +0,0 @@
-# Тестирование асинхронной логики
-
-Чтобы упростить тестирование, `vue-test-utils` применяет обновления DOM _синхронно_. Однако, есть некоторые тонкости, когда вам необходимо протестировать компонент с асинхронным поведением, таким как коллбэки или промисы.
-
-Одними из самых распространённых поведений являются запросы к API и действия Vuex. В примерах ниже будет показано как протестировать метод, который делает запрос к API. В этом примере используется Jest для запуска тестов и мок для HTTP-библиотеки `axios`. Подробнее о использовании моков в Jest можно прочитать [здесь](https://facebook.github.io/jest/docs/en/manual-mocks.html#content).
-
-Реализация мока для `axios` выглядит так:
-
-``` js
-export default {
- get: () => new Promise(resolve => {
- resolve({ data: 'value' })
- })
-}
-```
-
-Компонент ниже делает вызов к API при нажатии кнопки и сохраняет полученный ответ в `value`.
-
-``` html
-
-
-
-
-
-```
-
-Тест можно написать следующим образом:
-
-``` js
-import { shallow } from '@vue/test-utils'
-import Foo from './Foo'
-jest.mock('axios')
-
-test('Foo', () => {
- it('делает асинхронный запрос при нажатии кнопки', () => {
- const wrapper = shallow(Foo)
- wrapper.find('button').trigger('click')
- expect(wrapper.vm.value).toBe('value')
- })
-})
-```
-
-В настоящее время этот тест не будет успешно проходить, потому что проверка значения вызывается до разрешения промиса `fetchResults`. Большинство библиотек для модульного тестирования предоставляют коллбэк, чтобы предоставить возможность определять когда тест должен будет завершаться. Jest и Mocha используют `done`. Мы можем использовать `done` в комбинации с `$nextTick` или `setTimeout`, чтобы гарантировать, что любые промисы будут разрешены перед проверками.
-
-``` js
-test('Foo', () => {
- it('делает асинхронный запрос при нажатии кнопки', (done) => {
- const wrapper = shallow(Foo)
- wrapper.find('button').trigger('click')
- wrapper.vm.$nextTick(() => {
- expect(wrapper.vm.value).toBe('value')
- done()
- })
- })
-})
-```
-
-Необходимость `$nextTick` или `setTimeout` требуется для прохождения теста, потому что очередь микрозадач, в которой обрабатываются промисы, обрабатывается до очереди задач, где обрабатываются `$nextTick` и `setTimeout`. Это означает, что к моменту запуска `$nexTick` и `setTimeout`, будут выполнены любые коллбэки промисов. См. [здесь](https://jakearchibald.com/2015/tasks-microtasks-queues-and-schedules/) для более подробного объяснения.
-
-Другое решение — использовать `async` функцию и npm-пакет `flush-promises`. `flush-promises` сбрасывает все ожидаемые промисы. Вы можете использовать `await` вызов для `flushPromises` чтобы очистить все ожидаемые промисы и улучшить читаемость вашего теста.
-
-Обновлённый тест будет выглядеть так:
-
-``` js
-import { shallow } from '@vue/test-utils'
-import flushPromises from 'flush-promises'
-import Foo from './Foo'
-jest.mock('axios')
-
-test('Foo', () => {
- it('делает асинхронный запрос при нажатии кнопки', async () => {
- const wrapper = shallow(Foo)
- wrapper.find('button').trigger('click')
- await flushPromises()
- expect(wrapper.vm.value).toBe('value')
- })
-})
-```
-
-Подобная техника может применяться и для действий Vuex, которые возвращают promise по умолчанию.
diff --git a/docs/ru/guides/using-with-vue-router.md b/docs/ru/guides/using-with-vue-router.md
deleted file mode 100644
index 2e35c9ca0..000000000
--- a/docs/ru/guides/using-with-vue-router.md
+++ /dev/null
@@ -1,79 +0,0 @@
-# Использование с Vue Router
-
-## Установка Vue Router в тестах
-
-Вы никогда не должны устанавливать Vue Router в базовый конструктор Vue в тестах. Установка Vue Router добавляет `$route` и `$router` как свойства только для чтения на прототипе Vue.
-
-Чтобы этого избежать, мы можем создать localVue и установить Vue Router на него.
-
-```js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import VueRouter from 'vue-router'
-
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-const router = new VueRouter()
-
-shallow(Component, {
- localVue,
- router
-})
-```
-
-## Тестирование компонентов использующих `router-link` или `router-view`
-
-Когда вы устанавливаете Vue Router, регистрируются глобальные компоненты `router-link` и `router-view`. Это означает, что мы можем использовать их в любом месте нашего приложения без необходимости импортировать их.
-
-Когда мы запускаем тесты, нам нужно сделать эти компоненты vue-router доступными для компонента, который мы монтируем. Есть два способа сделать это.
-
-### Использование заглушек (stubs)
-
-```js
-import { shallow } from '@vue/test-utils'
-
-shallow(Component, {
- stubs: ['router-link', 'router-view']
-})
-```
-
-### Установка Vue Router с помощью localVue
-
-```js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import VueRouter from 'vue-router'
-
-const localVue = createLocalVue()
-localVue.use(VueRouter)
-
-shallow(Component, {
- localVue
-})
-```
-
-## Создание моков `$route` и `$router`
-
-Иногда вам может потребоваться протестировать, что компонент что-то делает с параметрами объектов `$route` и `$router`. Для этого вы можете передавать пользовательские моки в экземпляр Vue.
-
-```js
-import { shallow } from '@vue/test-utils'
-
-const $route = {
- path: '/some/path'
-}
-
-const wrapper = shallow(Component, {
- mocks: {
- $route
- }
-})
-
-wrapper.vm.$route.path // /some/path
-```
-
-## Общие ошибки
-
-Установка Vue Router добавляет `$route` и `$router` в качестве свойств только для чтения на прототипе Vue.
-
-Это означет, что любые будущие тесты, которые попытаются сделать мок `$route` или `$router` потерпят неудачу.
-
-Для избежания этого никогда не устанавливайте Vue Router глобально при запуске тестов; используйте localVue как было показано выше.
diff --git a/docs/ru/guides/using-with-vuex.md b/docs/ru/guides/using-with-vuex.md
deleted file mode 100644
index 198a4e28b..000000000
--- a/docs/ru/guides/using-with-vuex.md
+++ /dev/null
@@ -1,265 +0,0 @@
-# Использование с Vuex
-
-В этом руководстве мы рассмотрим как тестировать Vuex в компонентах с `vue-test-utils`.
-
-## Создание моков для действий
-
-Давайте посмотрим на часть кода.
-
-Это компонент который мы хотим протестировать. Он вызывает действие Vuex.
-
-``` html
-
-
-
-
-
-
-
-
-```
-
-Для целей этого теста нам всё равно, что делает действие или как выглядит структура хранилища. Мы должны просто узнать, что это действие вызывается когда должно, и что оно вызывается с ожидаемым значением.
-
-Чтобы протестировать это, нам нужно передать мок хранилища в Vue, когда мы отделяем наш компонент.
-
-Вместо передачи хранилища в базовый конструктор Vue, мы можем передать его в [localVue](../api/options.md#localvue). localVue — это изолированный конструктор Vue, в который мы можем вносить изменения без влияния на глобальный конструктор Vue.
-
-Давайте посмотрим, как это выглядит:
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Actions from '../../../src/components/Actions'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Actions.vue', () => {
- let actions
- let store
-
- beforeEach(() => {
- actions = {
- actionClick: jest.fn(),
- actionInput: jest.fn()
- }
- store = new Vuex.Store({
- state: {},
- actions
- })
- })
-
- it('вызывает действие хранилища "actionInput" когда значение поля "input" и было событие "input"', () => {
- const wrapper = shallow(Actions, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'input'
- input.trigger('input')
- expect(actions.actionInput).toHaveBeenCalled()
- })
-
- it('не вызывает действие хранилища "actionInput" когда значение поля отлично от "input" и было событие "input"', () => {
- const wrapper = shallow(Actions, { store, localVue })
- const input = wrapper.find('input')
- input.element.value = 'not input'
- input.trigger('input')
- expect(actions.actionInput).not.toHaveBeenCalled()
- })
-
- it('вызывает действие хранилища "actionClick" по нажатию кнопки', () => {
- const wrapper = shallow(Actions, { store, localVue })
- wrapper.find('button').trigger('click')
- expect(actions.actionClick).toHaveBeenCalled()
- })
-})
-```
-
-Что тут происходит? Сначала мы говорим Vue использовать Vuex с помощью метода `localVue.use`. Это всего лишь обёртка вокруг `Vue.use`.
-
-Затем мы создаём мок хранилища вызовом `new Vuex.store` с нашими заготовленными значениями. Мы передаём ему только действия, так как это всё, что нам необходимо.
-
-Действия реализуются с помощью [mock-функций jest](https://facebook.github.io/jest/docs/en/mock-functions.html). Эти mock-функции предоставляют нам методы для проверки, вызывались ли действия или нет.
-
-Затем мы можем проверить в наших тестах, что заглушка действия была вызвана когда ожидалось.
-
-Теперь способ, которым мы определяем наше хранилище выглядит немного необычным для вас.
-
-Мы используем `beforeEach`, чтобы убедиться, что у нас есть чистое хранилище перед каждым тестом. `beforeEach` — это хук в mocha, который вызывается перед каждым тестом. В нашем тесте мы переназначаем значения переменных хранилища. Если бы мы этого не сделали, mock-функции нужно было бы автоматически сбрасывать. Это также позволяет нам изменять состояние в наших тестах, не влияя на последующие тесты.
-
-Самое важно, что следует отметить в этом тесте — то что **мы создаём мок хранилища Vuex и затем передаём его в `vue-test-utils`**.
-
-Отлично, теперь мы можем создавать моки действий, давайте посмотрим на создание моков для геттеров.
-
-## Создание моков для геттеров
-
-``` html
-
-
-
{{inputValue}}
-
{{clicks}}
-
-
-
-
-```
-
-Это довольно простой компонент. Он отображает результат геттеров `clicks` и `inputValue`. Опять же, нас не волнует что возвращают эти геттеры — только то, что их результат будет корректно отображён.
-
-Давайте посмотрим на тест:
-
-``` js
-import { shallow, createLocalVue } from '@vue/test-utils'
-import Vuex from 'vuex'
-import Getters from '../../../src/components/Getters'
-
-const localVue = createLocalVue()
-
-localVue.use(Vuex)
-
-describe('Getters.vue', () => {
- let getters
- let store
-
- beforeEach(() => {
- getters = {
- clicks: () => 2,
- inputValue: () => 'input'
- }
-
- store = new Vuex.Store({
- getters
- })
- })
-
- it('Отображает "state.inputValue" в первом теге p', () => {
- const wrapper = shallow(Getters, { store, localVue })
- const p = wrapper.find('p')
- expect(p.text()).toBe(getters.inputValue())
- })
-
- it('Отображает "state.clicks" во втором теге p', () => {
- const wrapper = shallow(Getters, { store, localVue })
- const p = wrapper.findAll('p').at(1)
- expect(p.text()).toBe(getters.clicks().toString())
- })
-})
-```
-
-Этот тест очень похож на тест действий. Мы создаём мок хранилища перед каждым тестом, передаём его в качестве опции когда вызываем `shallow`, и проверяем что значение вернувшееся из мока-геттера отображается.
-
-Это здорово, но что, если мы хотим проверить, что наши геттеры возвращают правильную часть нашего состояния?
-
-## Создание моков с модулями
-
-[Модули](https://vuex.vuejs.org/ru/modules.html) полезны для разделения нашего хранилища на управляемые части. Они также экспортируют геттеры. Мы можем использовать их в наших тестах.
-
-Давайте взглянем на наш компонент:
-
-``` html
-
-