DatePicker: add reverse selection test (#10035)

pull/10014/merge
Jiewei Qian 2018-03-07 13:57:00 +11:00 committed by 杨奕
parent 9d6d0d69c1
commit 810cae1c64
1 changed files with 44 additions and 0 deletions

View File

@ -1328,6 +1328,50 @@ describe('DatePicker', () => {
}, DELAY);
});
it('works: reverse selection', done => {
vm = createVue({
template: '<el-date-picker type="daterange" v-model="value" ref="compo" />',
data() {
return {
value: ''
};
}
}, true);
const rangePicker = vm.$refs.compo;
const inputs = rangePicker.$el.querySelectorAll('input');
inputs[0].focus();
setTimeout(_ => {
const panels = rangePicker.picker.$el.querySelectorAll('.el-date-range-picker__content');
expect(Array.prototype.slice.call(panels)).to.length(2);
panels[1].querySelector('td.available').click();
setTimeout(_ => {
panels[0].querySelector('td.available').click();
setTimeout(_ => {
inputs[0].focus();
setTimeout(_ => {
// correct highlight
const startDate = rangePicker.picker.$el.querySelectorAll('.start-date');
const endDate = rangePicker.picker.$el.querySelectorAll('.end-date');
const inRangeDate = rangePicker.picker.$el.querySelectorAll('.in-range');
expect(startDate.length).to.equal(1);
expect(endDate.length).to.equal(1);
expect(inRangeDate.length).to.above(0);
// value is array
expect(vm.value).to.be.an.instanceof(Array);
// input text is something like date string
expect(inputs[0].value.length).to.equal(10);
expect(inputs[1].value.length).to.equal(10);
// result array is properly ordered
expect(vm.value[0].getTime() < vm.value[1].getTime()).to.be.true;
done();
}, DELAY);
}, DELAY);
}, DELAY);
}, DELAY);
});
it('type:daterange unlink:true', done => {
vm = createVue({
template: '<el-date-picker type="daterange" unlink-panels v-model="value" ref="compo" />',