2020-10-25 15:06:58 -05:00
|
|
|
const ParseWebSocket = require('../lib/LiveQuery/ParseWebSocketServer').ParseWebSocket;
|
2016-03-10 14:27:00 -08:00
|
|
|
|
2020-10-25 15:06:58 -05: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);
|
|
|
|
|
});
|
|
|
|
|
|
2020-10-25 15:06:58 -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
|
|
|
});
|
|
|
|
|
|
2020-10-25 15:06:58 -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
|
|
|
});
|
|
|
|
|
|
2020-10-25 15:06:58 -05: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');
|
|
|
|
|
});
|
|
|
|
|
});
|