From d273e72f35fe560981639a999e5c55521b7399e7 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Fri, 30 Sep 2011 11:37:55 +0200 Subject: [PATCH] [IMP] xmlrpc/exceptions: added a model and a view to exercise exception handling. bzr revid: vmt@openerp.com-20110930093755-ee6569l3bhgrervp --- tests/addons/test_exceptions/__init__.py | 3 + tests/addons/test_exceptions/__openerp__.py | 15 +++++ tests/addons/test_exceptions/models.py | 33 ++++++++++ tests/addons/test_exceptions/view.xml | 68 +++++++++++++++++++++ 4 files changed, 119 insertions(+) create mode 100644 tests/addons/test_exceptions/__init__.py create mode 100644 tests/addons/test_exceptions/__openerp__.py create mode 100644 tests/addons/test_exceptions/models.py create mode 100644 tests/addons/test_exceptions/view.xml diff --git a/tests/addons/test_exceptions/__init__.py b/tests/addons/test_exceptions/__init__.py new file mode 100644 index 00000000000..fe4487156b1 --- /dev/null +++ b/tests/addons/test_exceptions/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- +import models +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/tests/addons/test_exceptions/__openerp__.py b/tests/addons/test_exceptions/__openerp__.py new file mode 100644 index 00000000000..bac853e301a --- /dev/null +++ b/tests/addons/test_exceptions/__openerp__.py @@ -0,0 +1,15 @@ +# -*- coding: utf-8 -*- +{ + 'name': 'test-exceptions', + 'version': '0.1', + 'category': 'Tests', + 'description': """A module to generate exceptions.""", + 'author': 'OpenERP SA', + 'maintainer': 'OpenERP SA', + 'website': 'http://www.openerp.com', + 'depends': ['base'], + 'data': ['view.xml'], + 'installable': True, + 'active': False, +} +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/tests/addons/test_exceptions/models.py b/tests/addons/test_exceptions/models.py new file mode 100644 index 00000000000..45f0e6dbd47 --- /dev/null +++ b/tests/addons/test_exceptions/models.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +import openerp + +class m(openerp.osv.osv.Model): + """ This model exposes a few methods that will raise the different + exceptions that must be handled by the server (and its RPC layer) + and the clients. + """ + _name = 'test.exceptions.model' + + def generate_except_osv(self, cr, uid, ids, context=None): + # title is ignored in the new (6.1) exceptions + raise openerp.osv.osv.except_osv('title', 'description') + + def generate_except_orm(self, cr, uid, ids, context=None): + # title is ignored in the new (6.1) exceptions + raise openerp.osv.orm.except_orm('title', 'description') + + def generate_warning(self, cr, uid, ids, context=None): + raise openerp.exceptions.Warning('description') + + def generate_access_denied(self, cr, uid, ids, context=None): + raise openerp.exceptions.AccessDenied() + + def generate_access_error(self, cr, uid, ids, context=None): + raise openerp.exceptions.AccessError('description') + + def generate_exc_access_denied(self, cr, uid, ids, context=None): + raise Exception('AccessDenied') + + def generate_undefined(self, cr, uid, ids, context=None): + self.surely_undefined_sumbol +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/tests/addons/test_exceptions/view.xml b/tests/addons/test_exceptions/view.xml new file mode 100644 index 00000000000..296f862aec4 --- /dev/null +++ b/tests/addons/test_exceptions/view.xml @@ -0,0 +1,68 @@ + + + + + + Test exceptions + test.exceptions.model + form + +
+