2018-09-01 13:58:06 -04:00
|
|
|
const ParseWebSocket = require('../lib/LiveQuery/ParseWebSocketServer')
|
|
|
|
|
.ParseWebSocket;
|
2016-03-10 14:27:00 -08:00
|
|
|
|
|
|
|
|
describe('ParseWebSocket', function() {
|
|
|
|
|
it('can be initialized', function() {
|
2018-02-17 09:55:30 -05:00
|
|
|
const ws = {};
|
|
|
|
|
const parseWebSocket = new ParseWebSocket(ws);
|
2016-03-10 14:27:00 -08:00
|
|
|
|
|
|
|
|
expect(parseWebSocket.ws).toBe(ws);
|
|
|
|
|
});
|
|
|
|
|
|
2019-07-30 09:05:41 -05:00
|
|
|
it('can handle disconnect event', function(done) {
|
2018-02-17 09:55:30 -05:00
|
|
|
const ws = {
|
2019-07-30 09:05:41 -05:00
|
|
|
onclose: () => {},
|
2016-03-10 14:27:00 -08:00
|
|
|
};
|
2018-02-17 09:55:30 -05:00
|
|
|
const parseWebSocket = new ParseWebSocket(ws);
|
2019-07-30 09:05:41 -05:00
|
|
|
parseWebSocket.on('disconnect', () => {
|
|
|
|
|
done();
|
|
|
|
|
});
|
|
|
|
|
ws.onclose();
|
2016-03-10 14:27:00 -08:00
|
|
|
});
|
|
|
|
|
|
2019-07-30 09:05:41 -05:00
|
|
|
it('can handle message event', function(done) {
|
2018-02-17 09:55:30 -05:00
|
|
|
const ws = {
|
2019-07-30 09:05:41 -05:00
|
|
|
onmessage: () => {},
|
2016-03-10 14:27:00 -08:00
|
|
|
};
|
2018-02-17 09:55:30 -05:00
|
|
|
const parseWebSocket = new ParseWebSocket(ws);
|
2019-07-30 09:05:41 -05:00
|
|
|
parseWebSocket.on('message', () => {
|
|
|
|
|
done();
|
|
|
|
|
});
|
|
|
|
|
ws.onmessage();
|
2016-03-10 14:27:00 -08:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it('can send a message', function() {
|
2018-02-17 09:55:30 -05:00
|
|
|
const ws = {
|
2018-09-01 13:58:06 -04:00
|
|
|
send: jasmine.createSpy('send'),
|
2016-03-10 14:27:00 -08:00
|
|
|
};
|
2018-02-17 09:55:30 -05:00
|
|
|
const parseWebSocket = new ParseWebSocket(ws);
|
2018-09-01 13:58:06 -04:00
|
|
|
parseWebSocket.send('message');
|
2016-03-10 14:27:00 -08:00
|
|
|
|
|
|
|
|
expect(parseWebSocket.ws.send).toHaveBeenCalledWith('message');
|
|
|
|
|
});
|
|
|
|
|
});
|