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.
svelte/test/test.ts

67 lines
2.0 KiB

import './ambient';
import * as assert$1 from 'assert';
import { readFileSync } from 'fs';
export const assert = (assert$1 as unknown) as typeof assert$1 & { htmlEqual: (actual, expected, message?) => void };
const { glob } = require('./tiny-glob.ts');
// require('./setup.ts');
// // bind internal to jsdom
// require('./helpers.ts');
// require('../internal');
require('source-map-support').install();
process.env.TEST = true;
// require.extensions['.js'] = function (module, filename) {
// const exports = [];
// let code = readFileSync(filename, 'utf-8')
// .replace(/^import \* as (\w+) from ['"]([^'"]+)['"];?/gm, 'var $1 = require("$2");')
// .replace(/^import (\w+) from ['"]([^'"]+)['"];?/gm, 'var {default: $1} = require("$2");')
// .replace(/^import {([^}]+)} from ['"](.+)['"];?/gm, 'var {$1} = require("$2");')
// .replace(/^export default /gm, 'exports.default = ')
// .replace(/^export (const|let|var|class|function) (\w+)/gm, (_match, type, name) => {
// exports.push(name);
// return `${type} ${name}`;
// })
// .replace(/^export \{([^}]+)\}(?: from ['"]([^'"]+)['"];?)?/gm, (_match, names, source) => {
// names
// .split(',')
// .filter(Boolean)
// .forEach((name) => {
// exports.push(name);
// });
// return source ? `const { ${names} } = require("${source}");` : '';
// })
// .replace(/^export function (\w+)/gm, 'exports.$1 = function $1');
// exports.forEach((name) => {
// code += `\nexports.${name} = ${name};`;
// });
// try {
// return module._compile(code, filename);
// } catch (err) {
// console.log(code);
// throw err;
// }
// };
import './helpers';
import '../internal';
console.clear();
const test_folders = glob('*/index.ts', { cwd: 'test' });
const solo_folders = test_folders.filter((folder) => /\.solo/.test(folder));
if (solo_folders.length) {
if (process.env.CI) {
throw new Error('Forgot to remove `.solo` from test');
}
solo_folders.forEach((name) => require('./' + name));
} else {
test_folders.forEach((name) => require('./' + name));
}