From cf86a4061f4a1381530695e7bc3f6bf9a309f864 Mon Sep 17 00:00:00 2001 From: 38elements Date: Wed, 27 Jun 2018 09:36:51 +0900 Subject: [PATCH] fix: fix #762 --- packages/test-utils/src/vue-wrapper.js | 2 +- packages/test-utils/src/wrapper.js | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/test-utils/src/vue-wrapper.js b/packages/test-utils/src/vue-wrapper.js index 6db1de2d9..f5a7d105e 100644 --- a/packages/test-utils/src/vue-wrapper.js +++ b/packages/test-utils/src/vue-wrapper.js @@ -7,7 +7,7 @@ import { orderWatchers } from './order-watchers' export default class VueWrapper extends Wrapper implements BaseWrapper { constructor (vm: Component, options: WrapperOptions) { - super(vm._vnode, options) + super(vm._vnode, options, true) // $FlowIgnore : issue with defineProperty Object.defineProperty(this, 'vnode', { diff --git a/packages/test-utils/src/wrapper.js b/packages/test-utils/src/wrapper.js index 882c70121..f1661a8f6 100644 --- a/packages/test-utils/src/wrapper.js +++ b/packages/test-utils/src/wrapper.js @@ -34,11 +34,15 @@ export default class Wrapper implements BaseWrapper { version: number; isFunctionalComponent: boolean; - constructor (node: VNode | Element, options: WrapperOptions) { + constructor ( + node: VNode | Element, + options: WrapperOptions, + isVueWrapper?: boolean + ) { const vnode = node instanceof Element ? null : node const element = node instanceof Element ? node : node.elm // Prevent redefine by VueWrapper - if (this.constructor.name === 'Wrapper') { + if (!isVueWrapper) { // $FlowIgnore Object.defineProperty(this, 'vnode', { get: () => vnode,