summaryrefslogtreecommitdiff
path: root/addons/mail/static/tests/thread_window
diff options
context:
space:
mode:
authorAlexandre Kühn <aku@odoo.com>2018-11-15 21:16:32 +0000
committerAlexandre Kühn <aku@odoo.com>2018-11-16 13:43:41 +0000
commit7613db4178c8de6c054876e43e2680ef8672d8c3 (patch)
treede3e264621ffb5f3ae096046339a51705ecc2858 /addons/mail/static/tests/thread_window
parent9eff26367fdc7f57bea5dca10c3e5d7b3a858f5b (diff)
[FIX] mail: show message document link in chat window
Revision on https://github.com/odoo/odoo/commit/cd34f6de727d5b3858420cff3c9d3c5995c4e75c The commit above consisted of refactoring the JS mail module. A small regression was introduced on messages linked to a document from a chat window: it was no longer displaying the link to redirect to the document that this message originates from. This issue was only isolated to chat windows: it was working fine in the Discuss app. This commit re-introduces the displaying of the document link on messages from chat windows. Task-ID 1910119
Diffstat (limited to 'addons/mail/static/tests/thread_window')
-rw-r--r--addons/mail/static/tests/thread_window/basic_thread_window_tests.js75
1 files changed, 75 insertions, 0 deletions
diff --git a/addons/mail/static/tests/thread_window/basic_thread_window_tests.js b/addons/mail/static/tests/thread_window/basic_thread_window_tests.js
index f05fd367697..4b8935e81cf 100644
--- a/addons/mail/static/tests/thread_window/basic_thread_window_tests.js
+++ b/addons/mail/static/tests/thread_window/basic_thread_window_tests.js
@@ -353,6 +353,81 @@ QUnit.test('do not mark as read the newly open thread window from received messa
parent.destroy();
});
+QUnit.test('show document link of message linked to a document', function (assert) {
+ assert.expect(6);
+
+ this.data['mail.channel'] = {
+ fields: {
+ name: {
+ string: "Name",
+ type: "char",
+ required: true,
+ },
+ channel_type: {
+ string: "Channel Type",
+ type: "selection",
+ },
+ channel_message_ids: {
+ string: "Messages",
+ type: "many2many",
+ relation: 'mail.message'
+ },
+ message_unread_counter: {
+ string: "Amount of Unread Messages",
+ type: "integer"
+ },
+ },
+ records: [{
+ id: 2,
+ name: "R&D Tasks",
+ channel_type: "channel",
+ }],
+ };
+ this.data['mail.message'].records.push({
+ author_id: [5, "Someone else"],
+ body: "<p>Test message</p>",
+ id: 40,
+ model: 'some.document',
+ record_name: 'Some Document',
+ res_id: 10,
+ channel_ids: [2],
+ });
+
+ this.data.initMessaging.channel_slots.channel_channel.push({
+ id: 2,
+ name: "R&D Tasks",
+ channel_type: "public",
+ });
+
+ var parent = this.createParent({
+ data: this.data,
+ services: this.services,
+ session: { partner_id: 3 },
+ });
+
+ assert.strictEqual($('.o_thread_window').length, 0,
+ "no thread window should be open initially");
+
+ // get channel instance to link to thread window
+ var channel = parent.call('mail_service', 'getChannel', 2);
+ channel.detach();
+
+ var $threadWindow = $('.o_thread_window');
+ assert.strictEqual($threadWindow.length, 1,
+ "a thread window should be open");
+ assert.strictEqual($threadWindow.find('.o_thread_window_title').text().trim(),
+ "#R&D Tasks",
+ "should be thread window of correct channel");
+ assert.strictEqual($threadWindow.find('.o_thread_message').length, 1,
+ "should contain a single message in thread window");
+ assert.ok($threadWindow.find('.o_mail_info').text().replace(/\s/g, "").indexOf('Someoneelse') !== -1,
+ "message should be from 'Someone else' user");
+ assert.ok($threadWindow.find('.o_mail_info').text().replace(/\s/g, "").indexOf('onSomeDocument') !== -1,
+ "message should link to 'Some Document'");
+
+ parent.destroy();
+});
+
});
});
});