diff --git a/src/core/instance/render.js b/src/core/instance/render.js index 438fa2afb..cea8e51bd 100644 --- a/src/core/instance/render.js +++ b/src/core/instance/render.js @@ -49,6 +49,7 @@ export function initRender (vm: Component) { // $attrs & $listeners are exposed for easier HOC creation. // they need to be reactive so that HOCs using them are always updated const parentData = parentVnode && parentVnode.data + /* istanbul ignore else */ if (process.env.NODE_ENV !== 'production') { defineReactive(vm, '$attrs', parentData && parentData.attrs, () => { !isUpdatingChildComponent && warn(`$attrs is readonly.`, vm) diff --git a/src/platforms/web/runtime/components/transition-group.js b/src/platforms/web/runtime/components/transition-group.js index ffb623308..b0133d71b 100644 --- a/src/platforms/web/runtime/components/transition-group.js +++ b/src/platforms/web/runtime/components/transition-group.js @@ -127,6 +127,7 @@ export default { if (!hasTransition) { return false } + /* istanbul ignore if */ if (this._hasMove) { return this._hasMove } diff --git a/test/unit/features/directives/on.spec.js b/test/unit/features/directives/on.spec.js index 683b0aea8..fff8a11d6 100644 --- a/test/unit/features/directives/on.spec.js +++ b/test/unit/features/directives/on.spec.js @@ -695,4 +695,18 @@ describe('Directive v-on', () => { expect(mouseup.calls.count()).toBe(1) expect(mousedown.calls.count()).toBe(1) }) + + it('warn object syntax with modifier', () => { + new Vue({ + template: `` + }).$mount() + expect(`v-on without argument does not support modifiers`).toHaveBeenWarned() + }) + + it('warn object syntax with non-object value', () => { + new Vue({ + template: `` + }).$mount() + expect(`v-on without argument expects an Object value`).toHaveBeenWarned() + }) })