Updated tests to trigger mousedown and mouseup events instead of click

pull/3532/head
Nicolaj Egelund 2017-03-12 18:48:52 +01:00 committed by 杨奕
parent ae32eb13aa
commit 9c13b0e8d5
4 changed files with 34 additions and 20 deletions

View File

@ -1,4 +1,4 @@
import { createVue, destroyVM } from '../util';
import { createVue, triggerClick, destroyVM } from '../util';
describe('Autocomplete', () => {
let vm;
@ -59,7 +59,7 @@ describe('Autocomplete', () => {
expect(suggestions.style.display).to.not.equal('none');
expect(suggestions.querySelectorAll('.el-autocomplete-suggestion__list li').length).to.be.equal(4);
document.body.click();
triggerClick(document);
setTimeout(_ => {
expect(suggestions.style.display).to.be.equal('none');
done();

View File

@ -1,4 +1,4 @@
import { createVue, triggerEvent, destroyVM } from '../util';
import { createVue, triggerEvent, triggerClick, destroyVM } from '../util';
describe('InputNumber', () => {
let vm;
@ -39,7 +39,7 @@ describe('InputNumber', () => {
let btnDecrease = vm.$el.querySelector('.el-input-number__decrease');
triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(4);
@ -64,7 +64,7 @@ describe('InputNumber', () => {
let btnIncrease = vm.$el.querySelector('.el-input-number__increase');
triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(2.5);
@ -90,14 +90,14 @@ describe('InputNumber', () => {
let btnIncrease = vm.$el.querySelector('.el-input-number__increase');
triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(2);
expect(input.value).to.be.equal('2');
triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(2);
@ -124,14 +124,14 @@ describe('InputNumber', () => {
let btnDecrease = vm.$el.querySelector('.el-input-number__decrease');
triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(8.2);
expect(input.value).to.be.equal('8.2');
triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(5);
@ -171,7 +171,7 @@ describe('InputNumber', () => {
let btnDecrease = vm.$el.querySelector('.el-input-number__decrease');
triggerEvent(btnDecrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(6);
@ -210,7 +210,7 @@ describe('InputNumber', () => {
let btnIncrease = vm.$el.querySelector('.el-input-number__increase');
triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(vm.value).to.be.equal(8);
@ -282,7 +282,7 @@ describe('InputNumber', () => {
vm.$refs.input.$on('change', spy);
triggerEvent(btnIncrease, 'mousedown');
triggerEvent(document, 'mouseup');
triggerClick(document, 'mouseup');
vm.$nextTick(_ => {
expect(spy.withArgs(2.5, 1.5).calledOnce).to.be.true;

View File

@ -1,6 +1,8 @@
import Clickoutside from 'element-ui/src/utils/clickoutside';
const ctx = '@@clickoutsideContext';
import { triggerClick } from '../util';
describe('Utils:Clickoutside', () => {
it('create', () => {
let count = 0;
@ -42,7 +44,7 @@ describe('Utils:Clickoutside', () => {
};
Clickoutside.bind(el, binding, vnode);
document.body.click();
triggerClick(document);
expect(count).to.equal(1);
});
@ -61,9 +63,9 @@ describe('Utils:Clickoutside', () => {
el.appendChild(insideElm);
Clickoutside.bind(el, binding, vnode);
insideElm.click();
triggerClick(insideElm);
expect(count).to.equal(0);
document.body.click();
triggerClick(document);
expect(count).to.equal(1);
});
@ -83,9 +85,9 @@ describe('Utils:Clickoutside', () => {
vnode.context.popperElm.appendChild(insideElm);
Clickoutside.bind(el, binding, vnode);
insideElm.click();
triggerClick(insideElm);
expect(count).to.equal(0);
document.body.click();
triggerClick(document);
expect(count).to.equal(1);
});
@ -101,7 +103,7 @@ describe('Utils:Clickoutside', () => {
Clickoutside.bind(el, binding, vnode);
expect(count).to.equal(0);
document.body.click();
triggerClick(document);
expect(count).to.equal(1);
});
@ -139,9 +141,9 @@ describe('Utils:Clickoutside', () => {
};
Clickoutside.bind(el, binding, vnode);
document.body.click();
triggerClick(document);
Clickoutside.unbind(el);
document.body.click();
triggerClick(document);
expect(count).to.equal(1);
});
});

View File

@ -83,3 +83,15 @@ exports.triggerEvent = function(elm, name, ...opts) {
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;
};