UNPKG

@testim/testim-cli

Version:

Command line interface for running Testing on you CI

95 lines (75 loc) 5.2 kB
'use strict'; var _getIterator = require('babel-runtime/core-js/get-iterator')['default']; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; Object.defineProperty(exports, '__esModule', { value: true }); var _path = require('path'); var _path2 = _interopRequireDefault(_path); var _fs = require('fs'); var _fs2 = _interopRequireDefault(_fs); var COMMAND_TYPES = ['protocol', 'commands']; /** * helper to find all implemented commands * * @returns {String[]} list of implemented command names */ var getImplementedCommands = function getImplementedCommands() { var commands = {}; var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = _getIterator(COMMAND_TYPES), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var commandType = _step.value; var dir = _path2['default'].join(__dirname, '..', commandType); var files = _fs2['default'].readdirSync(dir); var _iteratorNormalCompletion2 = true; var _didIteratorError2 = false; var _iteratorError2 = undefined; try { for (var _iterator2 = _getIterator(files), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { var filename = _step2.value; var commandName = filename.slice(0, -3); /** * addCommand only there for documentation purposes */ if (commandName === 'addCommand') { continue; } commands[commandName] = require(_path2['default'].join(dir, commandName)); } } catch (err) { _didIteratorError2 = true; _iteratorError2 = err; } finally { try { if (!_iteratorNormalCompletion2 && _iterator2['return']) { _iterator2['return'](); } } finally { if (_didIteratorError2) { throw _iteratorError2; } } } } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator['return']) { _iterator['return'](); } } finally { if (_didIteratorError) { throw _iteratorError; } } } return commands; }; exports['default'] = getImplementedCommands; module.exports = exports['default']; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9oZWxwZXJzL2dldEltcGxlbWVudGVkQ29tbWFuZHMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztvQkFBaUIsTUFBTTs7OztrQkFDUixJQUFJOzs7O0FBRW5CLElBQU0sYUFBYSxHQUFHLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFBOzs7Ozs7O0FBTzlDLElBQUksc0JBQXNCLEdBQUcsU0FBekIsc0JBQXNCLEdBQWU7QUFDckMsUUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFBOzs7Ozs7O0FBRWpCLDBDQUF3QixhQUFhLDRHQUFFO2dCQUE5QixXQUFXOztBQUNoQixnQkFBSSxHQUFHLEdBQUcsa0JBQUssSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUE7QUFDakQsZ0JBQUksS0FBSyxHQUFHLGdCQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQTs7Ozs7OztBQUUvQixtREFBcUIsS0FBSyxpSEFBRTt3QkFBbkIsUUFBUTs7QUFDYix3QkFBSSxXQUFXLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTs7Ozs7QUFLdkMsd0JBQUksV0FBVyxLQUFLLFlBQVksRUFBRTtBQUM5QixpQ0FBUTtxQkFDWDs7QUFFRCw0QkFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxrQkFBSyxJQUFJLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUE7aUJBQy9EOzs7Ozs7Ozs7Ozs7Ozs7U0FDSjs7Ozs7Ozs7Ozs7Ozs7OztBQUVELFdBQU8sUUFBUSxDQUFBO0NBQ2xCLENBQUE7O3FCQUVjLHNCQUFzQiIsImZpbGUiOiJnZXRJbXBsZW1lbnRlZENvbW1hbmRzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCBmcyBmcm9tICdmcydcblxuY29uc3QgQ09NTUFORF9UWVBFUyA9IFsncHJvdG9jb2wnLCAnY29tbWFuZHMnXVxuXG4vKipcbiAqIGhlbHBlciB0byBmaW5kIGFsbCBpbXBsZW1lbnRlZCBjb21tYW5kc1xuICpcbiAqIEByZXR1cm5zIHtTdHJpbmdbXX0gbGlzdCBvZiBpbXBsZW1lbnRlZCBjb21tYW5kIG5hbWVzXG4gKi9cbmxldCBnZXRJbXBsZW1lbnRlZENvbW1hbmRzID0gZnVuY3Rpb24gKCkge1xuICAgIGxldCBjb21tYW5kcyA9IHt9XG5cbiAgICBmb3IgKGxldCBjb21tYW5kVHlwZSBvZiBDT01NQU5EX1RZUEVTKSB7XG4gICAgICAgIGxldCBkaXIgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4nLCBjb21tYW5kVHlwZSlcbiAgICAgICAgbGV0IGZpbGVzID0gZnMucmVhZGRpclN5bmMoZGlyKVxuXG4gICAgICAgIGZvciAobGV0IGZpbGVuYW1lIG9mIGZpbGVzKSB7XG4gICAgICAgICAgICBsZXQgY29tbWFuZE5hbWUgPSBmaWxlbmFtZS5zbGljZSgwLCAtMylcblxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBhZGRDb21tYW5kIG9ubHkgdGhlcmUgZm9yIGRvY3VtZW50YXRpb24gcHVycG9zZXNcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKGNvbW1hbmROYW1lID09PSAnYWRkQ29tbWFuZCcpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb21tYW5kc1tjb21tYW5kTmFtZV0gPSByZXF1aXJlKHBhdGguam9pbihkaXIsIGNvbW1hbmROYW1lKSlcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjb21tYW5kc1xufVxuXG5leHBvcnQgZGVmYXVsdCBnZXRJbXBsZW1lbnRlZENvbW1hbmRzXG4iXX0=