added unit testing, and started implementing unit tests...phew
This commit is contained in:
+42
@@ -0,0 +1,42 @@
|
||||
var _global = (function() { return this; })();
|
||||
var NativeWebSocket = _global.WebSocket || _global.MozWebSocket;
|
||||
var websocket_version = require('./version');
|
||||
|
||||
|
||||
/**
|
||||
* Expose a W3C WebSocket class with just one or two arguments.
|
||||
*/
|
||||
function W3CWebSocket(uri, protocols) {
|
||||
var native_instance;
|
||||
|
||||
if (protocols) {
|
||||
native_instance = new NativeWebSocket(uri, protocols);
|
||||
}
|
||||
else {
|
||||
native_instance = new NativeWebSocket(uri);
|
||||
}
|
||||
|
||||
/**
|
||||
* 'native_instance' is an instance of nativeWebSocket (the browser's WebSocket
|
||||
* class). Since it is an Object it will be returned as it is when creating an
|
||||
* instance of W3CWebSocket via 'new W3CWebSocket()'.
|
||||
*
|
||||
* ECMAScript 5: http://bclary.com/2004/11/07/#a-13.2.2
|
||||
*/
|
||||
return native_instance;
|
||||
}
|
||||
if (NativeWebSocket) {
|
||||
['CONNECTING', 'OPEN', 'CLOSING', 'CLOSED'].forEach(function(prop) {
|
||||
Object.defineProperty(W3CWebSocket, prop, {
|
||||
get: function() { return NativeWebSocket[prop]; }
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Module exports.
|
||||
*/
|
||||
module.exports = {
|
||||
'w3cwebsocket' : NativeWebSocket ? W3CWebSocket : null,
|
||||
'version' : websocket_version
|
||||
};
|
||||
Reference in New Issue
Block a user