Skip to content

Commit 4f9b888

Browse files
committed
test: fix v-on .prevent modifier tests in IE
1 parent d0c916f commit 4f9b888

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

test/unit/specs/directives/public/on_spec.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -127,39 +127,41 @@ if (_.inBrowser) {
127127
})
128128

129129
it('prevent modifier', function () {
130-
var event
130+
var prevented
131131
new Vue({
132132
el: el,
133133
template: '<a href="#" @click.prevent="onClick">',
134134
methods: {
135135
onClick: function (e) {
136-
event = e
136+
// store the prevented state now:
137+
// IE will reset the `defaultPrevented` flag
138+
// once the event handler call stack is done!
139+
prevented = e.defaultPrevented
137140
}
138141
}
139142
})
140143
trigger(el.firstChild, 'click')
141-
expect(event.defaultPrevented).toBe(true)
144+
expect(prevented).toBe(true)
142145
})
143146

144147
it('multiple modifiers working together', function () {
145148
var outer = jasmine.createSpy('outer')
146-
var event
149+
var prevented
147150
new Vue({
148151
el: el,
149152
template: '<div @keyup="outer"><input class="inner" @keyup.enter.stop.prevent="inner"></div></div>',
150153
methods: {
151154
outer: outer,
152155
inner: function (e) {
153-
event = e
156+
prevented = e.defaultPrevented
154157
}
155158
}
156159
})
157160
trigger(el.querySelector('.inner'), 'keyup', function (e) {
158161
e.keyCode = 13
159162
})
160163
expect(outer).not.toHaveBeenCalled()
161-
expect(event).toBeTruthy()
162-
expect(event.defaultPrevented).toBe(true)
164+
expect(prevented).toBe(true)
163165
})
164166

165167
it('warn non-function values', function () {

0 commit comments

Comments
 (0)