Call link call history
This commit is contained in:
parent
ed940f6f83
commit
00d6379bae
29 changed files with 1124 additions and 204 deletions
80
ts/test-node/util/callDisposition_test.ts
Normal file
80
ts/test-node/util/callDisposition_test.ts
Normal file
|
@ -0,0 +1,80 @@
|
|||
// Copyright 2024 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
import { assert } from 'chai';
|
||||
import type { PeekInfo } from '@signalapp/ringrtc';
|
||||
import uuid from 'uuid';
|
||||
import {
|
||||
getPeerIdFromConversation,
|
||||
getCallIdFromEra,
|
||||
getGroupCallMeta,
|
||||
} from '../../util/callDisposition';
|
||||
import {
|
||||
getDefaultConversation,
|
||||
getDefaultGroup,
|
||||
} from '../../test-both/helpers/getDefaultConversation';
|
||||
import { uuidToBytes } from '../../util/uuidToBytes';
|
||||
|
||||
const MOCK_ERA = 'abc';
|
||||
const MOCK_CALL_ID = '16919744041952114874';
|
||||
|
||||
const MOCK_PEEK_INFO_BASE: PeekInfo = {
|
||||
devices: [],
|
||||
deviceCount: 0,
|
||||
deviceCountIncludingPendingDevices: 0,
|
||||
deviceCountExcludingPendingDevices: 0,
|
||||
pendingUsers: [],
|
||||
};
|
||||
|
||||
describe('utils/callDisposition', () => {
|
||||
describe('getCallIdFromEra', () => {
|
||||
it('returns callId from era', () => {
|
||||
// just to ensure the mock is correct
|
||||
assert.strictEqual(getCallIdFromEra(MOCK_ERA), MOCK_CALL_ID);
|
||||
});
|
||||
});
|
||||
|
||||
describe('getGroupCallMeta', () => {
|
||||
it('returns null if missing eraId or creator', () => {
|
||||
assert.isNull(getGroupCallMeta({ ...MOCK_PEEK_INFO_BASE }));
|
||||
assert.isNull(
|
||||
getGroupCallMeta({ ...MOCK_PEEK_INFO_BASE, eraId: MOCK_ERA })
|
||||
);
|
||||
assert.isNull(
|
||||
getGroupCallMeta({
|
||||
...MOCK_PEEK_INFO_BASE,
|
||||
creator: Buffer.from(uuidToBytes(uuid())),
|
||||
})
|
||||
);
|
||||
});
|
||||
|
||||
it('returns group call meta when all fields are provided', () => {
|
||||
const id = uuid();
|
||||
assert.deepStrictEqual(
|
||||
getGroupCallMeta({
|
||||
...MOCK_PEEK_INFO_BASE,
|
||||
eraId: MOCK_ERA,
|
||||
creator: Buffer.from(uuidToBytes(id)),
|
||||
}),
|
||||
{ callId: MOCK_CALL_ID, ringerId: id }
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('getPeerIdFromConversation', () => {
|
||||
it('returns serviceId for direct conversation', () => {
|
||||
const conversation = getDefaultConversation();
|
||||
assert.strictEqual(
|
||||
getPeerIdFromConversation(conversation),
|
||||
conversation.serviceId
|
||||
);
|
||||
});
|
||||
it('returns groupId for group conversation', () => {
|
||||
const conversation = getDefaultGroup();
|
||||
assert.strictEqual(
|
||||
getPeerIdFromConversation(conversation),
|
||||
conversation.groupId
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue