mirror of
https://github.com/OCA/knowledge.git
synced 2025-12-19 03:42:19 -06:00
[FIX+IMP] document_page_approval:
* Rename classes and files to match model names, and removed workflow engine. * Some fields should be readonly if not in draft. * Allow Knowledge / Manager to edit previous history names and summary * Improve ux by adding user_has_drafts to document pages. * Changes because of implementation of active field on document_page * Add ir.rules for document.page.history * Allow to quickly cancel&draft from 'to approve' state * FIX BUG: am_i_approver was being run as sudo(), hence always giving the user Approving rights. * FIX hooks Because of default='draft' on the state field, state IS NULL wasn't selecting anything. Left the condition in case this is changed in the future.
This commit is contained in:
committed by
FernandoRomera
parent
d0734794fa
commit
defb0b67af
@@ -47,7 +47,7 @@ class TestDocumentPageApproval(common.TransactionCase):
|
||||
self.assertTrue(chreq.am_i_approver)
|
||||
|
||||
# approve
|
||||
chreq.page_approval_approved()
|
||||
chreq.action_approve()
|
||||
self.assertEqual(chreq.state, 'approved')
|
||||
self.assertEqual(chreq.content, page.content)
|
||||
|
||||
@@ -58,7 +58,7 @@ class TestDocumentPageApproval(common.TransactionCase):
|
||||
('page_id', '=', page.id),
|
||||
('state', '!=', 'approved')
|
||||
])[0]
|
||||
chreq.page_approval_approved()
|
||||
chreq.action_approve()
|
||||
self.assertEqual(page.content, 'New content')
|
||||
|
||||
def test_change_request_auto_approve(self):
|
||||
@@ -74,7 +74,7 @@ class TestDocumentPageApproval(common.TransactionCase):
|
||||
self.history_obj.search([
|
||||
('page_id', '=', page.id),
|
||||
('state', '!=', 'approved')
|
||||
]).page_approval_approved()
|
||||
]).action_approve()
|
||||
|
||||
# new change request from scrath
|
||||
chreq = self.history_obj.create({
|
||||
@@ -88,25 +88,25 @@ class TestDocumentPageApproval(common.TransactionCase):
|
||||
self.assertNotEqual(page.approved_date, chreq.approved_date)
|
||||
self.assertNotEqual(page.approved_uid, chreq.approved_uid)
|
||||
|
||||
chreq.page_approval_to_approve()
|
||||
chreq.action_to_approve()
|
||||
self.assertEqual(chreq.state, 'to approve')
|
||||
self.assertNotEqual(page.content, chreq.content)
|
||||
self.assertNotEqual(page.approved_date, chreq.approved_date)
|
||||
self.assertNotEqual(page.approved_uid, chreq.approved_uid)
|
||||
|
||||
chreq.page_approval_cancelled()
|
||||
chreq.action_cancel()
|
||||
self.assertEqual(chreq.state, 'cancelled')
|
||||
self.assertNotEqual(page.content, chreq.content)
|
||||
self.assertNotEqual(page.approved_date, chreq.approved_date)
|
||||
self.assertNotEqual(page.approved_uid, chreq.approved_uid)
|
||||
|
||||
chreq.page_approval_draft()
|
||||
chreq.action_draft()
|
||||
self.assertEqual(chreq.state, 'draft')
|
||||
self.assertNotEqual(page.content, chreq.content)
|
||||
self.assertNotEqual(page.approved_date, chreq.approved_date)
|
||||
self.assertNotEqual(page.approved_uid, chreq.approved_uid)
|
||||
|
||||
chreq.page_approval_approved()
|
||||
chreq.action_approve()
|
||||
self.assertEqual(chreq.state, 'approved')
|
||||
self.assertEqual(page.content, chreq.content)
|
||||
self.assertEqual(page.approved_date, chreq.approved_date)
|
||||
|
||||
Reference in New Issue
Block a user