qunit-harness
Version:
A library for running qunit tests on a local machine and in the SauceLabs environment.
75 lines (53 loc) • 2.49 kB
JavaScript
;
var _regeneratorRuntime = require('babel-runtime/regenerator').default;
var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default').default;
var _interopRequireWildcard = require('babel-runtime/helpers/interop-require-wildcard').default;
exports.__esModule = true;
var _pinkie = require('pinkie');
var _pinkie2 = _interopRequireDefault(_pinkie);
var _path = require('path');
var _path2 = _interopRequireDefault(_path);
var _fs = require('./fs');
var fs = _interopRequireWildcard(_fs);
exports.default = function callee$0$0(dirPath) {
var dirs, files, processDirItem, dirItems;
return _regeneratorRuntime.async(function callee$0$0$(context$1$0) {
while (1) switch (context$1$0.prev = context$1$0.next) {
case 0:
processDirItem = function processDirItem(item) {
var subpath, stats;
return _regeneratorRuntime.async(function processDirItem$(context$2$0) {
while (1) switch (context$2$0.prev = context$2$0.next) {
case 0:
subpath = _path2.default.join(dirPath, item);
context$2$0.next = 3;
return _regeneratorRuntime.awrap(fs.stat(subpath));
case 3:
stats = context$2$0.sent;
if (stats.isDirectory()) dirs.push(item);
if (subpath.indexOf('-test.js') > -1) files.push(item);
case 6:
case 'end':
return context$2$0.stop();
}
}, null, this);
};
dirs = [];
files = [];
context$1$0.next = 5;
return _regeneratorRuntime.awrap(fs.readdir(dirPath));
case 5:
dirItems = context$1$0.sent;
context$1$0.next = 8;
return _regeneratorRuntime.awrap(_pinkie2.default.all(dirItems.map(processDirItem)));
case 8:
dirs.sort();
files.sort();
return context$1$0.abrupt('return', { dirs: dirs, files: files });
case 11:
case 'end':
return context$1$0.stop();
}
}, null, this);
};
module.exports = exports.default;