gitlab-org--gitlab-foss/spec/javascripts/pdf/index_spec.js
Lukas Eipert c2674c2d37
Move to pdf.js distributed with npm
pdf.js is available on npm. Importing the dependency from there instead
of vendoring it has certain benefits, e.g. the discoverability of
updates (especially security fixes).
2019-05-10 15:07:41 -05:00

61 lines
1.1 KiB
JavaScript

import Vue from 'vue';
import { GlobalWorkerOptions } from 'pdfjs-dist/build/pdf';
import workerSrc from 'pdfjs-dist/build/pdf.worker.min';
import PDFLab from '~/pdf/index.vue';
import { FIXTURES_PATH } from 'spec/test_constants';
const pdf = `${FIXTURES_PATH}/blob/pdf/test.pdf`;
GlobalWorkerOptions.workerSrc = workerSrc;
const Component = Vue.extend(PDFLab);
describe('PDF component', () => {
let vm;
const checkLoaded = done => {
if (vm.loading) {
setTimeout(() => {
checkLoaded(done);
}, 100);
} else {
done();
}
};
describe('without PDF data', () => {
beforeEach(done => {
vm = new Component({
propsData: {
pdf: '',
},
});
vm.$mount();
checkLoaded(done);
});
it('does not render', () => {
expect(vm.$el.tagName).toBeUndefined();
});
});
describe('with PDF data', () => {
beforeEach(done => {
vm = new Component({
propsData: {
pdf,
},
});
vm.$mount();
checkLoaded(done);
});
it('renders pdf component', () => {
expect(vm.$el.tagName).toBeDefined();
});
});
});