edge/misc/client-sdk-testsuite/src/public/test/net-module.js

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 });
});
});