@@ -451,7 +477,7 @@
diff --git a/base_view_inheritance_extension/tests/test_base_view_inheritance_extension.py b/base_view_inheritance_extension/tests/test_base_view_inheritance_extension.py
index 335ab67fb21..f2d4472b9ad 100644
--- a/base_view_inheritance_extension/tests/test_base_view_inheritance_extension.py
+++ b/base_view_inheritance_extension/tests/test_base_view_inheritance_extension.py
@@ -5,6 +5,7 @@
from lxml import etree
+from odoo.exceptions import ValidationError
from odoo.tests.common import TransactionCase
@@ -307,3 +308,45 @@ def test_attrs_domain_add_no_attrs(self):
res.xpath('//field[@name="ref"]')[0].attrib["attrs"],
"{'required': [('state', '!=', 'draft')]}",
)
+
+ def test_wraptext(self):
+ """Test textwrap transformations"""
+ base_view = self.env["ir.ui.view"].create(
+ {
+ "type": "qweb",
+ "arch": "
plain text 1plain text2",
+ }
+ )
+ inherited_view = self.env["ir.ui.view"].create(
+ {
+ "type": "qweb",
+ "inherit_id": base_view.id,
+ "arch": "
"
+ ''
+ ''
+ "",
+ }
+ )
+ self.assertEqual(
+ base_view.with_context(load_all_views=True).get_combined_arch(),
+ "
plain text 1"
+ "plain text2
",
+ )
+ translatable_arch = base_view.with_context(
+ load_all_views=True, edit_translations=True
+ )._get_combined_arch()
+ self.assertTrue(
+ translatable_arch.xpath("//some/node/span/span[@data-oe-translation-state]")
+ )
+ self.assertTrue(
+ translatable_arch.xpath("//some/node/div/span[@data-oe-translation-state]")
+ )
+
+ with self.assertRaisesRegex(ValidationError, "children"):
+ inherited_view.write({"arch": "
"})
+ with self.assertRaisesRegex(ValidationError, "found"):
+ inherited_view.write({"arch": '
'})
+ with self.assertRaisesRegex(ValidationError, "positions"):
+ inherited_view.write(
+ {"arch": '
'}
+ )