[MIG] document_page_reference: Migration to 16.0

This commit is contained in:
kaynnan 2023-07-17 04:10:48 -03:00 committed by Anusha
parent 4c520955f2
commit d06943d840
3 changed files with 41 additions and 20 deletions

View File

@ -5,7 +5,7 @@
"name": "Document Page Reference", "name": "Document Page Reference",
"summary": """ "summary": """
Include references on document pages""", Include references on document pages""",
"version": "15.0.1.1.0", "version": "16.0.1.0.0",
"license": "AGPL-3", "license": "AGPL-3",
"author": "Creu Blanca,Odoo Community Association (OCA)", "author": "Creu Blanca,Odoo Community Association (OCA)",
"website": "https://github.com/OCA/knowledge", "website": "https://github.com/OCA/knowledge",

View File

@ -135,16 +135,16 @@ class DocumentPage(models.Model):
def get_raw_content(self): def get_raw_content(self):
return self.with_context(raw_reference=True).get_content() return self.with_context(raw_reference=True).get_content()
@api.model @api.model_create_multi
def create(self, vals): def create(self, vals_list):
if not vals.get("reference"): for vals in vals_list:
# Propose a default reference if not vals.get("reference"):
reference = slugify(vals.get("name")).replace("-", "_") # Propose a default reference
try: reference = slugify(vals.get("name")).replace("-", "_")
self._validate_reference(reference=reference) try:
vals["reference"] = reference self._validate_reference(reference=reference)
except ValidationError: # pylint: disable=W7938 vals["reference"] = reference
# Do not fill reference. except ValidationError: # pylint: disable=W7938
pass # Do not fill reference.
pass
return super(DocumentPage, self).create(vals) return super(DocumentPage, self).create(vals_list)

View File

@ -6,14 +6,15 @@ from odoo.tests.common import TransactionCase
class TestDocumentReference(TransactionCase): class TestDocumentReference(TransactionCase):
def setUp(self): @classmethod
super().setUp() def setUpClass(cls):
self.page_obj = self.env["document.page"] super(TestDocumentReference, cls).setUpClass()
self.history_obj = self.env["document.page.history"] cls.page_obj = cls.env["document.page"]
self.page1 = self.page_obj.create( cls.history_obj = cls.env["document.page.history"]
cls.page1 = cls.page_obj.create(
{"name": "Test Page 1", "content": "${r2}", "reference": "R1"} {"name": "Test Page 1", "content": "${r2}", "reference": "R1"}
) )
self.page2 = self.page_obj.create( cls.page2 = cls.page_obj.create(
{"name": "Test Page 1", "content": "${r1}", "reference": "r2"} {"name": "Test Page 1", "content": "${r1}", "reference": "r2"}
) )
@ -55,3 +56,23 @@ class TestDocumentReference(TransactionCase):
} }
) )
self.assertFalse(new_page_duplicated_name.reference) self.assertFalse(new_page_duplicated_name.reference)
def test_get_formview_action(self):
res = self.page1.get_formview_action()
view_id = self.env.ref("document_page.view_wiki_form").id
expected_result = {
"type": "ir.actions.act_window",
"context": {},
"res_model": "document.page",
"res_id": self.page1.id,
"view_mode": "form",
"view_type": "form",
"target": "current",
"views": [(view_id, "form")],
}
self.assertEqual(res, expected_result)
def test_compute_content_parsed(self):
self.page1.content = "<p>"
self.page1._compute_content_parsed()
self.assertEqual(str(self.page1.content_parsed), "<p></p>")