[MIG] test_exceptions: convert code to the new API

This commit is contained in:
Raphael Collet
2016-08-10 13:14:16 +02:00
parent 94e82753ac
commit bd00fcd5b1
3 changed files with 80 additions and 56 deletions
+3 -1
View File
@@ -1,2 +1,4 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import models # Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import models
@@ -1,4 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
{ {
'name': 'test-exceptions', 'name': 'test-exceptions',
'version': '0.1', 'version': '0.1',
+76 -55
View File
@@ -1,89 +1,110 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import openerp.exceptions # Part of Odoo. See LICENSE file for full copyright and licensing details.
import openerp.osv.orm
import openerp.osv.osv
import openerp.tools.safe_eval
from openerp.exceptions import UserError
from openerp.exceptions import except_orm
class m(openerp.osv.osv.Model): import odoo.exceptions
import odoo.osv.osv
from odoo import models, api
from odoo.tools.safe_eval import safe_eval
class m(models.Model):
""" This model exposes a few methods that will raise the different """ This model exposes a few methods that will raise the different
exceptions that must be handled by the server (and its RPC layer) exceptions that must be handled by the server (and its RPC layer)
and the clients. and the clients.
""" """
_name = 'test.exceptions.model' _name = 'test.exceptions.model'
def generate_except_osv(self, cr, uid, ids, context=None): @api.multi
def generate_except_osv(self):
# title is ignored in the new (6.1) exceptions # title is ignored in the new (6.1) exceptions
raise openerp.osv.osv.except_osv('title', 'description') raise odoo.osv.osv.except_osv('title', 'description')
def generate_except_orm(self, cr, uid, ids, context=None): @api.multi
def generate_except_orm(self):
# title is ignored in the new (6.1) exceptions # title is ignored in the new (6.1) exceptions
raise except_orm('title', 'description') raise odoo.exceptions.except_orm('title', 'description')
def generate_warning(self, cr, uid, ids, context=None): @api.multi
raise openerp.exceptions.Warning('description') def generate_warning(self):
raise odoo.exceptions.Warning('description')
def generate_redirect_warning(self, cr, uid, ids, context=None): @api.multi
dummy, action_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'test_exceptions', 'action_test_exceptions') def generate_redirect_warning(self):
raise openerp.exceptions.RedirectWarning('description', action_id, 'Go to the redirection') action = self.env.ref('test_exceptions.action_test_exceptions')
raise odoo.exceptions.RedirectWarning('description', action.id, 'Go to the redirection')
def generate_access_denied(self, cr, uid, ids, context=None): @api.multi
raise openerp.exceptions.AccessDenied() def generate_access_denied(self):
raise odoo.exceptions.AccessDenied()
def generate_access_error(self, cr, uid, ids, context=None): @api.multi
raise openerp.exceptions.AccessError('description') def generate_access_error(self):
raise odoo.exceptions.AccessError('description')
def generate_exc_access_denied(self, cr, uid, ids, context=None): @api.multi
def generate_exc_access_denied(self):
raise Exception('AccessDenied') raise Exception('AccessDenied')
def generate_undefined(self, cr, uid, ids, context=None): @api.multi
def generate_undefined(self):
self.surely_undefined_symbol self.surely_undefined_symbol
def generate_user_error(self, cr, uid, ids, context=None): @api.multi
raise UserError('description') def generate_user_error(self):
raise odoo.exceptions.UserError('description')
def generate_missing_error(self, cr, uid, ids, context=None): @api.multi
raise openerp.exceptions.MissingError('description') def generate_missing_error(self):
raise odoo.exceptions.MissingError('description')
def generate_validation_error(self, cr, uid, ids, context=None): @api.multi
raise openerp.exceptions.ValidationError('description') def generate_validation_error(self):
raise odoo.exceptions.ValidationError('description')
@api.multi
def generate_except_osv_safe_eval(self):
self.generate_safe_eval(self.generate_except_osv)
def generate_except_osv_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_except_osv, context) def generate_except_orm_safe_eval(self):
self.generate_safe_eval(self.generate_except_orm)
def generate_except_orm_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_except_orm, context) def generate_warning_safe_eval(self):
self.generate_safe_eval(self.generate_warning)
def generate_warning_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_warning, context) def generate_redirect_warning_safe_eval(self):
self.generate_safe_eval(self.generate_redirect_warning)
def generate_redirect_warning_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_redirect_warning, context) def generate_access_denied_safe_eval(self):
self.generate_safe_eval(self.generate_access_denied)
def generate_access_denied_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_access_denied, context) def generate_access_error_safe_eval(self):
self.generate_safe_eval(self.generate_access_error)
def generate_access_error_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_access_error, context) def generate_exc_access_denied_safe_eval(self):
self.generate_safe_eval(self.generate_exc_access_denied)
def generate_exc_access_denied_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_exc_access_denied, context) def generate_undefined_safe_eval(self):
self.generate_safe_eval(self.generate_undefined)
def generate_undefined_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_undefined, context) def generate_user_error_safe_eval(self):
self.generate_safe_eval(self.generate_user_error)
def generate_user_error_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_user_error, context) def generate_missing_error_safe_eval(self):
self.generate_safe_eval(self.generate_missing_error)
def generate_missing_error_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_missing_error, context) def generate_validation_error_safe_eval(self):
self.generate_safe_eval(self.generate_validation_error)
def generate_validation_error_safe_eval(self, cr, uid, ids, context=None): @api.multi
self.generate_safe_eval(cr, uid, ids, self.generate_validation_error, context) def generate_safe_eval(self, f):
globals_dict = { 'generate': f }
safe_eval("generate()", mode='exec', globals_dict=globals_dict)
def generate_safe_eval(self, cr, uid, ids, f, context):
globals_dict = { 'generate': lambda *args: f(cr, uid, ids, context) }
openerp.tools.safe_eval.safe_eval("generate()", mode='exec', globals_dict=globals_dict)