49 lines
1.3 KiB
JavaScript
49 lines
1.3 KiB
JavaScript
describe('Net Module', function () {
|
|
this.timeout(5000);
|
|
|
|
before(() => {
|
|
return Edge.Client.connect();
|
|
});
|
|
|
|
after(() => {
|
|
Edge.Client.disconnect();
|
|
});
|
|
|
|
it('should broadcast a message from server', function (done) {
|
|
const message = { test: 'broadcast', now: Date.now() };
|
|
|
|
const handler = (evt) => {
|
|
const receivedMessage = evt.detail;
|
|
if (receivedMessage.test !== 'broadcast') return;
|
|
|
|
chai.assert.deepEqual(message, evt.detail);
|
|
|
|
Edge.Client.removeEventListener('message', handler);
|
|
done();
|
|
};
|
|
|
|
Edge.Client.addEventListener("message", handler);
|
|
Edge.Client.send(message);
|
|
});
|
|
|
|
it('should send a message to the server and echo back', function(done) {
|
|
const now = new Date();
|
|
|
|
const handler = evt => {
|
|
const receivedMessage = evt.detail;
|
|
if (receivedMessage.test !== 'echo') return;
|
|
|
|
chai.assert.equal(receivedMessage.now, now.toJSON());
|
|
|
|
Edge.Client.removeEventListener('message', handler);
|
|
done();
|
|
}
|
|
|
|
// Server should echo back message
|
|
Edge.Client.addEventListener('message', handler);
|
|
|
|
// Send message to server
|
|
Edge.Client.send({ test: 'echo', now });
|
|
});
|
|
|
|
}); |