diff --git a/odoo/addons/test_access_rights/tests/test_feedback.py b/odoo/addons/test_access_rights/tests/test_feedback.py index 40515026f3c..2dc4a00d7a5 100644 --- a/odoo/addons/test_access_rights/tests/test_feedback.py +++ b/odoo/addons/test_access_rights/tests/test_feedback.py @@ -189,11 +189,11 @@ class TestIRRuleFeedback(Feedback): p = self.env['test_access_right.parent'].create({'obj_id': self.record.id}) - self.assertRaisesRegex( + with self.assertRaisesRegex( AccessError, - r"Implicitly accessed through \\'Object for testing related access rights\\' \(test_access_right.parent\)\.", - p.with_user(self.user).write, {'val': 1} - ) + r"Implicitly accessed through 'Object for testing related access rights' \(test_access_right.parent\)\.", + ): + p.with_user(self.user).write({'val': 1}) def test_locals(self): self.env.ref('base.group_no_one').write( @@ -308,11 +308,11 @@ Note: this might be a multi-company issue. p = self.env['test_access_right.parent'].create({'obj_id': self.record.id}) p.flush() p.invalidate_cache() - self.assertRaisesRegex( + with self.assertRaisesRegex( AccessError, - r"Implicitly accessed through \\'Object for testing related access rights\\' \(test_access_right.parent\)\.", - lambda: p.with_user(self.user).val - ) + r"Implicitly accessed through 'Object for testing related access rights' \(test_access_right.parent\)\.", + ): + p.with_user(self.user).val class TestFieldGroupFeedback(Feedback): diff --git a/odoo/exceptions.py b/odoo/exceptions.py index b3cc6b48f1e..17a3d89ede8 100644 --- a/odoo/exceptions.py +++ b/odoo/exceptions.py @@ -29,6 +29,12 @@ class except_orm(Exception): self.value = value self.args = (name, value) + def __str__(self): + if not self.value: + return str(self.name) + else: + return super().__str__() + class UserError(except_orm): """Generic error managed by the client.