UNPKG

access-sniff

Version:

A node/iojs library & CLI for HTML_Codesniffer

61 lines (43 loc) 1.68 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = undefined; var _bluebird = require('bluebird'); var _bluebird2 = _interopRequireDefault(_bluebird); var _logger = require('../logger'); var _logger2 = _interopRequireDefault(_logger); var _messages = require('../messages'); var _messages2 = _interopRequireDefault(_messages); var _runners = require('../runners'); var _runners2 = _interopRequireDefault(_runners); var _helpers = require('../helpers'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var ErrorReporter = function ErrorReporter(file, error, deferredPromise) { _logger2.default.generalError('Testing ' + file + ' failed'); _logger2.default.generalError(error); deferredPromise.reject(error); }; var TestRunner = function TestRunner(file, options) { var deferredOutside = _bluebird2.default.pending(); var verbose = options.verbose; var fileContents = void 0; if (verbose) { _logger2.default.startMessage('Testing ' + file); } // Get file contents (0, _helpers.getFileContents)(file).then(function (data) { fileContents = data; return (0, _runners2.default)(file, options); }).then(function (data) { return Array.isArray(data) ? data : (0, _helpers.NormalizeOutput)(data); }).then(function (data) { return (0, _messages2.default)(data, file, fileContents, options); }).then(function (reportData) { return deferredOutside.resolve(reportData); }).catch(function (error) { return ErrorReporter(file, error, deferredOutside); }); return deferredOutside.promise; }; exports.default = TestRunner;