1 | (function (parser, reporter, getGitData, logger, Promise, util) {
|
2 | 'use strict';
|
3 | module.exports = function (input, opts) {
|
4 | opts = opts || {};
|
5 |
|
6 | var token = opts.token || process.env.CODACY_PROJECT_TOKEN || process.env.CODACY_REPO_TOKEN;
|
7 | var commit = opts.commit;
|
8 | var format = opts.format || 'lcov';
|
9 | var pathPrefix = opts.prefix || '';
|
10 | var loggerImpl;
|
11 |
|
12 | loggerImpl = logger({
|
13 | verbose: opts.verbose,
|
14 | debug: opts.debug
|
15 | });
|
16 |
|
17 | if (!token) {
|
18 | return Promise.reject(new Error('Token is required'));
|
19 | }
|
20 |
|
21 | loggerImpl.info(util.format('Handling input for: token [%j], commitId [%j], endpoint [%j], format [%j], path prefix [%j], verbose [%j], debug [%j]',
|
22 | token, commit, opts.endpoint, format, pathPrefix, opts.verbose, opts.debug));
|
23 |
|
24 |
|
25 | return Promise.all([parser.getParser(format).parse(pathPrefix, input), getGitData.getCommitId(commit)]).spread(function (parsedCoverage, commitId) {
|
26 |
|
27 | loggerImpl.trace(parsedCoverage);
|
28 | loggerImpl.debug('Sending coverage');
|
29 | return reporter({
|
30 | endpoint: opts.endpoint
|
31 | }).sendCoverage(token, commitId, parsedCoverage);
|
32 | });
|
33 | };
|
34 | }(require('./coverageParser'), require('./reporter'), require('./getGitData'), require('./logger'), require('bluebird'), require('util')));
|