Initial import from Docker volume
This commit is contained in:
52
tests/tools.py
Executable file
52
tests/tools.py
Executable file
@@ -0,0 +1,52 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
|
||||
import unittest
|
||||
|
||||
from proteus import Model, Wizard
|
||||
from proteus import config as pconfig
|
||||
|
||||
from .test_tryton import backup_db_cache, drop_create, restore_db_cache
|
||||
|
||||
__all__ = ['activate_modules', 'set_user']
|
||||
|
||||
|
||||
def activate_modules(modules):
|
||||
if isinstance(modules, str):
|
||||
modules = [modules]
|
||||
cache_name = '-'.join(modules)
|
||||
if restore_db_cache(cache_name):
|
||||
return _get_config()
|
||||
drop_create()
|
||||
|
||||
cfg = _get_config()
|
||||
Module = Model.get('ir.module')
|
||||
records = Module.find([
|
||||
('name', 'in', modules),
|
||||
])
|
||||
assert len(records) == len(modules)
|
||||
Module.click(records, 'activate')
|
||||
Wizard('ir.module.activate_upgrade').execute('upgrade')
|
||||
|
||||
backup_db_cache(cache_name)
|
||||
return cfg
|
||||
|
||||
|
||||
def _get_config():
|
||||
return pconfig.set_trytond()
|
||||
|
||||
|
||||
def set_user(user, config=None):
|
||||
if not config:
|
||||
config = pconfig.get_config()
|
||||
User = Model.get('res.user', config=config)
|
||||
config.user = int(user)
|
||||
config._context = User.get_preferences(True, {})
|
||||
|
||||
|
||||
_dummy_test_case = unittest.TestCase()
|
||||
_dummy_test_case.maxDiff = None
|
||||
|
||||
|
||||
def __getattr__(name):
|
||||
return getattr(_dummy_test_case, name)
|
||||
Reference in New Issue
Block a user