aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Merwin <[email protected]>2015-07-16 18:22:13 -0700
committerNick Merwin <[email protected]>2015-07-16 18:22:13 -0700
commitcdff9ff2ad276a33ad8710042d942a8e30e043bb (patch)
tree637cf9d9c852cb245519e1048ad331bc33ed2109
parent64653c6df1d63065b0fb0b4984ac4c88f809b068 (diff)
parent4344c189726451016e86627a0c11620ce420cdaf (diff)
downloadnode-coveralls-cdff9ff2ad276a33ad8710042d942a8e30e043bb.tar.xz
node-coveralls-cdff9ff2ad276a33ad8710042d942a8e30e043bb.zip
Merge pull request #101 from ejlangev/support-pull-requests
Pass CI_PULL_REQUEST through to coveralls if it is set
-rw-r--r--lib/convertLcovToCoveralls.js3
-rw-r--r--lib/getOptions.js6
-rw-r--r--test/convertLcovToCoveralls.js2
-rw-r--r--test/getOptions.js11
4 files changed, 22 insertions, 0 deletions
diff --git a/lib/convertLcovToCoveralls.js b/lib/convertLcovToCoveralls.js
index 3f604e1..8b89f26 100644
--- a/lib/convertLcovToCoveralls.js
+++ b/lib/convertLcovToCoveralls.js
@@ -51,6 +51,9 @@ var convertLcovToCoveralls = function(input, options, cb){
if (options.repo_token) {
postJson.repo_token = options.repo_token;
}
+ if (options.service_pull_request) {
+ postJson.service_pull_request = options.service_pull_request;
+ }
parsed.forEach(function(file){
postJson.source_files.push(convertLcovFileObject(file, filepath));
});
diff --git a/lib/getOptions.js b/lib/getOptions.js
index eab67f4..42a3de1 100644
--- a/lib/getOptions.js
+++ b/lib/getOptions.js
@@ -9,6 +9,12 @@ var getBaseOptions = function(cb){
var git_commit = process.env.COVERALLS_GIT_COMMIT;
var git_branch = process.env.COVERALLS_GIT_BRANCH;
+ var match = (process.env.CI_PULL_REQUEST || "").match(/(\d+)$/);
+
+ if (match) {
+ options.service_pull_request = match[1];
+ }
+
if (process.env.TRAVIS){
options.service_name = 'travis-ci';
options.service_job_id = process.env.TRAVIS_JOB_ID;
diff --git a/test/convertLcovToCoveralls.js b/test/convertLcovToCoveralls.js
index 6a64eda..24fa6c8 100644
--- a/test/convertLcovToCoveralls.js
+++ b/test/convertLcovToCoveralls.js
@@ -29,6 +29,7 @@ describe("convertLcovToCoveralls", function(){
process.env.COVERALLS_SERVICE_NAME = "SERVICE_NAME";
process.env.COVERALLS_SERVICE_JOB_ID = "SERVICE_JOB_ID";
process.env.COVERALLS_REPO_TOKEN = "REPO_TOKEN";
+ process.env.CI_PULL_REQUEST = "https://github.com/fake/fake/pulls/123";
getOptions(function(err, options){
var lcovpath = __dirname + "/../fixtures/onefile.lcov";
@@ -37,6 +38,7 @@ describe("convertLcovToCoveralls", function(){
options.filepath = libpath;
convertLcovToCoveralls(input, options, function(err, output){
should.not.exist(err);
+ output.service_pull_request.should.equal("123");
//output.git.should.equal("GIT_HASH");
done();
});
diff --git a/test/getOptions.js b/test/getOptions.js
index 8a77708..356fb96 100644
--- a/test/getOptions.js
+++ b/test/getOptions.js
@@ -115,6 +115,9 @@ describe("getOptions", function(){
it ("should set service_name if it exists", function(done){
testServiceName(getOptions, done);
});
+ it("should set service_pull_request if it exists", function(done){
+ testServicePullRequest(getOptions, done);
+ });
it ("should set service_name and service_job_id if it's running on travis-ci", function(done){
testTravisCi(getOptions, done);
});
@@ -246,6 +249,14 @@ var testServiceName = function(sut, done){
});
};
+var testServicePullRequest = function(sut, done){
+ process.env.CI_PULL_REQUEST = "https://github.com/fake/fake/pulls/123";
+ sut(function(err, options){
+ options.service_pull_request.should.equal("123");
+ done();
+ });
+};
+
var testTravisCi = function(sut, done){
process.env.TRAVIS = "TRUE";
process.env.TRAVIS_JOB_ID = "1234";