Commit 9c13b0e8 authored by Nicolaj Egelund's avatar Nicolaj Egelund Committed by 杨奕

Updated tests to trigger mousedown and mouseup events instead of click

parent ae32eb13
import { createVue, destroyVM } from '../util'; import { createVue, triggerClick, destroyVM } from '../util';
describe('Autocomplete', () => { describe('Autocomplete', () => {
let vm; let vm;
...@@ -59,7 +59,7 @@ describe('Autocomplete', () => { ...@@ -59,7 +59,7 @@ describe('Autocomplete', () => {
expect(suggestions.style.display).to.not.equal('none'); expect(suggestions.style.display).to.not.equal('none');
expect(suggestions.querySelectorAll('.el-autocomplete-suggestion__list li').length).to.be.equal(4); expect(suggestions.querySelectorAll('.el-autocomplete-suggestion__list li').length).to.be.equal(4);
document.body.click(); triggerClick(document);
setTimeout(_ => { setTimeout(_ => {
expect(suggestions.style.display).to.be.equal('none'); expect(suggestions.style.display).to.be.equal('none');
done(); done();
......
import { createVue, triggerEvent, destroyVM } from '../util'; import { createVue, triggerEvent, triggerClick, destroyVM } from '../util';
describe('InputNumber', () => { describe('InputNumber', () => {
let vm; let vm;
...@@ -39,7 +39,7 @@ describe('InputNumber', () => { ...@@ -39,7 +39,7 @@ describe('InputNumber', () => {
let btnDecrease = vm.$el.querySelector('.el-input-number__decrease'); let btnDecrease = vm.$el.querySelector('.el-input-number__decrease');
triggerEvent(btnDecrease, 'mousedown'); triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(4); expect(vm.value).to.be.equal(4);
...@@ -64,7 +64,7 @@ describe('InputNumber', () => { ...@@ -64,7 +64,7 @@ describe('InputNumber', () => {
let btnIncrease = vm.$el.querySelector('.el-input-number__increase'); let btnIncrease = vm.$el.querySelector('.el-input-number__increase');
triggerEvent(btnIncrease, 'mousedown'); triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(2.5); expect(vm.value).to.be.equal(2.5);
...@@ -90,14 +90,14 @@ describe('InputNumber', () => { ...@@ -90,14 +90,14 @@ describe('InputNumber', () => {
let btnIncrease = vm.$el.querySelector('.el-input-number__increase'); let btnIncrease = vm.$el.querySelector('.el-input-number__increase');
triggerEvent(btnDecrease, 'mousedown'); triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(2); expect(vm.value).to.be.equal(2);
expect(input.value).to.be.equal('2'); expect(input.value).to.be.equal('2');
triggerEvent(btnIncrease, 'mousedown'); triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(2); expect(vm.value).to.be.equal(2);
...@@ -124,14 +124,14 @@ describe('InputNumber', () => { ...@@ -124,14 +124,14 @@ describe('InputNumber', () => {
let btnDecrease = vm.$el.querySelector('.el-input-number__decrease'); let btnDecrease = vm.$el.querySelector('.el-input-number__decrease');
triggerEvent(btnIncrease, 'mousedown'); triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(8.2); expect(vm.value).to.be.equal(8.2);
expect(input.value).to.be.equal('8.2'); expect(input.value).to.be.equal('8.2');
triggerEvent(btnDecrease, 'mousedown'); triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(5); expect(vm.value).to.be.equal(5);
...@@ -171,7 +171,7 @@ describe('InputNumber', () => { ...@@ -171,7 +171,7 @@ describe('InputNumber', () => {
let btnDecrease = vm.$el.querySelector('.el-input-number__decrease'); let btnDecrease = vm.$el.querySelector('.el-input-number__decrease');
triggerEvent(btnDecrease, 'mousedown'); triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(6); expect(vm.value).to.be.equal(6);
...@@ -210,7 +210,7 @@ describe('InputNumber', () => { ...@@ -210,7 +210,7 @@ describe('InputNumber', () => {
let btnIncrease = vm.$el.querySelector('.el-input-number__increase'); let btnIncrease = vm.$el.querySelector('.el-input-number__increase');
triggerEvent(btnIncrease, 'mousedown'); triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(vm.value).to.be.equal(8); expect(vm.value).to.be.equal(8);
...@@ -282,7 +282,7 @@ describe('InputNumber', () => { ...@@ -282,7 +282,7 @@ describe('InputNumber', () => {
vm.$refs.input.$on('change', spy); vm.$refs.input.$on('change', spy);
triggerEvent(btnIncrease, 'mousedown'); triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup'); triggerClick(document, 'mouseup');
vm.$nextTick(_ => { vm.$nextTick(_ => {
expect(spy.withArgs(2.5, 1.5).calledOnce).to.be.true; expect(spy.withArgs(2.5, 1.5).calledOnce).to.be.true;
......
import Clickoutside from 'element-ui/src/utils/clickoutside'; import Clickoutside from 'element-ui/src/utils/clickoutside';
const ctx = '@@clickoutsideContext'; const ctx = '@@clickoutsideContext';
import { triggerClick } from '../util';
describe('Utils:Clickoutside', () => { describe('Utils:Clickoutside', () => {
it('create', () => { it('create', () => {
let count = 0; let count = 0;
...@@ -42,7 +44,7 @@ describe('Utils:Clickoutside', () => { ...@@ -42,7 +44,7 @@ describe('Utils:Clickoutside', () => {
}; };
Clickoutside.bind(el, binding, vnode); Clickoutside.bind(el, binding, vnode);
document.body.click(); triggerClick(document);
expect(count).to.equal(1); expect(count).to.equal(1);
}); });
...@@ -61,9 +63,9 @@ describe('Utils:Clickoutside', () => { ...@@ -61,9 +63,9 @@ describe('Utils:Clickoutside', () => {
el.appendChild(insideElm); el.appendChild(insideElm);
Clickoutside.bind(el, binding, vnode); Clickoutside.bind(el, binding, vnode);
insideElm.click(); triggerClick(insideElm);
expect(count).to.equal(0); expect(count).to.equal(0);
document.body.click(); triggerClick(document);
expect(count).to.equal(1); expect(count).to.equal(1);
}); });
...@@ -83,9 +85,9 @@ describe('Utils:Clickoutside', () => { ...@@ -83,9 +85,9 @@ describe('Utils:Clickoutside', () => {
vnode.context.popperElm.appendChild(insideElm); vnode.context.popperElm.appendChild(insideElm);
Clickoutside.bind(el, binding, vnode); Clickoutside.bind(el, binding, vnode);
insideElm.click(); triggerClick(insideElm);
expect(count).to.equal(0); expect(count).to.equal(0);
document.body.click(); triggerClick(document);
expect(count).to.equal(1); expect(count).to.equal(1);
}); });
...@@ -101,7 +103,7 @@ describe('Utils:Clickoutside', () => { ...@@ -101,7 +103,7 @@ describe('Utils:Clickoutside', () => {
Clickoutside.bind(el, binding, vnode); Clickoutside.bind(el, binding, vnode);
expect(count).to.equal(0); expect(count).to.equal(0);
document.body.click(); triggerClick(document);
expect(count).to.equal(1); expect(count).to.equal(1);
}); });
...@@ -139,9 +141,9 @@ describe('Utils:Clickoutside', () => { ...@@ -139,9 +141,9 @@ describe('Utils:Clickoutside', () => {
}; };
Clickoutside.bind(el, binding, vnode); Clickoutside.bind(el, binding, vnode);
document.body.click(); triggerClick(document);
Clickoutside.unbind(el); Clickoutside.unbind(el);
document.body.click(); triggerClick(document);
expect(count).to.equal(1); expect(count).to.equal(1);
}); });
}); });
...@@ -83,3 +83,15 @@ exports.triggerEvent = function(elm, name, ...opts) { ...@@ -83,3 +83,15 @@ exports.triggerEvent = function(elm, name, ...opts) {
return elm; return elm;
}; };
/**
* 触发 “mouseup” 和 “mousedown” 事件
* @param {Element} elm
* @param {*} opts
*/
exports.triggerClick = function(elm, ...opts) {
exports.triggerEvent(elm, 'mousedown', ...opts);
exports.triggerEvent(elm, 'mouseup', ...opts);
return elm;
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment