YUKI Hiroshi
null+****@clear*****
Mon Jan 28 13:38:55 JST 2013
YUKI Hiroshi 2013-01-28 13:38:55 +0900 (Mon, 28 Jan 2013) New Revision: f741aec00a8c1147c4c9d70784aef9d48e6d354b https://github.com/groonga/express-kotoumi/commit/f741aec00a8c1147c4c9d70784aef9d48e6d354b Log: Use internal receiver instead of Socket.IO to receive messages from the backend Modified files: lib/backend/connection.js test/backend-connection.test.js test/test-utils.js Modified: lib/backend/connection.js (+4 -16) =================================================================== --- lib/backend/connection.js 2013-01-28 13:30:28 +0900 (2fe8bea) +++ lib/backend/connection.js 2013-01-28 13:38:55 +0900 (7ac032f) @@ -7,8 +7,8 @@ */ var EventEmitter = require('events').EventEmitter; -var socketIo = require('socket.io'); var fluent = require('fluent-logger'); +var Receiver = requre('./receiver').Receiver; var DEFAULT_FLUENT_TAG = Connection.DEFAULT_FLUENT_TAG = @@ -58,24 +58,12 @@ Connection.prototype._initReceiver = function() { var receiver = this._params.receiver; if (!receiver) { - var server = this.receiveServer; - if (!server) { - server = require('http').createServer(function() {}); - server.listen(this.receivePort); - } - receiver = socketIo.listen(server); + receiver = new Receiver(this.receivePort); } this._receiver = receiver; - - this._receiver.sockets.on( - 'connection', - (function(socket) { - socket.on((this._params.tag || DEFAULT_FLUENT_TAG)+ '.message', - this._handleMessage.bind(this)); - }).bind(this) - ); - this._receiver.set('log level', 1); + this._receiver.on((this._params.tag || DEFAULT_FLUENT_TAG)+ '.message', + this._handleMessage.bind(this)); }; function isSuccess(code) { Modified: test/backend-connection.test.js (+1 -1) =================================================================== --- test/backend-connection.test.js 2013-01-28 13:30:28 +0900 (78a2e91) +++ test/backend-connection.test.js 2013-01-28 13:38:55 +0900 (233e888) @@ -21,7 +21,7 @@ suite('Connection', function() { sender: sender = utils.createMockedSender(), receiver: receiver = utils.createMockedReceiver() }); - receiver.triggerConnect('test'); + receiver.assertInitialized(); }); teardown(function() { Modified: test/test-utils.js (+9 -16) =================================================================== --- test/test-utils.js 2013-01-28 13:30:28 +0900 (2640899) +++ test/test-utils.js 2013-01-28 13:38:55 +0900 (373feb6) @@ -24,27 +24,20 @@ exports.createMockedSender = createMockedSender; function createMockedReceiver() { var mockedSockets; - var mockedReceiverInternal = nodemock; - var connactionCallbackController = {}; var messageCallbackController = {}; var receiver = { // mocking receiver - sockets: - (mockedSockets = nodemock.mock('on') - .takes('connection', function() {}) - .ctrl(1, connactionCallbackController)), - 'set': function(key, value) {}, - - // extra features as a mocked object - triggerConnect: function(tag) { - mockedSockets.assertThrows(); - var mockedSocket = nodemock.mock('on') - .takes(tag + '.message', function() {}) - .ctrl(1, messageCallbackController); - connactionCallbackController.trigger(mockedSocket); - mockedSocket.assertThrows(); + on: (mockedSockets = nodemock.mock('on') + .takes(tag + '.message', function() {}) + .ctrl(1, messageCallbackController), + assertInitialized: function() { + if (mockedSockets) { + mockedSockets.assertThrows(); + mockedSockets = undefined; + } }, emitMessage: function(message) { // simulate message from backend + this.assertInitialized(); messageCallbackController.trigger(message); } }; -------------- next part -------------- HTML����������������������������...다운로드