Skip to content

Commit 0b42a64

Browse files
committed
Bug fixes to coverage and build endpoints
1 parent 179b05e commit 0b42a64

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

index.js

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -109,10 +109,10 @@ srv.get('/coverage/:repo/:branch', async (req, res) => {
109109
var report = {'schemaVersion': 1, 'label': 'coverage'};
110110
try { // Try to load coverage record
111111
record = await loadTestRecords(id);
112-
if (typeof record == 'undefined' || record['coverage'] == []) {throw 404}; // Test not found for commit
112+
if (typeof record == 'undefined' || record['coverage'] == '') {throw 404}; // Test not found for commit
113113
if (record['status'] === 'error') {throw 500}; // Test found for commit but errored
114114
report['message'] = Math.round(record['coverage']*100)/100 + '%';
115-
report['color'] = (record['coverage'] > 75 ? 'green' : 'red');
115+
report['color'] = (record['coverage'] > 75 ? 'brightgreen' : 'red');
116116
} catch (err) { // No coverage value
117117
report['message'] = (err === 404 ? 'pending' : 'unknown');
118118
report['color'] = 'orange';
@@ -121,6 +121,7 @@ srv.get('/coverage/:repo/:branch', async (req, res) => {
121121
for (let job of queue.pile) { if (job.id === id) { onPile = true; break; } };
122122
if (!onPile) { // Add test to queue
123123
queue.add({
124+
skipPost : true,
124125
sha: id,
125126
owner: 'cortex-lab', // @todo Generalize repo owner
126127
repo: req.params.repo,
@@ -156,7 +157,7 @@ srv.get('/status/:repo/:branch', async (req, res) => {
156157
record = await loadTestRecords(id);
157158
if (typeof record == 'undefined' || record['status'] == '') {throw 404}; // Test not found for commit
158159
report['message'] = (record['status'] === 'success' ? 'passing' : 'failing');
159-
report['color'] = (record['status'] === 'success' ? 'green' : 'red');
160+
report['color'] = (record['status'] === 'success' ? 'brightgreen' : 'red');
160161
} catch (err) { // No coverage value
161162
report['message'] = (err === 404 ? 'pending' : 'unknown');
162163
report['color'] = 'orange';
@@ -165,6 +166,7 @@ srv.get('/status/:repo/:branch', async (req, res) => {
165166
for (let job of queue.pile) { if (job.id === id) { onPile = true; break; } };
166167
if (!onPile) { // Add test to queue
167168
queue.add({
169+
skipPost: true,
168170
sha: id,
169171
owner: 'cortex-lab', // @todo Generalize repo owner
170172
repo: req.params.repo,
@@ -238,6 +240,7 @@ queue.process(async (job, done) => {
238240
*/
239241
queue.on('finish', job => { // On job end post result to API
240242
console.log(`Job ${job.id} complete`)
243+
if (job.data.skipPost === true) { return; }
241244
request("POST /repos/:owner/:repo/statuses/:sha", {
242245
owner: job.data['owner'],
243246
repo: job.data['repo'],
@@ -259,7 +262,7 @@ queue.on('finish', job => { // On job end post result to API
259262
*/
260263
queue.on('complete', job => { // On job end post result to API
261264
console.log('Updating coverage for job #' + job.id)
262-
Coverage('./CoverageResults.xml', job.data.repo, job.data.id, obj => {
265+
Coverage('./CoverageResults.xml', job.data.repo, job.data.sha, obj => {
263266
// Digest and save percentage coverage
264267
let misses = 0, hits = 0;
265268
for (let file of obj.source_files) {
@@ -269,7 +272,7 @@ queue.on('complete', job => { // On job end post result to API
269272
// Load data and save
270273
let records = JSON.parse(fs.readFileSync('./db.json', 'utf8'));
271274
if (!Array.isArray(records)) records = [records]; // Ensure array
272-
for (let o of records) { if (o.commit === job.data.sha) {o.coverage = hits / (hits + misses) * 100}; break; } // Add percentage
275+
for (let o of records) { if (o.commit === job.data.sha) {o.coverage = hits / (hits + misses) * 100; break; }} // Add percentage
273276
// Save object
274277
fs.writeFile('./db.json', JSON.stringify(records), function(err) {
275278
if (err) { console.log(err); }

0 commit comments

Comments
 (0)