diff --git a/test/api/v3/integration/members/POST-flag_private_message.test.js b/test/api/v3/integration/members/POST-flag_private_message.test.js new file mode 100644 index 0000000000..bf7b67f2e1 --- /dev/null +++ b/test/api/v3/integration/members/POST-flag_private_message.test.js @@ -0,0 +1,75 @@ +import { + generateUser, + translate as t, +} from '../../../../helpers/api-v3-integration.helper'; + +describe('POST /members/flag-private-message/:messageId', () => { + let userToSendMessage; + let messageToSend = 'Test Private Message'; + + beforeEach(async () => { + userToSendMessage = await generateUser(); + }); + + it('Allows players to flag their own private message', async () => { + let receiver = await generateUser(); + + await userToSendMessage.post('/members/send-private-message', { + message: messageToSend, + toUserId: receiver._id, + }); + + let updatedSender = await userToSendMessage.get('/user'); + + let sendersMessageInSendersInbox = _.find(updatedSender.inbox.messages, (message) => { + return message.uuid === receiver._id && message.text === messageToSend; + }); + + expect(sendersMessageInSendersInbox).to.exist; + await expect(userToSendMessage.post(`/members/flag-private-message/${sendersMessageInSendersInbox.id}`)).to.eventually.be.ok; + }); + + it('Flags a private message', async () => { + let receiver = await generateUser(); + + await userToSendMessage.post('/members/send-private-message', { + message: messageToSend, + toUserId: receiver._id, + }); + + let updatedReceiver = await receiver.get('/user'); + + let sendersMessageInReceiversInbox = _.find(updatedReceiver.inbox.messages, (message) => { + return message.uuid === userToSendMessage._id && message.text === messageToSend; + }); + + expect(sendersMessageInReceiversInbox).to.exist; + await expect(receiver.post(`/members/flag-private-message/${sendersMessageInReceiversInbox.id}`)).to.eventually.be.ok; + + }); + + it('Returns an error when user tries to flag a private message that is already flagged', async () => { + let receiver = await generateUser(); + + await userToSendMessage.post('/members/send-private-message', { + message: messageToSend, + toUserId: receiver._id, + }); + + let updatedReceiver = await receiver.get('/user'); + + let sendersMessageInReceiversInbox = _.find(updatedReceiver.inbox.messages, (message) => { + return message.uuid === userToSendMessage._id && message.text === messageToSend; + }); + + expect(sendersMessageInReceiversInbox).to.exist; + await expect(receiver.post(`/members/flag-private-message/${sendersMessageInReceiversInbox.id}`)).to.eventually.be.ok; + + await expect(receiver.post(`/members/flag-private-message/${sendersMessageInReceiversInbox.id}`)) + .to.eventually.be.rejected.and.eql({ + code: 404, + error: 'NotFound', + message: t('messageGroupChatFlagAlreadyReported'), + }); + }); +}); diff --git a/website/client/components/chat/reportFlagModal.vue b/website/client/components/chat/reportFlagModal.vue index 884906a2b0..c5fe5f389c 100644 --- a/website/client/components/chat/reportFlagModal.vue +++ b/website/client/components/chat/reportFlagModal.vue @@ -119,16 +119,8 @@ export default { comment: this.reportComment, }); - - console.info('error', result); this.$root.$emit('habitica:report-result', result); - if (!result.ok && result.error) { - alert('errrorororor!'); - console.info('error', result); - this.error(result.error); - } - this.close(); }, async clearFlagCount () { diff --git a/website/client/store/actions/chat.js b/website/client/store/actions/chat.js index 80c909f8cb..85c97ff301 100644 --- a/website/client/store/actions/chat.js +++ b/website/client/store/actions/chat.js @@ -81,8 +81,6 @@ export async function flag (store, payload) { comment: payload.comment, }); - console.info('response', response.data.data); - return response.data.data; }