帆软决策平台数据连接界面库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

34 lines
985 B

const JsdomEnvironment = require('jest-environment-jsdom');
const path = require('path');
const fs = require('fs');
class FineUiEnvironment extends JsdomEnvironment {
async setup(...args) {
await super.setup(args);
const document = this.dom.window.document;
document.createElement('body');
[
'../node_modules/fineui/dist/fineui.js',
'../node_modules/fineui-materials/docs/materials.js',
'../config/fineui.prepare.js',
'./fineui.setup.js',
].forEach(scriptRelativePath => {
writeScript(document, scriptRelativePath);
});
return Promise.resolve();
}
}
function writeScript(document, scriptRelativePath) {
const scriptEl = document.createElement('script');
scriptEl.text = fs.readFileSync(path.resolve(__dirname, scriptRelativePath), {
encoding: 'utf8',
});
document.body.appendChild(scriptEl);
}
module.exports = FineUiEnvironment;