vant/test/specs/list.spec.js
2018-03-13 16:01:50 +08:00

69 lines
1.3 KiB
JavaScript

import List from 'packages/list';
import { mount } from 'avoriaz';
describe('List', () => {
let wrapper;
afterEach(() => {
wrapper && wrapper.destroy();
});
it('load event', done => {
wrapper = mount(List);
const spy = sinon.spy();
wrapper.vm.$on('load', spy);
wrapper.vm.$on('input', val => {
wrapper.vm.loading = val;
});
expect(spy.calledOnce).to.be.false;
wrapper.vm.$nextTick(() => {
expect(spy.calledOnce).to.be.true;
done();
});
});
it('finished', done => {
wrapper = mount(List, {
propsData: {
finished: true
}
});
const spy = sinon.spy();
wrapper.vm.$on('load', spy);
wrapper.vm.$nextTick(() => {
expect(spy.calledOnce).to.be.false;
wrapper.vm.finished = false;
setTimeout(() => {
expect(spy.calledOnce).to.be.true;
done();
}, 50);
});
});
it('immediate check false', done => {
wrapper = mount(List, {
propsData: {
immediateCheck: false
}
});
const spy = sinon.spy();
wrapper.vm.$on('load', spy);
wrapper.vm.$on('input', val => {
wrapper.vm.loading = val;
});
expect(spy.calledOnce).to.be.false;
wrapper.vm.$nextTick(() => {
expect(spy.calledOnce).to.be.false;
done();
});
});
});