UNPKG

vasku

Version:

TVM-Solidity contract development framework

46 lines (45 loc) 1.57 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.test = void 0; const mocha_1 = __importDefault(require("mocha")); const se_1 = require("./common/se"); const compile_1 = require("./compile"); const glob_1 = require("glob"); const createGlobal_1 = require("../global/createGlobal"); async function test(config, patterns = [''], network = se_1.SE, compilation = true) { if (patterns.length === 0) patterns = ['']; /////////////////// // Create global // /////////////////// await (0, createGlobal_1.createGlobal)(config, network); /////////// // Up SE // /////////// await (0, se_1.upSeIfNotActive)(network, config.se); ///////////// // Compile // ///////////// if (compilation) await (0, compile_1.compile)(config); //////////////////// // Read tests set // //////////////////// const tests = new Set(); patterns.forEach((value) => { const pattern = `${process.cwd()}/${config.paths.tests}/**/*${value}*`; const files = (0, glob_1.globSync)(pattern, { nodir: true }); files.forEach((value) => { tests.add(value); }); }); ////////////// // Run test // ////////////// const mocha = new mocha_1.default({ timeout: config.timeout }); for (const test of tests.keys()) mocha.addFile(test); mocha.run((fail) => process.exit(fail)); } exports.test = test;