Skip to content
This repository has been archived by the owner on Oct 30, 2018. It is now read-only.

Commit

Permalink
Finish unit tests on storage events finality cron
Browse files Browse the repository at this point in the history
  • Loading branch information
Braydon Fuller committed Nov 20, 2017
1 parent 1205c5e commit 0b3edb2
Show file tree
Hide file tree
Showing 2 changed files with 356 additions and 31 deletions.
23 changes: 13 additions & 10 deletions lib/cron/storage-events.js
Original file line number Diff line number Diff line change
Expand Up @@ -176,40 +176,43 @@ StorageEventsCron.prototype._run = function(lastTimestamp, callback) {
};

StorageEventsCron.prototype.run = function() {
const name = 'StorageEventsFinality';
const name = 'StorageEventsFinalityCron';
const Cron = this.storage.models.CronJob;
Cron.lock(name, StorageEventsCron.MAX_RUN_TIME, (err, locked, res) => {
if (err) {
return log.error('StorageEvents lock failed, reason: %s', err.message);
return log.error('%s lock failed, reason: %s', name, err.message);
}
if (!locked) {
return log.warn('StorageEventsFinality already running');
return log.warn('%s already running', name);
}

log.info('Starting StorageEventsFinality cron job');
log.info('Starting %s cron job', name);

let lastTimestamp = new Date(0);
if (res.value && res.value.rawData && res.value.rawData.lastTimestamp) {
if (res &&
res.value &&
res.value.rawData &&
res.value.rawData.lastTimestamp) {
lastTimestamp = new Date(res.value.rawData.lastTimestamp);
} else {
log.warn('StorageEventsFinality cron has unknown lastTimestamp');
log.warn('%s cron has unknown lastTimestamp', name);
}

this._run(lastTimestamp, (err, _lastTimestamp) => {
if (err) {
let message = err.message ? err.message : 'unknown';
log.error('Error running StorageEventsFinality, reason: %s', message);
log.error('Error running %s, reason: %s', name, message);
}

log.info('Stopping StorageEventsFinality cron');
log.info('Stopping %s cron', name);
const rawData = {};
if (_lastTimestamp) {
rawData.lastTimestamp = _lastTimestamp;
rawData.lastTimestamp = _lastTimestamp.getTime();
}

Cron.unlock(name, rawData, (err) => {
if (err) {
return log.error('StorageEvents unlock failed, reason: %s', err.message);
return log.error('%s unlock failed, reason: %s', name, err.message);
}
});

Expand Down
Loading

0 comments on commit 0b3edb2

Please sign in to comment.