push
travis-ci
19 of 19 new or added lines in 1 file covered. (100.0%)
707 of 730 relevant lines covered (96.85%)
61.93 hits per line
1 |
'use strict';
|
1✔ |
2 |
|
1✔ |
3 |
const https = require('https');
|
1✔ |
4 |
|
1✔ |
5 |
module.exports = (url, notJSON) => { |
1✔ |
6 |
|
1✔ |
7 |
return new Promise((resolve, reject) => { |
1✔ |
8 |
|
1✔ |
9 |
const req = https.get(url, (res) => { |
1✔ |
10 |
|
1✔ |
11 |
if (res.statusCode < 200 || res.statusCode >= 300) { |
× |
12 |
|
1✔ |
13 |
return reject(new Error(`statusCode=${ res.statusCode }`)); |
× |
14 |
} |
1✔ |
15 |
|
1✔ |
16 |
let body = []; |
15✔ |
17 |
|
1✔ |
18 |
res.on('data', (chunk) => {
|
15✔ |
19 |
|
1✔ |
20 |
body.push(chunk); |
1✔ |
21 |
}); |
1✔ |
22 |
|
1✔ |
23 |
res.on('end', () => {
|
15✔ |
24 |
|
1✔ |
25 |
try {
|
1✔ |
26 |
if (notJSON) {
|
× |
27 |
body = Buffer.concat(body).toString(); |
× |
28 |
} |
1✔ |
29 |
else {
|
1✔ |
30 |
body = JSON.parse(Buffer.concat(body).toString()); |
15✔ |
31 |
} |
1✔ |
32 |
} |
1✔ |
33 |
catch (e) {
|
1✔ |
34 |
|
1✔ |
35 |
reject(e); |
× |
36 |
} |
1✔ |
37 |
|
1✔ |
38 |
resolve(body); |
15✔ |
39 |
}); |
1✔ |
40 |
}); |
1✔ |
41 |
|
1✔ |
42 |
req.on('error', (err) => {
|
15✔ |
43 |
|
1✔ |
44 |
reject(err); |
× |
45 |
}); |
1✔ |
46 |
|
1✔ |
47 |
req.end(); |
15✔ |
48 |
}); |
1✔ |
49 |
}; |
1✔ |