portal/tests/test_message_format_portal.py

42 lines
1.7 KiB
Python
Raw Permalink Normal View History

2024-05-03 12:57:08 +03:00
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo.tools import mute_logger
from odoo.tests import common, tagged
@tagged('mail_message')
class TestMessageFormatPortal(common.TransactionCase):
@mute_logger('odoo.models.unlink')
def test_mail_message_format(self):
""" Test the specific message formatting for the portal.
Notably the flag that tells if the message is of subtype 'note'. """
partner = self.env['res.partner'].create({'name': 'Partner'})
message_no_subtype = self.env['mail.message'].create([{
'model': 'res.partner',
'res_id': partner.id,
}])
formatted_result = message_no_subtype.portal_message_format()
# no defined subtype -> should return False
self.assertFalse(formatted_result[0].get('is_message_subtype_note'))
message_comment = self.env['mail.message'].create([{
'model': 'res.partner',
'res_id': partner.id,
'subtype_id': self.env['ir.model.data']._xmlid_to_res_id('mail.mt_comment'),
}])
formatted_result = message_comment.portal_message_format()
# subtype is a comment -> should return False
self.assertFalse(formatted_result[0].get('is_message_subtype_note'))
message_note = self.env['mail.message'].create([{
'model': 'res.partner',
'res_id': partner.id,
'subtype_id': self.env['ir.model.data']._xmlid_to_res_id('mail.mt_note'),
}])
formatted_result = message_note.portal_message_format()
# subtype is note -> should return True
self.assertTrue(formatted_result[0].get('is_message_subtype_note'))