diff --git a/ts/session/sending/MessageQueue.ts b/ts/session/sending/MessageQueue.ts index b94bc2d0b..b927fbb79 100644 --- a/ts/session/sending/MessageQueue.ts +++ b/ts/session/sending/MessageQueue.ts @@ -12,32 +12,9 @@ import { import { PendingMessageCache } from './PendingMessageCache'; import { JobQueue, TypedEventEmitter } from '../utils'; -// Used for ExampleMessage -import { v4 as uuid } from 'uuid'; -import { SignalService } from '../../protobuf'; -export class ExampleMessage extends ContentMessage { - constructor() { - super({ - timestamp: Math.floor(Math.random() * 10000000000000), - identifier: uuid(), - }); - } - - public ttl(): number { - // throw new Error("Method not implemented."); - return 5; - } - protected contentProto(): SignalService.Content { - // throw new Error("Method not implemented."); - // TODO - get actual content - const content = SignalService.Content.create(); - - return content; - } -} export class MessageQueue implements MessageQueueInterface { public readonly events: TypedEventEmitter; @@ -59,6 +36,7 @@ export class MessageQueue implements MessageQueueInterface { console.log('[vince] userDevices:', userDevices); } + public send(device: string, message: ContentMessage) { // throw new Error('Method not implemented.'); @@ -68,12 +46,14 @@ export class MessageQueue implements MessageQueueInterface { console.log(`[vince] send: Queueing message`, message); this.queue(device, message); } + public sendToGroup(message: ContentMessage | OpenGroupMessage) { throw new Error('Method not implemented.'); // If you see an open group message just call // MessageSender.sendToOpenGroup directly. } + public sendSyncMessage(message: ContentMessage) { // PSEDUOCODE // if message is undefined diff --git a/ts/test/session/sending/MessageQueue_test.ts b/ts/test/session/sending/MessageQueue_test.ts index 22ec3b30f..7ac924d40 100644 --- a/ts/test/session/sending/MessageQueue_test.ts +++ b/ts/test/session/sending/MessageQueue_test.ts @@ -1,31 +1,60 @@ -// import { expect } from 'chai'; - -// import { ChatMessage, SessionResetMessage, } from '../../../session/messages/outgoing'; -// import { TextEncoder } from 'util'; -// import { MessageUtils } from '../../../session/utils'; -// import { PendingMessageCache } from '../../../session/sending/PendingMessageCache'; - -// describe('PendingMessageCache', () => { -// const pendingMessageCache = new PendingMessageCache(); - -// let sessionResetMessage: SessionResetMessage; -// const preKeyBundle = { -// deviceId: 123456, -// preKeyId: 654321, -// signedKeyId: 111111, -// preKey: new TextEncoder().encode('preKey'), -// signature: new TextEncoder().encode('signature'), -// signedKey: new TextEncoder().encode('signedKey'), -// identityKey: new TextEncoder().encode('identityKey'), -// }; - -// // queue with session reset message. -// // should return undefined -// // TOOD: Send me to MESSAGE QUEUE TEST -// it('queue session reset message', () => { -// const timestamp = Date.now(); -// sessionResetMessage = new SessionResetMessage({timestamp, preKeyBundle}); - -// }); - -// }); +import { expect } from 'chai'; + +import { ChatMessage, SessionResetMessage } from '../../../session/messages/outgoing'; +import { TextEncoder } from 'util'; +import { MessageUtils } from '../../../session/utils'; +import { PendingMessageCache } from '../../../session/sending/PendingMessageCache'; + + +// Used for ExampleMessage +import { v4 as uuid } from 'uuid'; +import { SignalService } from '../../../protobuf'; + +export class ExampleMessage extends ContentMessage { + constructor() { + super({ + timestamp: Math.floor(Math.random() * 10000000000000), + identifier: uuid(), + }); + } + + public ttl(): number { + // throw new Error("Method not implemented."); + return 5; + } + + protected contentProto(): SignalService.Content { + // throw new Error("Method not implemented."); + + // TODO - get actual content + const content = SignalService.Content.create(); + + return content; + } +} + + +describe('PendingMessageCache', () => { + const pendingMessageCache = new PendingMessageCache(); + + let sessionResetMessage: SessionResetMessage; + const preKeyBundle = { + deviceId: 123456, + preKeyId: 654321, + signedKeyId: 111111, + preKey: new TextEncoder().encode('preKey'), + signature: new TextEncoder().encode('signature'), + signedKey: new TextEncoder().encode('signedKey'), + identityKey: new TextEncoder().encode('identityKey'), + }; + + // queue with session reset message. + // should return undefined + // TOOD: Send me to MESSAGE QUEUE TEST + it('queue session reset message', () => { + const timestamp = Date.now(); + sessionResetMessage = new SessionResetMessage({timestamp, preKeyBundle}); + + }); + +}); diff --git a/ts/test/session/sending/PendingMessageCache_test.ts b/ts/test/session/sending/PendingMessageCache_test.ts index 26f6b09f7..299b1db88 100644 --- a/ts/test/session/sending/PendingMessageCache_test.ts +++ b/ts/test/session/sending/PendingMessageCache_test.ts @@ -1,15 +1,11 @@ -// tslint:disable-next-line: no-require-imports no-var-requires -const Data = require('../../../../js/modules/data'); - -import { expect, assert } from 'chai'; -import sinon from 'sinon'; +import { expect } from 'chai'; +import * as sinon from 'sinon'; import uuid from 'uuid'; import { ChatMessage } from '../../../session/messages/outgoing'; import { MessageUtils, PubKey } from '../../../session/utils'; import { PendingMessageCache } from '../../../session/sending/PendingMessageCache'; import { RawMessage } from '../../../session/types/RawMessage'; -import { SignalService } from '../../../protobuf'; describe('PendingMessageCache', () => { const sandbox = sinon.createSandbox();