mirror of https://github.com/ElemeFE/element
TimeSelect: add testcase of setting default value (#454)
parent
d70d346eb8
commit
0f608666a3
|
@ -127,7 +127,7 @@
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
value1: '',
|
value1: '14:30',
|
||||||
value2: new Date(2016, 9, 10, 18, 40),
|
value2: new Date(2016, 9, 10, 18, 40),
|
||||||
value3: [new Date(2016, 9, 10, 8, 40), new Date(2016, 9, 10, 9, 40)],
|
value3: [new Date(2016, 9, 10, 8, 40), new Date(2016, 9, 10, 9, 40)],
|
||||||
startTime: '',
|
startTime: '',
|
||||||
|
|
|
@ -33,6 +33,7 @@
|
||||||
"vue",
|
"vue",
|
||||||
"components"
|
"components"
|
||||||
],
|
],
|
||||||
|
"license": "MIT",
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/elemefe/element/issues"
|
"url": "https://github.com/elemefe/element/issues"
|
||||||
},
|
},
|
||||||
|
|
|
@ -9,9 +9,7 @@
|
||||||
v-for="item in items"
|
v-for="item in items"
|
||||||
:class="{ selected: value === item.value, disabled: item.disabled }"
|
:class="{ selected: value === item.value, disabled: item.disabled }"
|
||||||
:disabled="item.disabled"
|
:disabled="item.disabled"
|
||||||
@click="handleClick(item)">
|
@click="handleClick(item)">{{ item.value }}</div>
|
||||||
{{ item.value }}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</transition>
|
</transition>
|
||||||
|
|
|
@ -12,9 +12,11 @@ describe('TimeSelect', () => {
|
||||||
},
|
},
|
||||||
placeholder: 'test'
|
placeholder: 'test'
|
||||||
}, true);
|
}, true);
|
||||||
vm.$el.querySelector('input').blur();
|
const input = vm.$el.querySelector('input');
|
||||||
vm.$el.querySelector('input').focus();
|
|
||||||
vm.$el.querySelector('input').blur();
|
input.blur();
|
||||||
|
input.focus();
|
||||||
|
input.blur();
|
||||||
|
|
||||||
Vue.nextTick(_ => {
|
Vue.nextTick(_ => {
|
||||||
expect(vm.picker.start).to.equal('08:30');
|
expect(vm.picker.start).to.equal('08:30');
|
||||||
|
@ -25,7 +27,7 @@ describe('TimeSelect', () => {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('click time', done => {
|
it('select time', done => {
|
||||||
const vm = createVue({
|
const vm = createVue({
|
||||||
template: `
|
template: `
|
||||||
<div>
|
<div>
|
||||||
|
@ -40,15 +42,16 @@ describe('TimeSelect', () => {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}, true);
|
}, true);
|
||||||
|
const input = vm.$el.querySelector('input');
|
||||||
|
|
||||||
vm.$el.querySelector('input').blur();
|
input.blur();
|
||||||
vm.$el.querySelector('input').focus();
|
input.focus();
|
||||||
vm.$el.querySelector('input').blur();
|
input.blur();
|
||||||
|
|
||||||
Vue.nextTick(_ => {
|
Vue.nextTick(_ => {
|
||||||
const items = vm.$refs.compo.picker.$el.querySelectorAll('.time-select-item');
|
const items = vm.$refs.compo.picker.$el.querySelectorAll('.time-select-item');
|
||||||
const target = items[4];
|
const target = items[4];
|
||||||
const time = target.textContent.trim();
|
const time = target.textContent;
|
||||||
|
|
||||||
target.click();
|
target.click();
|
||||||
Vue.nextTick(_ => {
|
Vue.nextTick(_ => {
|
||||||
|
@ -57,4 +60,22 @@ describe('TimeSelect', () => {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('set default value', done => {
|
||||||
|
const vm = createTest(TimeSelect, {
|
||||||
|
value: '14:30'
|
||||||
|
}, true);
|
||||||
|
const input = vm.$el.querySelector('input');
|
||||||
|
|
||||||
|
input.blur();
|
||||||
|
input.focus();
|
||||||
|
input.blur();
|
||||||
|
|
||||||
|
setTimeout(_ => {
|
||||||
|
expect(input.value).to.equal('14:30');
|
||||||
|
expect(vm.picker.$el.querySelector('.selected')).to.be.ok;
|
||||||
|
expect(vm.picker.$el.querySelector('.selected').textContent).to.equal('14:30');
|
||||||
|
done();
|
||||||
|
}, 500);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue