amis2/packages/office-viewer/__tests__/snapShotTest.ts
吴多益 0f97e378d9
chore: 换一下 office-viewer 包名 (#7321)
* chore: 换一下 office-viewer 包名

* 恢复误改的文件
2023-07-03 14:31:27 +08:00

30 lines
914 B
TypeScript

import fs from 'fs';
import path from 'path';
import XMLPackageParser from '../src/package/XMLPackageParser';
import Word from '../src/Word';
export function createWord(fileName: string, data: any) {
const xmlContent = new Uint8Array(
fs.readFileSync(path.join(__dirname, fileName), null).buffer
);
if (fileName.endsWith('.xml')) {
return new Word(xmlContent, {}, new XMLPackageParser());
}
return new Word(xmlContent, {});
}
export async function snapShotTest(filePath: string) {
// jsdom 不支持这个函数
global.URL.createObjectURL = jest.fn(x => 'blob:http://localhost/mock');
document.body.innerHTML = `
<div id="root"></div>
`;
const root = document.getElementById('root')!;
const word = createWord(filePath, {});
await word.render(root);
// 样式后续单独测试,不然太多冗余了
expect(root.getElementsByTagName('article')[0]).toMatchSnapshot();
}