UNPKG

1.46 kBJavaScriptView Raw
1(function (nock, chai, Promise) {
2 'use strict';
3
4 var expect = chai.expect;
5 chai.use(require('chai-as-promised'));
6 chai.use(require('dirty-chai'));
7 chai.config.includeStack = true;
8
9 // Disable outgoing connections to non-mocked endpoints.
10 nock.disableNetConnect();
11
12 //Setup mock for the Codacy API endpoint.
13 function setupMockEndpoint(token, commitId, bodyValidator, statusCode) {
14 return new Promise(function (resolve) {
15 expect(token).to.be.ok();
16 expect(commitId).to.be.ok();
17 expect(bodyValidator).to.be.ok();
18
19 return resolve(nock('https://api.codacy.com')
20 .post('/2.0/coverage/' + commitId + '/javascript', function (body) {
21 var result = bodyValidator.validate(body);
22 return result.error ? false : true;
23 })
24 .reply(statusCode || 200));
25 });
26 }
27
28 module.exports = {
29 setupMockEndpoint: setupMockEndpoint,
30 chai: chai,
31 clearEnvironmentVariables: function () {
32 process.env.CODACY_GIT_COMMIT = '';
33 process.env.TRAVIS_COMMIT = '';
34 process.env.DRONE_COMMIT = '';
35 process.env.GIT_COMMIT = '';
36 process.env.CIRCLE_SHA1 = '';
37 process.env.CI_COMMIT_ID = '';
38 process.env.WERCKER_GIT_COMMIT = '';
39 }
40 };
41}(require('nock'), require('chai'), require('bluebird')));
\No newline at end of file