From e45ef6f291ea560b9417a1c1b829e73006ac2e03 Mon Sep 17 00:00:00 2001 From: Audric Ackermann Date: Fri, 22 May 2020 11:38:25 +1000 Subject: [PATCH] add test for unpairing request message --- .../content/data/DeviceUnlinkMessage.ts | 6 +++- .../messages/DeviceUnlinkMessage_test.ts | 30 +++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 ts/test/session/messages/DeviceUnlinkMessage_test.ts diff --git a/ts/session/messages/outgoing/content/data/DeviceUnlinkMessage.ts b/ts/session/messages/outgoing/content/data/DeviceUnlinkMessage.ts index 1c1fa8441..9f45728a2 100644 --- a/ts/session/messages/outgoing/content/data/DeviceUnlinkMessage.ts +++ b/ts/session/messages/outgoing/content/data/DeviceUnlinkMessage.ts @@ -8,6 +8,10 @@ export class DeviceUnlinkMessage extends DataMessage { } protected dataProto(): SignalService.DataMessage { - throw new Error('Not implemented'); + const flags = SignalService.DataMessage.Flags.UNPAIRING_REQUEST; + + return new SignalService.DataMessage({ + flags, + }); } } diff --git a/ts/test/session/messages/DeviceUnlinkMessage_test.ts b/ts/test/session/messages/DeviceUnlinkMessage_test.ts new file mode 100644 index 000000000..ab5fa2435 --- /dev/null +++ b/ts/test/session/messages/DeviceUnlinkMessage_test.ts @@ -0,0 +1,30 @@ +// tslint:disable: no-implicit-dependencies +import { assert} from 'chai'; +import { beforeEach} from 'mocha'; + +import { DeviceUnlinkMessage } from '../../../session/messages/outgoing'; +import { SignalService } from '../../../protobuf'; + +describe('DeviceUnlinkMessage', () => { + let message: DeviceUnlinkMessage; + beforeEach(() => { + message = new DeviceUnlinkMessage(Date.now(), '123456'); + }); + + it('content of just the UNPAIRING_REQUEST flag set', () => { + const plainText = message.plainTextBuffer(); + const decoded = SignalService.Content.decode(plainText).toJSON(); + + const expected = { + dataMessage: { + flags: SignalService.DataMessage.Flags.UNPAIRING_REQUEST, + }, + }; + + assert.deepEqual(decoded, expected); + }); + + it('ttl of 4 days', () => { + assert.equal(message.ttl(), 4 * 24 * 60 * 60 * 1000); + }); +});