1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- /*
- Copyright 2012-2015, Yahoo Inc.
- Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
- */
- var Reporter = require('./lib/reporter');
- /**
- * @module Exports
- */
- module.exports = {
- config: require('./lib/config'),
- cover: require('./lib/run-cover'),
- reports: require('./lib/run-reports'),
- instrument: require('./lib/run-instrument'),
- checkCoverage: require('./lib/run-check-coverage'),
- createReporter: function (cfg, opts) {
- return new Reporter(cfg, opts);
- },
- /**
- * asynchronously returns a function that can match filesystem paths.
- * The function returned in the callback may be passed directly as a `matcher`
- * to the functions in the `hook` module.
- *
- * When no options are passed, the match function is one that matches all JS
- * files under the current working directory except ones under `node_modules`
- *
- * Match patterns are `ant`-style patterns processed using the `fileset` library.
- * Examples not provided due to limitations in putting asterisks inside
- * jsdoc comments. Please refer to tests under `test/other/test-matcher.js`
- * for examples.
- *
- * @method matcherFor
- * @static
- * @param {Object} options Optional. Lookup options.
- * @param {String} [options.root] the root of the filesystem tree under
- * which to match files. Defaults to `process.cwd()`
- * @param {Array} [options.includes] an array of include patterns to match.
- * Defaults to all JS files under the root.
- * @param {Array} [options.excludes] and array of exclude patterns. File paths
- * matching these patterns will be excluded by the returned matcher.
- * Defaults to files under `node_modules` found anywhere under root.
- * @param {Function(err, matchFunction)} callback The callback that is
- * called with two arguments. The first is an `Error` object in case
- * of errors or a falsy value if there were no errors. The second
- * is a function that may be use as a matcher.
- */
- matcherFor: require('./lib/file-matcher').matcherFor,
- filesFor: require('./lib/file-matcher').filesFor
- };
- // export all the istanbul libraries as is so users don't have to take 5 deps
- // that are potentially inconsistent
- var DASH_PATTERN = /-([a-z])/g;
- function camelize(word) {
- return word.replace(DASH_PATTERN, function (match, lch) {
- return lch.toUpperCase();
- });
- }
- [ 'coverage', 'hook', 'instrument', 'report', 'source-maps'].forEach(function (k) {
- var mod = 'lib-' + k,
- prop = camelize(mod);
- module.exports[prop] = require('istanbul-' + mod);
- });
- module.exports.reportsImpl = require('istanbul-reports');
|