vant-fork
Version:
Lightweight Mobile UI Components built on Vue
47 lines (37 loc) • 1.04 kB
JavaScript
import Slider from '..';
import { mount, triggerDrag, trigger } from '../../../test/utils';
Element.prototype.getBoundingClientRect = jest.fn(() => ({ width: 100, left: 0 }));
test('drag button', () => {
const wrapper = mount(Slider, {
attachToDocument: true,
propsData: {
value: 50,
disabled: true
}
});
wrapper.vm.$on('input', value => {
wrapper.setProps({ value });
});
const button = wrapper.find('.van-slider__button');
triggerDrag(button, 50, 0);
expect(wrapper).toMatchSnapshot();
wrapper.setData({ disabled: false });
triggerDrag(button, 50, 0);
expect(wrapper).toMatchSnapshot();
});
it('click bar', () => {
const wrapper = mount(Slider, {
propsData: {
value: 50,
disabled: true
}
});
wrapper.vm.$on('input', value => {
wrapper.setProps({ value });
});
trigger(wrapper, 'click', 100, 0);
expect(wrapper).toMatchSnapshot();
wrapper.setData({ disabled: false });
trigger(wrapper, 'click', 100, 0);
expect(wrapper).toMatchSnapshot();
});