Added integration for the bus

- Added a new file that exercises the subscribe/unsubscribe/close methods with a test service
- Removed a duplicate call to inherit
This commit is contained in:
Chris Kleeschulte 2015-09-09 11:08:55 -04:00
parent 13b5c065f3
commit 65e09ef281
2 changed files with 74 additions and 2 deletions

View File

@ -0,0 +1,74 @@
'use strict';
var Bus = require('../lib/bus');
var util = require('util');
var BaseService = require('../lib/service');
function TestService() {
this.subscriptions = {};
this.subscriptions['test/test'] = {};
}
util.inherits(TestService, BaseService);
TestService.prototype.subscribe = function(name, emitter) {
emitter.emit('Subscribe');
};
TestService.prototype.unsubscribe = function(name, emitter) {
emitter.emit('Unsubscribe');
};
TestService.prototype.getPublishEvents = function() {
return [
{
name: 'test/test',
scope: this,
subscribe: this.subscribe.bind(this, 'test/test'),
unsubscribe: this.unsubscribe.bind(this, 'test/test')
}
];
}
describe('Bus Functionality', function() {
var params;
before(function() {
params = {
node : {
services : [
new TestService()
]
}
}
});
after(function(done) {
done();
});
it('#subscribe', function(done) {
var bus = new Bus(params);
bus.on('Subscribe', function() {
done();
});
bus.subscribe('test/test');
});
it('#unsubscribe', function(done) {
var bus = new Bus(params);
bus.on('Unsubscribe', function() {
done();
});
bus.subscribe('test/test');
bus.unsubscribe('test/test');
});
it('#close', function(done) {
var bus = new Bus(params);
bus.on('Unsubscribe', function() {
done();
});
bus.close();
});
});

View File

@ -41,8 +41,6 @@ function Node(config) {
util.inherits(Node, EventEmitter);
util.inherits(Node, EventEmitter);
Node.prototype._setNetwork = function(config) {
if (config.network === 'testnet') {
this.network = Networks.get('testnet');