Files
connectai/test_v2_full.js
T

19 lines
872 B
JavaScript

const Module = require('module');
const originalRequire = Module.prototype.require;
Module.prototype.require = function(request) {
if (request === 'vscode') return { window: {}, workspace: {}, Uri: {}, EventEmitter: class {} };
return originalRequire.apply(this, arguments);
};
const fs = require('fs');
const connectAI = require('./out/extension');
const htmlSource = connectAI.ConnectAIPanel.prototype._getHtml.toString();
const htmlBodyMatch = htmlSource.match(/return\s+`([\s\S]*?)`/);
if (htmlBodyMatch) {
const evaluateTemplateString = new Function('return `' + htmlBodyMatch[1] + '`');
const evaluatedHtml = evaluateTemplateString();
const {JSDOM} = require('jsdom');
try { new JSDOM(evaluatedHtml, {runScripts:'dangerously'}); console.log('JSDOM FULL HTML OK'); } catch(e) { console.error('EVAL ERR:', e.stack); }
} else {
console.log('no match');
}