diff --git a/src/util/Injected.js b/src/util/Injected.js index 4184de8..c513373 100644 --- a/src/util/Injected.js +++ b/src/util/Injected.js @@ -50,6 +50,7 @@ exports.ExposeStore = (moduleRaidStr) => { window.Store.sendReactionToMsg = window.mR.findModule('sendReactionToMsg')[0].sendReactionToMsg; window.Store.createOrUpdateReactionsModule = window.mR.findModule('createOrUpdateReactions')[0]; window.Store.EphemeralFields = window.mR.findModule('getEphemeralFields')[0]; + window.Store.ReplyUtils = window.mR.findModule('canReplyMsg').length > 0 && window.mR.findModule('canReplyMsg')[0]; window.Store.StickerTools = { ...window.mR.findModule('toWebpSticker')[0], ...window.mR.findModule('addWebpMetadata')[0] @@ -116,7 +117,13 @@ exports.LoadUtils = () => { let quotedMsgOptions = {}; if (options.quotedMessageId) { let quotedMessage = window.Store.Msg.get(options.quotedMessageId); - if (quotedMessage.canReply()) { + + // TODO remove .canReply() once all clients are updated to >= v2.2241.6 + const canReply = window.Store.ReplyUtils ? + window.Store.ReplyUtils.canReplyMsg(quotedMessage.unsafe()) : + quotedMessage.canReply(); + + if (canReply) { quotedMsgOptions = quotedMessage.msgContextInfo(chat); } delete options.quotedMessageId; diff --git a/tests/client.js b/tests/client.js index 55f5334..0118c20 100644 --- a/tests/client.js +++ b/tests/client.js @@ -98,7 +98,7 @@ describe('Client', function() { await helper.sleep(20000); expect(callback.called).to.equal(true); - expect(callback.args[0][0]).to.have.lengthOf(152); + expect(callback.args[0][0]).to.have.length.greaterThanOrEqual(152); await client.destroy(); }); @@ -224,7 +224,7 @@ describe('Client', function() { expect(authFailCallback.called).to.equal(true); expect(qrCallback.called).to.equal(true); - expect(qrCallback.args[0][0]).to.have.lengthOf(152); + expect(qrCallback.args[0][0]).to.have.length.greaterThanOrEqual(152); await client.destroy(); }); @@ -346,7 +346,6 @@ describe('Client', function() { 'UserConstructor', 'VCard', 'Validators', - 'Wap', 'WidFactory', 'findCommonGroups', 'sendReactionToMsg', diff --git a/tests/structures/message.js b/tests/structures/message.js index 7a9749d..0f87e53 100644 --- a/tests/structures/message.js +++ b/tests/structures/message.js @@ -66,6 +66,8 @@ describe('Message', function () { expect(message.isStarred).to.equal(false); await message.star(); + await helper.sleep(1000); + // reload and check await message.reload(); expect(message.isStarred).to.equal(true); @@ -75,6 +77,8 @@ describe('Message', function () { expect(message.isStarred).to.equal(true); await message.unstar(); + await helper.sleep(1000); + // reload and check await message.reload(); expect(message.isStarred).to.equal(false); @@ -85,7 +89,7 @@ describe('Message', function () { it('can delete a message for me', async function () { await message.delete(); - await helper.sleep(1000); + await helper.sleep(5000); expect(await message.reload()).to.equal(null); });