1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import { mount } from '@vue/test-utils';
import { GREEN_BOX_IMAGE_URL } from 'spec/test_constants';
import ImageViewer from '~/vue_shared/components/content_viewer/viewers/image_viewer.vue';
describe('Image Viewer', () => {
let wrapper;
it('renders image preview', () => {
wrapper = mount(ImageViewer, {
propsData: { path: GREEN_BOX_IMAGE_URL, fileSize: 1024 },
});
expect(wrapper.find('img').element).toHaveAttr('src', GREEN_BOX_IMAGE_URL);
});
describe('file sizes', () => {
it.each`
fileSize | renderInfo | elementExists | humanizedFileSize
${1024} | ${true} | ${true} | ${'1.00 KiB'}
${0} | ${true} | ${true} | ${''}
${1024} | ${false} | ${false} | ${undefined}
`(
'shows file size as "$humanizedFileSize", if fileSize=$fileSize and renderInfo=$renderInfo',
({ fileSize, renderInfo, elementExists, humanizedFileSize }) => {
wrapper = mount(ImageViewer, {
propsData: { path: GREEN_BOX_IMAGE_URL, fileSize, renderInfo },
});
const imageInfo = wrapper.find('.image-info');
expect(imageInfo.exists()).toBe(elementExists);
expect(imageInfo.element?.textContent.trim()).toBe(humanizedFileSize);
},
);
});
});
|