[Erp5-report] r27262 - /erp5/trunk/products/ERP5/tests/testWorklist.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Fri May 29 17:22:18 CEST 2009
Author: romain
Date: Fri May 29 17:22:18 2009
New Revision: 27262
URL: http://svn.erp5.org?rev=27262&view=rev
Log:
Test worklist guard.
Modified:
erp5/trunk/products/ERP5/tests/testWorklist.py
Modified: erp5/trunk/products/ERP5/tests/testWorklist.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testWorklist.py?rev=27262&r1=27261&r2=27262&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testWorklist.py [utf8] (original)
+++ erp5/trunk/products/ERP5/tests/testWorklist.py [utf8] Fri May 29 17:22:18 2009
@@ -383,6 +383,47 @@
self.checkWorklist(result, 'has_region', 2)
self.checkWorklist(result, 'has_role', 1)
+ def test_03_worklist_guard(self, quiet=0, run=run_all_test):
+ """
+ Test worklist guard
+ """
+ if not run:
+ return
+
+ workflow_tool = self.getWorkflowTool()
+ self.createManagerAndLogin()
+ self.createUsers()
+
+ self.logMessage("Create worklists with guard expression")
+ self.createWorklist(self.checked_workflow, 'guard_expression_worklist',
+ 'valid_guard_expression',
+ portal_type=self.checked_portal_type,
+ validation_state='validated',
+ guard_roles="Associate",
+ guard_expr='python: user.getId() == "bar"')
+
+ document = self.createDocument()
+ document.manage_addLocalRoles("bar", ["Associate"])
+ document.manage_addLocalRoles("foo", ["Associate"])
+ document.validate()
+ document.reindexObject()
+ transaction.commit()
+ self.tic()
+ self.clearCache()
+
+ self.logMessage(" Check that manager can not access worklist")
+ result = workflow_tool.listActions(object=document)
+ self.checkWorklist(result, 'valid_guard_expression', 0)
+
+ self.logMessage(" Check that user bar can access worklist")
+ self.login('bar')
+ result = workflow_tool.listActions(object=document)
+ self.checkWorklist(result, 'valid_guard_expression', 1)
+
+ self.logMessage(" Check that user foo can not access worklist")
+ self.login('foo')
+ result = workflow_tool.listActions(object=document)
+ self.checkWorklist(result, 'valid_guard_expression', 0)
def test_suite():
suite = unittest.TestSuite()
More information about the Erp5-report
mailing list