You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.3 KiB
47 lines
1.3 KiB
# Copyright 2017 LasLabs Inc.
|
|
# Copyright 2018 ACSONE
|
|
# Copyright 2018 Camptocamp
|
|
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html).
|
|
|
|
from odoo import fields, models
|
|
|
|
|
|
def setup_test_model(env, model_cls):
|
|
"""Pass a test model class and initialize it.
|
|
|
|
Courtesy of SBidoul from https://github.com/OCA/mis-builder :)
|
|
"""
|
|
model_cls._build_model(env.registry, env.cr)
|
|
env.registry.setup_models(env.cr)
|
|
env.registry.init_models(
|
|
env.cr, [model_cls._name],
|
|
dict(env.context, update_custom_fields=True)
|
|
)
|
|
|
|
|
|
def teardown_test_model(env, model_cls):
|
|
"""Pass a test model class and deinitialize it.
|
|
|
|
Courtesy of SBidoul from https://github.com/OCA/mis-builder :)
|
|
"""
|
|
if not getattr(model_cls, '_teardown_no_delete', False):
|
|
del env.registry.models[model_cls._name]
|
|
env.registry.setup_models(env.cr)
|
|
|
|
|
|
class ResPartner(models.Model):
|
|
_name = 'res.partner'
|
|
_inherit = 'res.partner'
|
|
_teardown_no_delete = True
|
|
|
|
social_security = fields.Char(
|
|
compute=lambda s: s._compute_identification(
|
|
'social_security', 'SSN',
|
|
),
|
|
inverse=lambda s: s._inverse_identification(
|
|
'social_security', 'SSN',
|
|
),
|
|
search=lambda s, *a: s._search_identification(
|
|
'SSN', *a
|
|
),
|
|
)
|