UNPKG

sdg-rpc

Version:

pomelo ts rpc

40 lines (33 loc) 951 B
import Mocha from 'mocha'; import fs from 'fs'; import path from 'path'; // require('ts-mocha'); process.env.TS_NODE_PROJECT = './tsconfig.json'; // @ts-ignore const mocha = new Mocha(); // 忽略目录、文件,执行特定的脚本 const ignoreDir: string[] = []; const ignoreFile: string[] = []; // 加载目录下所有的测试脚本 const readDir = (dir: string, cb: Function) => { fs.readdirSync(dir).map(file => { const fullName = path.resolve(dir, file); const stat = fs.statSync(fullName); if (stat.isDirectory() && !ignoreDir.includes(file)) { readDir(fullName, cb); } else if (!ignoreFile.includes(file)) { cb(fullName); } }); }; readDir(path.resolve(__dirname), file => { // 默认规范,只有test.ts后缀的才是测试脚本 if (file.endsWith('.test.ts')) { mocha.addFile(file); } }); mocha.run((failures) => { process.on('exit', () => { process.exit(failures); }); });