mirror of
https://github.com/socketio/socket.io.git
synced 2026-04-30 03:00:39 -04:00
Re-enabled serving static files test
Changed handling of options so that polling defaults are in the respective transports Switched to comma-first style
This commit is contained in:
2
Makefile
2
Makefile
@@ -1,2 +1,2 @@
|
||||
test:
|
||||
./support/expresso/bin/expresso -I lib $(TESTFLAGS) tests/*
|
||||
./support/expresso/bin/expresso -I lib $(TESTFLAGS) tests/*.js
|
||||
@@ -4,15 +4,16 @@ var urlparse = require('url').parse
|
||||
, options = require('./utils').options
|
||||
, encode = require('./utils').encode
|
||||
, decode = require('./utils').decode
|
||||
, merge = require('./utils').merge;
|
||||
|
||||
Client = module.exports = function(listener, req, res, options, head){
|
||||
var Client = module.exports = function(listener, req, res, options, head){
|
||||
process.EventEmitter.call(this);
|
||||
this.listener = listener;
|
||||
this.options({
|
||||
this.options(merge(this.getOptions ? this.getOptions() : {}, {
|
||||
timeout: 8000,
|
||||
heartbeatInterval: 10000,
|
||||
closeTimeout: 0
|
||||
}, options);
|
||||
}), options);
|
||||
this.connections = 0;
|
||||
this._open = false;
|
||||
this._heartbeats = 0;
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
var url = require('url'),
|
||||
sys = require('sys'),
|
||||
fs = require('fs'),
|
||||
options = require('./utils').options,
|
||||
Client = require('./client'),
|
||||
clientVersion = require('./../../support/socket.io-client/lib/io').io.version,
|
||||
transports = {
|
||||
'flashsocket': require('./transports/flashsocket'),
|
||||
'htmlfile': require('./transports/htmlfile'),
|
||||
'websocket': require('./transports/websocket'),
|
||||
'xhr-multipart': require('./transports/xhr-multipart'),
|
||||
'xhr-polling': require('./transports/xhr-polling'),
|
||||
'jsonp-polling': require('./transports/jsonp-polling')
|
||||
},
|
||||
var url = require('url')
|
||||
, sys = require('sys')
|
||||
, fs = require('fs')
|
||||
, options = require('./utils').options
|
||||
, Client = require('./client')
|
||||
, clientVersion = require('./../../support/socket.io-client/lib/io').io.version
|
||||
, transports = {
|
||||
'flashsocket': require('./transports/flashsocket')
|
||||
, 'htmlfile': require('./transports/htmlfile')
|
||||
, 'websocket': require('./transports/websocket')
|
||||
, 'xhr-multipart': require('./transports/xhr-multipart')
|
||||
, 'xhr-polling': require('./transports/xhr-polling')
|
||||
, 'jsonp-polling': require('./transports/jsonp-polling')
|
||||
};
|
||||
|
||||
Listener = module.exports = function(server, options){
|
||||
var Listener = module.exports = function(server, options){
|
||||
process.EventEmitter.call(this);
|
||||
var self = this;
|
||||
this.server = server;
|
||||
@@ -21,18 +21,7 @@ Listener = module.exports = function(server, options){
|
||||
origins: '*:*',
|
||||
resource: 'socket.io',
|
||||
transports: ['websocket', 'flashsocket', 'htmlfile', 'xhr-multipart', 'xhr-polling', 'jsonp-polling'],
|
||||
transportOptions: {
|
||||
'xhr-polling': {
|
||||
timeout: null, // no heartbeats
|
||||
closeTimeout: 8000,
|
||||
duration: 20000
|
||||
},
|
||||
'jsonp-polling': {
|
||||
timeout: null, // no heartbeats
|
||||
closeTimeout: 8000,
|
||||
duration: 20000
|
||||
}
|
||||
},
|
||||
transportOptions: {},
|
||||
log: function(message){
|
||||
sys.log(message);
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
var net = require('net'),
|
||||
WebSocket = require('./websocket'),
|
||||
listeners = [],
|
||||
netserver,
|
||||
var net = require('net')
|
||||
, WebSocket = require('./websocket')
|
||||
, listeners = []
|
||||
, netserver;
|
||||
|
||||
Flashsocket = module.exports = function(){
|
||||
var Flashsocket = module.exports = function(){
|
||||
WebSocket.apply(this, arguments);
|
||||
};
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
var Client = require('../client'),
|
||||
qs = require('querystring'),
|
||||
var Client = require('../client')
|
||||
, qs = require('querystring');
|
||||
|
||||
HTMLFile = module.exports = function(){
|
||||
var HTMLFile = module.exports = function(){
|
||||
Client.apply(this, arguments);
|
||||
};
|
||||
|
||||
|
||||
@@ -6,6 +6,14 @@ JSONPPolling = module.exports = function(){
|
||||
|
||||
require('sys').inherits(JSONPPolling, XHRPolling);
|
||||
|
||||
JSONPPolling.prototype.getOptions = function(){
|
||||
return {
|
||||
timeout: null, // no heartbeats
|
||||
closeTimeout: 8000,
|
||||
duration: 20000
|
||||
};
|
||||
};
|
||||
|
||||
JSONPPolling.prototype._onConnect = function(req, res){
|
||||
this._index = req.url.match(/\/([0-9]+)\/?$/).pop();
|
||||
XHRPolling.prototype._onConnect.call(this, req, res);
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
var Client = require('../client'),
|
||||
url = require('url'),
|
||||
Buffer = require('buffer').Buffer,
|
||||
crypto = require('crypto'),
|
||||
net = require('net'),
|
||||
var Client = require('../client')
|
||||
, url = require('url')
|
||||
, Buffer = require('buffer').Buffer
|
||||
, crypto = require('crypto')
|
||||
, net = require('net');
|
||||
|
||||
WebSocket = module.exports = function(){
|
||||
Client.apply(this, arguments);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
var Client = require('../client'),
|
||||
qs = require('querystring'),
|
||||
var Client = require('../client')
|
||||
, qs = require('querystring');
|
||||
|
||||
Multipart = module.exports = function(){
|
||||
var Multipart = module.exports = function(){
|
||||
Client.apply(this, arguments);
|
||||
};
|
||||
|
||||
|
||||
@@ -1,12 +1,20 @@
|
||||
var Client = require('../client'),
|
||||
qs = require('querystring'),
|
||||
var Client = require('../client')
|
||||
, qs = require('querystring');
|
||||
|
||||
Polling = module.exports = function(){
|
||||
var Polling = module.exports = function(){
|
||||
Client.apply(this, arguments);
|
||||
};
|
||||
|
||||
require('sys').inherits(Polling, Client);
|
||||
|
||||
Polling.prototype.getOptions = function(){
|
||||
return {
|
||||
timeout: null, // no heartbeats
|
||||
closeTimeout: 8000,
|
||||
duration: 20000
|
||||
};
|
||||
};
|
||||
|
||||
Polling.prototype._onConnect = function(req, res){
|
||||
var self = this, body = '';
|
||||
switch (req.method){
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
var io = require('socket.io'),
|
||||
Listener = io.Listener,
|
||||
Client = require('socket.io/client'),
|
||||
WebSocket = require('../support/node-websocket-client/lib/websocket').WebSocket,
|
||||
empty = function(){};
|
||||
var io = require('socket.io')
|
||||
, Listener = io.Listener
|
||||
, Client = require('socket.io/client')
|
||||
, WebSocket = require('../support/node-websocket-client/lib/websocket').WebSocket
|
||||
, empty = function(){};
|
||||
|
||||
module.exports = {
|
||||
|
||||
@@ -16,15 +16,15 @@ module.exports = {
|
||||
}, 100);
|
||||
},
|
||||
|
||||
// 'test serving static javascript client': function(assert){
|
||||
// var server = require('http').createServer(function(){}),
|
||||
// sio = io.listen(server, {log: empty});
|
||||
// assert.response(server,
|
||||
// { url: '/socket.io/socket.io.js' },
|
||||
// { body: /setPath/, headers: { 'Content-Type': 'text/javascript' }});
|
||||
// assert.response(server,
|
||||
// { url: '/socket.io/lib/vendor/web-socket-js/WebSocketMain.swf' },
|
||||
// { headers: { 'Content-Type': 'application/x-shockwave-flash' }});
|
||||
// }
|
||||
'test serving static javascript client': function(assert){
|
||||
var server = require('http').createServer(function(){}),
|
||||
sio = io.listen(server, {log: empty});
|
||||
assert.response(server,
|
||||
{ url: '/socket.io/socket.io.js' },
|
||||
{ body: /setPath/, headers: { 'Content-Type': 'text/javascript' }});
|
||||
assert.response(server,
|
||||
{ url: '/socket.io/lib/vendor/web-socket-js/WebSocketMain.swf' },
|
||||
{ headers: { 'Content-Type': 'application/x-shockwave-flash' }});
|
||||
}
|
||||
|
||||
};
|
||||
@@ -24,6 +24,11 @@ function client(s){
|
||||
function socket(server, options){
|
||||
if (!options) options = {};
|
||||
options.log = false;
|
||||
if (!options.transportOptions) options.transportOptions = {
|
||||
'xhr-polling': {
|
||||
closeTimeout: 100
|
||||
}
|
||||
};
|
||||
return io.listen(server, options);
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user