[FIX] tracking_manager: m2m data was tracked as None->None
parent
ff178e180e
commit
36410c75a8
|
@ -2,4 +2,3 @@ from . import mail_thread
|
|||
from . import ir_model
|
||||
from . import ir_model_fields
|
||||
from . import models
|
||||
from . import mail_tracking_value
|
||||
|
|
|
@ -1,27 +0,0 @@
|
|||
# Copyright 2023 Akretion (https://www.akretion.com).
|
||||
# @author Sébastien BEAU <sebastien.beau@akretion.com>
|
||||
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
||||
|
||||
from odoo import models
|
||||
|
||||
from ..tools import format_m2m
|
||||
|
||||
|
||||
class MailTrackingValue(models.Model):
|
||||
_inherit = "mail.tracking.value"
|
||||
|
||||
def _create_tracking_values(
|
||||
self,
|
||||
initial_value,
|
||||
new_value,
|
||||
col_name,
|
||||
col_info,
|
||||
record,
|
||||
):
|
||||
if col_info["type"] == "many2many":
|
||||
col_info["type"] = "text"
|
||||
initial_value = format_m2m(initial_value)
|
||||
new_value = format_m2m(new_value)
|
||||
return super()._create_tracking_values(
|
||||
initial_value, new_value, col_name, col_info, record
|
||||
)
|
|
@ -79,8 +79,8 @@ class TestTrackingManager(TransactionCase):
|
|||
self.assertEqual(len(self.messages), 1)
|
||||
tracking = self.messages.tracking_value_ids[0]
|
||||
self.assertEqual(len(tracking), 1)
|
||||
self.assertEqual(tracking.old_value_text, "FOO")
|
||||
self.assertEqual(tracking.new_value_text, "FOO; BAR")
|
||||
self.assertEqual(tracking.old_value_char, "FOO")
|
||||
self.assertEqual(tracking.new_value_char, "FOO, BAR")
|
||||
|
||||
def test_m2m_delete_line(self):
|
||||
self.partner.write(
|
||||
|
@ -89,8 +89,8 @@ class TestTrackingManager(TransactionCase):
|
|||
self.assertEqual(len(self.messages), 1)
|
||||
tracking = self.messages.tracking_value_ids
|
||||
self.assertEqual(len(tracking), 1)
|
||||
self.assertEqual(tracking.old_value_text, "FOO")
|
||||
self.assertEqual(tracking.new_value_text, "")
|
||||
self.assertEqual(tracking.old_value_char, "FOO")
|
||||
self.assertEqual(tracking.new_value_char, "")
|
||||
|
||||
def test_m2m_multi_line(self):
|
||||
self.partner.write(
|
||||
|
@ -110,8 +110,8 @@ class TestTrackingManager(TransactionCase):
|
|||
self.assertEqual(len(self.messages), 1)
|
||||
tracking = self.messages.tracking_value_ids
|
||||
self.assertEqual(len(tracking), 1)
|
||||
self.assertEqual(tracking.old_value_text, "FOO")
|
||||
self.assertEqual(tracking.new_value_text, "BAR; TOOH")
|
||||
self.assertEqual(tracking.old_value_char, "FOO")
|
||||
self.assertEqual(tracking.new_value_char, "BAR, TOOH")
|
||||
|
||||
def test_o2m_create_indirectly(self):
|
||||
self.partner.write({"user_ids": [(Command.CREATE, 0, {"login": "1234567890"})]})
|
||||
|
|
Loading…
Reference in New Issue