Add last test launch time in the new /api/runs route

This commit is contained in:
Gaël Métais 2021-03-10 00:54:50 +00:00
parent 36fc0f0e10
commit dc5bd2e71e
2 changed files with 12 additions and 2 deletions

View file

@ -227,7 +227,10 @@ var ApiController = function(app) {
// Counts all pending runs
app.get('/api/runs', function(req, res) {
res.setHeader('Content-Type', 'application/json');
res.send(JSON.stringify({pendingRuns: queue.length()}, null, 2));
res.send(JSON.stringify({
pendingRuns: queue.length(),
timeSinceLastTestStarted: queue.timeSinceLastTestStarted()
}, null, 2));
});
// Delete one run by id

View file

@ -6,7 +6,7 @@ function RunsQueue() {
'use strict';
var queue = [];
var lastTestTimestamp = 0;
this.push = function(runId) {
var deferred = Q.defer();
@ -21,6 +21,7 @@ function RunsQueue() {
runId: runId
});
lastTestTimestamp = Date.now();
deferred.resolve();
} else {
@ -31,6 +32,7 @@ function RunsQueue() {
deferred.notify(position);
},
itIsTimeCallback: function() {
lastTestTimestamp = Date.now();
deferred.resolve();
}
});
@ -78,6 +80,11 @@ function RunsQueue() {
this.length = function() {
return queue.length;
};
// Returns the number of seconds since the last test was launched
this.timeSinceLastTestStarted = function() {
return Math.round((Date.now() - lastTestTimestamp) / 1000);
};
}
module.exports = RunsQueue;