Skip to content

Commit 0620b51

Browse files
committed
adress pr comments
1 parent 7d14017 commit 0620b51

File tree

4 files changed

+14
-83
lines changed

4 files changed

+14
-83
lines changed

packages/js-sdk/src/Dm3Sdk.test.ts

+6-71
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,6 @@ describe('Dm3Sdk', () => {
4242
ethers.Wallet.createRandom(),
4343
'http://localhost:3000',
4444
);
45-
});
46-
47-
beforeAll(() => {
4845
axiosMock = new MockAdapter(axios);
4946

5047
//Mock BackendConnector HttpRequests
@@ -197,58 +194,6 @@ describe('Dm3Sdk', () => {
197194
});
198195

199196
describe('Messages', () => {
200-
it('can send a message', async () => {
201-
const mockTldResolver = {
202-
resolveTLDtoAlias: async () =>
203-
`${normalizeEnsName(bob.address)}.addr.test`,
204-
resolveAliasToTLD: async () => 'bob.eth',
205-
} as unknown as ITLDResolver;
206-
207-
const mockConfig: Dm3SdkConfig = {
208-
mainnetProvider: {} as ethers.providers.JsonRpcProvider,
209-
storageApi: {
210-
addConversation: async () => {},
211-
addMessage: async () => {},
212-
} as unknown as StorageAPI,
213-
nonce: '1',
214-
defaultDeliveryService: 'test.io',
215-
addressEnsSubdomain: '.addr.test',
216-
userEnsSubdomain: '.user.test',
217-
resolverBackendUrl: 'resolver.io',
218-
backendUrl: 'http://localhost:4060',
219-
_tld: mockTldResolver,
220-
};
221-
222-
const dm3 = await new Dm3Sdk(mockConfig).login({
223-
profileKeys: alice.profileKeys,
224-
profile: alice.signedUserProfile,
225-
accountAddress: alice.address,
226-
});
227-
228-
const msgFactory = MockMessageFactory(alice, bob, deliveryService);
229-
230-
const msg1 = await msgFactory.createMessage('Hi');
231-
232-
expect(
233-
(
234-
await dm3.conversations.addConversation('bob.eth')
235-
)?.messages.list().length,
236-
).toBe(0);
237-
await (
238-
await dm3.conversations.addConversation('bob.eth')
239-
)?.messages.addMessage('bob.eth', msg1);
240-
241-
expect(
242-
(
243-
await dm3.conversations.addConversation('bob.eth')
244-
)?.messages.list().length,
245-
).toBe(1);
246-
expect(
247-
(
248-
await dm3.conversations.addConversation('bob.eth')
249-
)?.messages.list()[0].envelop.message.message,
250-
).toBe('Hi');
251-
});
252197
it('can send a message', async () => {
253198
const mockTldResolver = {
254199
resolveTLDtoAlias: async () =>
@@ -278,25 +223,15 @@ describe('Dm3Sdk', () => {
278223
});
279224

280225
expect(
281-
(
282-
await dm3.conversations.addConversation('bob.eth')
283-
)?.messages.list().length,
226+
(await dm3.conversations.addConversation('bob.eth'))?.messages
227+
.list.length,
284228
).toBe(0);
285229

286-
await (
287-
await dm3.conversations.addConversation('bob.eth')
288-
)?.messages.sendMessage('Hi');
230+
const c = await dm3.conversations.addConversation('bob.eth');
289231

290-
expect(
291-
(
292-
await dm3.conversations.addConversation('bob.eth')
293-
)?.messages.list().length,
294-
).toBe(1);
295-
expect(
296-
(
297-
await dm3.conversations.addConversation('bob.eth')
298-
)?.messages.list()[0].envelop.message.message,
299-
).toBe('Hi');
232+
await c?.messages.sendMessage('Hi');
233+
expect(c?.messages.list.length).toBe(1);
234+
expect(c?.messages.list[0].envelop.message.message).toBe('Hi');
300235
});
301236
});
302237
});

packages/js-sdk/src/message/Messages.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ export class Messages {
4444
this._messages = [];
4545
}
4646

47-
public list() {
47+
public get list() {
4848
return renderMessage(this._messages);
4949
}
5050
public async sendMessage(msg: string) {
@@ -56,7 +56,7 @@ export class Messages {
5656
type: 'NEW',
5757
to: this.receiver.account.ensName,
5858
from: this.senderAccount.ensName,
59-
timestamp: new Date().getTime(),
59+
timestamp: Date.now(),
6060
},
6161
};
6262

@@ -241,10 +241,10 @@ export class Messages {
241241
return regex.test(input);
242242
};
243243

244-
private async checkIfEnvelopAreInSizeLimit(
244+
private checkIfEnvelopAreInSizeLimit(
245245
encryptedEnvelops: EncryptionEnvelop[],
246246
receiversMessageSizeLimit: number,
247-
): Promise<boolean> {
247+
): boolean {
248248
try {
249249
const atLeastOneEnvelopIsToLarge = !!encryptedEnvelops
250250
//get the size of each envelop

packages/js-sdk/src/message/renderer/messageTypes/renderReactions.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1-
import { MessageModel } from '../../types';
1+
import { MessageActionType, MessageModel } from '../../types';
22

33
export const renderReactions = (messages: MessageModel[]) => {
44
//We filter out all messages that are reactions
55
const reactions = messages
66
.filter(
7-
(message) => message.envelop.message.metadata.type === 'REACTION',
7+
(message) =>
8+
message.envelop.message.metadata.type ===
9+
MessageActionType.REACT,
810
)
911
.map((reaction) => reaction.envelop);
1012

packages/js-sdk/src/message/renderer/renderMessage.ts

-6
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,6 @@ export const renderMessage = (messages: MessageModel[]) => {
2121
const withReply = renderReply(withReactions);
2222

2323
const withoutEdited = renderEdit(withReply);
24-
//Sort the messages by timestamp DESC to show them in the right order
25-
// withoutEdited.sort(
26-
// (a, b) =>
27-
// b.envelop.message.metadata.timestamp -
28-
// a.envelop.message.metadata.timestamp,
29-
// );
3024

3125
//There a several ways a message can added to the client. I.e via Websocket, multiple DS or from the storage.
3226
//This leads occasionally to duplicates we don't want to display.

0 commit comments

Comments
 (0)