session-desktop/libloki/test/messages.js
Audric Ackermann eb894a9b66
lint
2020-05-15 12:57:23 +10:00

78 lines
2.3 KiB
JavaScript

/* global assert */
describe('Loki Messages', () => {
describe('#backgroundMessage', () => {
it('structure is valid', () => {
const pubkey =
'05050505050505050505050505050505050505050505050505050505050505050';
const backgroundMessage = window.textsecure.OutgoingMessage.buildBackgroundMessage(
pubkey
);
const validBackgroundObject = {
server: null,
numbers: [pubkey],
// For now, a background message contains only a loki address message as
// it must not be an empty message for android
};
const validBgMessage = {
dataMessage: null,
syncMessage: null,
callMessage: null,
nullMessage: null,
receiptMessage: null,
typingMessage: null,
preKeyBundleMessage: null,
pairingAuthorisation: null,
};
const lokiAddressMessage = {
p2pAddress: null,
p2pPort: null,
type: 1,
};
assert.isNumber(backgroundMessage.timestamp);
assert.isFunction(backgroundMessage.callback);
assert.deepInclude(backgroundMessage, validBackgroundObject);
assert.deepInclude(backgroundMessage.message, validBgMessage);
assert.deepInclude(
backgroundMessage.message.lokiAddressMessage,
lokiAddressMessage
);
});
});
describe('#autoFriendRequestMessage', () => {
it('structure is valid', () => {
const pubkey =
'05050505050505050505050505050505050505050505050505050505050505050';
const autoFrMessage = window.textsecure.OutgoingMessage.buildAutoFriendRequestMessage(
pubkey
);
const validAutoFrObject = {
server: null,
numbers: [pubkey],
};
const validAutoFrMessage = {
syncMessage: null,
callMessage: null,
nullMessage: null,
receiptMessage: null,
typingMessage: null,
preKeyBundleMessage: null,
lokiAddressMessage: null,
pairingAuthorisation: null,
};
assert.isNumber(autoFrMessage.timestamp);
assert.isFunction(autoFrMessage.callback);
assert.deepInclude(autoFrMessage.message, validAutoFrMessage);
assert.isObject(autoFrMessage.message.dataMessage);
assert.deepInclude(autoFrMessage, validAutoFrObject);
});
});
});