The missing AngularJS 1.x WebSocket module for connecting client applications to servers.
$websocketBackend.mock();
which is non-existant
beforeEach ->
angular.mock.module('ngWebSocket', 'ngWebSocketMock')
inject (_$websocketBackend_) ->
$websocketBackend = _$websocketBackend_
$websocketBackend.expectSend("""{"id": 1,.....}""")
$websocketBackend.flush()
Error: Requests waiting to be flushed
$MockWebSocket.prototype.readyState = 1;
allows calling $MockWebSocket.prototype.send
.message
works as expected in the tests (i.e. really compares expected and sent string)
_onMessageHandler
, and it seems that has been made entirely private, so I really can't.
describe('Websocket', function () {
//load module
beforeEach(module('mozaik'));
var $websocketBackend, createController;
beforeEach(angular.mock.module('ngWebSocket', 'ngWebSocketMock'));
beforeEach(inject(function ($websocketBackend) {
$websocketBackend = $websocketBackend;
$websocketBackend.mock();
$websocketBackend.expectConnect('ws://localhost:1245/api');
$websocketBackend.expectSend({data: JSON.stringify({test: true})});
}));
beforeEach(inject(function ($injector) {
// The $controller service is used to create instances of controllers
var $service = $injector.get('$service');
createController = function () {
return $service('mzksWebsocket');
};
}));
it(’test1', function () {
var mzksWebsocket = createController();
//some test
});