From 2aaa37d7a41cc3634f5401d10d088828b1ca5e91 Mon Sep 17 00:00:00 2001 From: Lucas Sartor Chauvin <lucassartorchauvin@gmail.com> Date: Thu, 4 Feb 2021 14:08:30 -0300 Subject: [PATCH] Chore: Change error message when marking empty chat as unread (#20250) --- .../server/unreadMessages.js | 2 +- packages/rocketchat-i18n/i18n/en.i18n.json | 1 + packages/rocketchat-i18n/i18n/pt-BR.i18n.json | 1 + tests/end-to-end/api/10-subscriptions.js | 14 ++++++++++++++ 4 files changed, 17 insertions(+), 1 deletion(-) diff --git a/app/message-mark-as-unread/server/unreadMessages.js b/app/message-mark-as-unread/server/unreadMessages.js index aec92fcf94b..da31e72a35a 100644 --- a/app/message-mark-as-unread/server/unreadMessages.js +++ b/app/message-mark-as-unread/server/unreadMessages.js @@ -16,7 +16,7 @@ Meteor.methods({ const lastMessage = Messages.findVisibleByRoomId(room, { limit: 1, sort: { ts: -1 } }).fetch()[0]; if (lastMessage == null) { - throw new Meteor.Error('error-action-not-allowed', 'Not allowed', { + throw new Meteor.Error('error-no-message-for-unread', 'There are no messages to mark unread', { method: 'unreadMessages', action: 'Unread_messages', }); diff --git a/packages/rocketchat-i18n/i18n/en.i18n.json b/packages/rocketchat-i18n/i18n/en.i18n.json index 21c3e5b4fcf..2235b6ad194 100644 --- a/packages/rocketchat-i18n/i18n/en.i18n.json +++ b/packages/rocketchat-i18n/i18n/en.i18n.json @@ -1609,6 +1609,7 @@ "error-message-size-exceeded": "Message size exceeds Message_MaxAllowedSize", "error-missing-unsubscribe-link": "You must provide the [unsubscribe] link.", "error-no-tokens-for-this-user": "There are no tokens for this user", + "error-no-message-for-unread": "There are no messages to mark unread", "error-not-allowed": "Not allowed", "error-not-authorized": "Not authorized", "error-office-hours-are-closed": "The office hours are closed.", diff --git a/packages/rocketchat-i18n/i18n/pt-BR.i18n.json b/packages/rocketchat-i18n/i18n/pt-BR.i18n.json index bac84a92512..b0911437bca 100644 --- a/packages/rocketchat-i18n/i18n/pt-BR.i18n.json +++ b/packages/rocketchat-i18n/i18n/pt-BR.i18n.json @@ -1425,6 +1425,7 @@ "error-message-editing-blocked": "Edição de mensagens está bloqueada", "error-message-size-exceeded": "O tamanho da mensagem excede Message_MaxAllowedSize", "error-missing-unsubscribe-link": "Você deve fornecer o link para desinscrever-se: [unsubscribe].", + "error-no-message-for-unread": "Não há mensagens para serem marcadas como não lidas", "error-no-tokens-for-this-user": "Não existem tokens para este usuário", "error-not-allowed": "Não permitido", "error-not-authorized": "Não autorizado", diff --git a/tests/end-to-end/api/10-subscriptions.js b/tests/end-to-end/api/10-subscriptions.js index d4bb1022672..56d522ad659 100644 --- a/tests/end-to-end/api/10-subscriptions.js +++ b/tests/end-to-end/api/10-subscriptions.js @@ -214,6 +214,20 @@ describe('[Subscriptions]', function() { done(); }); }); + it('should fail when there are no messages on an channel', (done) => { + request.post(api('subscriptions.unread')) + .set(credentials) + .send({ + roomId: testChannel._id, + }) + .expect(400) + .expect((res) => { + expect(res.body).to.have.property('success', false); + expect(res.body).to.have.property('error'); + expect(res.body).to.have.property('errorType', 'error-no-message-for-unread'); + }) + .end(done); + }); it('sending message', (done) => { request.post(api('chat.sendMessage')) .set(credentials) -- GitLab