Skip to content

Instantly share code, notes, and snippets.

@samuelgoldenbaum
Last active May 2, 2017 10:31
Show Gist options
  • Save samuelgoldenbaum/1c9c9e127d4599580b3b49905c371d33 to your computer and use it in GitHub Desktop.
Save samuelgoldenbaum/1c9c9e127d4599580b3b49905c371d33 to your computer and use it in GitHub Desktop.
Kue global type handler
var kue = require('kue');
describe('kue', function () { // mocha test runner
this.timeout(120000); // let it run for a while
it.only('can process the queue', function (done) {
const queue = kue.createQueue();
queue
.on('job enqueue', function (id, type) {
console.log('job %s got queued of type %s with id %s', id, type);
})
.on('job complete', function (id, result) {
console.log('job complete: ' + id);
});
queue.process('email', function (job, done) {
email(job.id, job.data, done);
});
var email = function(id, email, done) {
console.log('job: %s, sent to: %s number: %s', id, email.to, email.number);
done(null, {result: 'OK'});
};
for (var i = 0; i < 10; i++) {
queue
.create('email', {
title: 'welcome email for tj',
number: i,
to: 'tj@learnboost.com',
template: 'welcome-email'
})
.removeOnComplete(true)
.save();
}
//done(); // not calling done just to make sure there is enough time to process
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment