|
@@ -59,7 +59,9 @@ var api = {}, // Public API
|
|
'open' : function() {},
|
|
'open' : function() {},
|
|
'close' : function() {},
|
|
'close' : function() {},
|
|
'error' : function() {}
|
|
'error' : function() {}
|
|
- };
|
|
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ test_mode = false;
|
|
|
|
|
|
|
|
|
|
//
|
|
//
|
|
@@ -253,9 +255,13 @@ function init() {
|
|
function open(uri) {
|
|
function open(uri) {
|
|
init();
|
|
init();
|
|
|
|
|
|
- websocket = new WebSocket(uri, 'base64');
|
|
|
|
- // TODO: future native binary support
|
|
|
|
- //websocket = new WebSocket(uri, ['binary', 'base64']);
|
|
|
|
|
|
+ if (test_mode) {
|
|
|
|
+ websocket = {};
|
|
|
|
+ } else {
|
|
|
|
+ websocket = new WebSocket(uri, 'base64');
|
|
|
|
+ // TODO: future native binary support
|
|
|
|
+ //websocket = new WebSocket(uri, ['binary', 'base64']);
|
|
|
|
+ }
|
|
|
|
|
|
websocket.onmessage = recv_message;
|
|
websocket.onmessage = recv_message;
|
|
websocket.onopen = function() {
|
|
websocket.onopen = function() {
|
|
@@ -289,6 +295,15 @@ function close() {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// Override internal functions for testing
|
|
|
|
+// Takes a send function, returns reference to recv function
|
|
|
|
+function testMode(override_send) {
|
|
|
|
+ test_mode = true;
|
|
|
|
+ api.send = override_send;
|
|
|
|
+ api.close = function () {};
|
|
|
|
+ return recv_message;
|
|
|
|
+}
|
|
|
|
+
|
|
function constructor() {
|
|
function constructor() {
|
|
// Configuration settings
|
|
// Configuration settings
|
|
api.maxBufferedAmount = 200;
|
|
api.maxBufferedAmount = 200;
|
|
@@ -319,6 +334,7 @@ function constructor() {
|
|
api.init = init;
|
|
api.init = init;
|
|
api.open = open;
|
|
api.open = open;
|
|
api.close = close;
|
|
api.close = close;
|
|
|
|
+ api.testMode = testMode;
|
|
|
|
|
|
return api;
|
|
return api;
|
|
}
|
|
}
|