UNPKG

demos

Version:

38 lines (27 loc) 884 B
#!/usr/bin/env node var fs = require('fs'); var path = require('path'); var exec = require('child_process').exec; var TIMEOUT = 20000; var tests = fs.readdirSync(__dirname).filter(function(file) { return !fs.statSync(path.join(__dirname,file)).isDirectory(); }).filter(function(file) { return /^test(-|_|\.).*\.js$/i.test(file); }).sort(); var cnt = 0; var all = tests.length; var loop = function() { var next = tests.shift(); if (!next) return console.log('\033[32m[ok]\033[39m all ok'); exec('node '+path.join(__dirname,next), {timeout:TIMEOUT}, function(err) { cnt++; if (err) { console.error('\033[31m[err]\033[39m '+cnt+'/'+all+' - '+next); console.error('\n '+(''+err.stack).split('\n').join('\n ')+'\n'); return process.exit(1); } console.log('\033[32m[ok]\033[39m '+cnt+'/'+all+' - '+next); setTimeout(loop, 100); }); }; loop();