You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by ta...@apache.org on 2017/07/28 09:12:20 UTC

[41/43] incubator-weex git commit: * [html5] fix danger file wehn renaming files.

* [html5] fix danger file wehn renaming files.


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/83dd1e5e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/83dd1e5e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/83dd1e5e

Branch: refs/heads/0.16-dev
Commit: 83dd1e5e274a45c5d1b20f58fa14617e4ec32481
Parents: 30687e7
Author: MrRaindrop <te...@gmail.com>
Authored: Fri Jul 28 10:29:17 2017 +0800
Committer: MrRaindrop <te...@gmail.com>
Committed: Fri Jul 28 11:34:06 2017 +0800

----------------------------------------------------------------------
 dangerfile.js | 35 +++++++++++++++++++++--------------
 1 file changed, 21 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/83dd1e5e/dangerfile.js
----------------------------------------------------------------------
diff --git a/dangerfile.js b/dangerfile.js
index ac3a5a7..fed5a9b 100644
--- a/dangerfile.js
+++ b/dangerfile.js
@@ -281,9 +281,10 @@ function findReviewer(resolve, reject) {
   var fileToDeletedLinesMap = {}
   var fileToNormalLinesMap = {}
   var fileToBlamesMap = {}
+  var repoName = danger.github.pr.base.repo && danger.github.pr.base.repo.name
   github.pullRequests.get({
     owner: danger.github.pr.base.user.login,
-    repo: danger.github.pr.base.repo.name,
+    repo: repoName,
     number: danger.github.pr.number,
     headers: {Accept: 'application/vnd.github.diff'}
   }, function (err, result) {
@@ -296,7 +297,6 @@ function findReviewer(resolve, reject) {
       let repoURL = danger.github.pr.base.repo.html_url
       let fileName = file.replace(/^.*[\\\/]/, '')
       let blameURL = repoURL + '/blame/' + danger.github.pr.base.ref + '/' + file
-      // console.log("Getting blame html: " + blameURL)
       return getContent(blameURL)
     });
 
@@ -315,18 +315,25 @@ function getContent(url) {
   return new Promise((resolve, reject) => {
     // select http or https module, depending on reqested url
     const lib = url.startsWith('https') ? require('https') : require('http');
-    const request = lib.get(url, (response) => {
-      // handle http errors
-      if (response.statusCode < 200 || response.statusCode > 299) {
-         reject(new Error('Failed to load page, status code: ' + response.statusCode));
-       }
-      // temporary data holder
-      const body = [];
-      // on every content chunk, push it to the data array
-      response.on('data', (chunk) => body.push(chunk));
-      // we are done, resolve promise with those joined chunks
-      response.on('end', () => resolve(body.join('')));
-    });
+    const request = lib.get(url, (function (url) {
+      return (response) => {
+        // handle http errors
+        if (response.statusCode < 200 || response.statusCode > 299) {
+          if (response.statusCode === 404) {
+            // ignore this, probably a renamed file.
+            return resolve('')
+          }
+          reject(new Error('Failed to load page, status code: ' + response.statusCode + ', '
+            + ' url: ' + url));
+        }
+        // temporary data holder
+        const body = [];
+        // on every content chunk, push it to the data array
+        response.on('data', (chunk) => body.push(chunk));
+        // we are done, resolve promise with those joined chunks
+        response.on('end', () => resolve(body.join('')));
+      }
+    })(url));
     // handle connection errors of the request
     request.on('error', (err) => reject(err))
     })