1
0
mirror of https://github.com/mgerb/mywebsite synced 2026-01-12 02:42:48 +00:00
Files

56 lines
1.5 KiB
JavaScript

'use strict';
var chai = require('chai');
var expect = chai.expect;
var createMessageQueue = require('../src/message-queue');
chai.config.includeStack = true;
describe('Message Queue Tests', function() {
var queue;
beforeEach(function() {
queue = createMessageQueue();
});
it('Should Add item to queue', function() {
expect(queue._instantQueue).to.deep.equal([]);
queue.insert('value1');
expect(queue._instantQueue).to.deep.equal(['value1']);
queue.insert('value2');
expect(queue._instantQueue).to.deep.equal(['value2', 'value1']);
});
it('Should Pull items from a queue', function(done) {
queue.insert('value1');
queue.insert('value2');
queue.get(function(value) {
expect(value).to.be.equal('value1');
queue.get(function(value) {
expect(value).to.be.equal('value2');
expect(queue._instantQueue).to.deep.equal([]);
done();
});
});
});
it('Should Add delayed items', function(done) {
queue.insert('value1', 300);
queue.insert('value2', 100);
queue.insert('value3');
queue.get(function(value) {
expect(value).to.be.equal('value3');
queue.get(function(value) {
expect(value).to.be.equal('value2');
queue.get(function(value) {
expect(value).to.be.equal('value1');
done();
});
});
});
});
});