[improvement] ImagePreview: support dbclick zoom (#3839)

This commit is contained in:
cesc fabregas
2019-07-14 14:07:52 +08:00
committed by neverland
parent 7b9331aee4
commit f50dc30484
2 changed files with 49 additions and 11 deletions
+21 -2
View File
@@ -20,7 +20,7 @@ const images = [
'https://img.yzcdn.cn/3.png'
];
test('render image', () => {
test('render image', async () => {
const wrapper = mount(ImagePreviewVue, {
propsData: { images, value: true }
});
@@ -31,6 +31,9 @@ test('render image', () => {
triggerDrag(swipe, 500, 0);
expect(wrapper.emitted('input')).toBeFalsy();
triggerDrag(swipe, 0, 0);
await later(300);
expect(wrapper.emitted('input')[0][0]).toBeFalsy();
expect(wrapper.emitted('change')[0][0]).toEqual(2);
});
@@ -64,6 +67,22 @@ test('function call', done => {
});
});
test('double click', async done => {
const instance = ImagePreview(images);
const swipe = instance.$el.querySelector('.van-swipe__track');
triggerDrag(swipe, 0, 0);
triggerDrag(swipe, 0, 0);
expect(instance.scale).toEqual(2);
await later();
triggerDrag(swipe, 0, 0);
triggerDrag(swipe, 0, 0);
expect(instance.scale).toEqual(1);
done();
});
test('onClose option', async done => {
const onClose = jest.fn();
const instance = ImagePreview({
@@ -75,7 +94,7 @@ test('onClose option', async done => {
instance.$emit('input', true);
expect(onClose).toHaveBeenCalledTimes(0);
await later();
await later(300);
const wrapper = document.querySelector('.van-image-preview');
const swipe = wrapper.querySelector('.van-swipe__track');