PathConfig => MixConfig

This commit is contained in:
Emmanuel Garette 2018-10-31 18:26:20 +01:00
parent 4f4ecfd3a8
commit f83937a143
5 changed files with 1128 additions and 1128 deletions

1112
test/test_mixconfig.py Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -15,7 +15,7 @@
from .function import Params, ParamOption, ParamValue, ParamContext from .function import Params, ParamOption, ParamValue, ParamContext
from .option import * from .option import *
from .error import APIError from .error import APIError
from .api import Config, MetaConfig, GroupConfig, PathConfig from .api import Config, MetaConfig, GroupConfig, MixConfig
from .option import __all__ as all_options from .option import __all__ as all_options
from .setting import owners, undefined from .setting import owners, undefined
@ -25,7 +25,7 @@ allfuncs = ['Params',
'ParamValue', 'ParamValue',
'ParamContext', 'ParamContext',
'MetaConfig', 'MetaConfig',
'PathConfig', 'MixConfig',
'GroupConfig', 'GroupConfig',
'Config', 'Config',
'APIError', 'APIError',

View file

@ -22,7 +22,7 @@ from typing import List, Any, Optional, Callable, Union, Dict
from .error import APIError, ConfigError, SlaveError, PropertiesOptionError from .error import APIError, ConfigError, SlaveError, PropertiesOptionError
from .i18n import _ from .i18n import _
from .setting import ConfigBag, OptionBag, owners, groups, Undefined, undefined, FORBIDDEN_SET_PROPERTIES from .setting import ConfigBag, OptionBag, owners, groups, Undefined, undefined, FORBIDDEN_SET_PROPERTIES
from .config import KernelConfig, SubConfig, KernelGroupConfig, KernelMetaConfig, KernelPathConfig from .config import KernelConfig, SubConfig, KernelGroupConfig, KernelMetaConfig, KernelMixConfig
from .option import ChoiceOption, OptionDescription from .option import ChoiceOption, OptionDescription
@ -1140,8 +1140,8 @@ class _TiramisuContextGroupConfig(TiramisuContext):
return Config(config) return Config(config)
class _TiramisuContextPathConfig(_TiramisuContextGroupConfig, _TiramisuContextConfigReset): class _TiramisuContextMixConfig(_TiramisuContextGroupConfig, _TiramisuContextConfigReset):
"""Actions to PathConfig""" """Actions to MixConfig"""
pass pass
@ -1193,8 +1193,8 @@ class TiramisuAPI(TiramisuHelp):
config = _TiramisuContextGroupConfig config = _TiramisuContextGroupConfig
elif config_type == 'meta': elif config_type == 'meta':
config = _TiramisuContextMetaConfig config = _TiramisuContextMetaConfig
elif config_type == 'path': elif config_type == 'mix':
config = _TiramisuContextPathConfig config = _TiramisuContextMixConfig
else: else:
config = _TiramisuContextConfig config = _TiramisuContextConfig
return config(self._config_bag) return config(self._config_bag)
@ -1267,7 +1267,7 @@ class MetaConfig(TiramisuAPI):
super().__init__(config) super().__init__(config)
class PathConfig(TiramisuAPI): class MixConfig(TiramisuAPI):
"""MetaConfig object that enables us to handle the sub configuration's options""" """MetaConfig object that enables us to handle the sub configuration's options"""
def __init__(self, def __init__(self,
optiondescription: OptionDescription, optiondescription: OptionDescription,
@ -1281,7 +1281,7 @@ class PathConfig(TiramisuAPI):
else: else:
_children.append(child) _children.append(child)
config = KernelPathConfig(optiondescription, config = KernelMixConfig(optiondescription,
_children, _children,
session_id=session_id, session_id=session_id,
persistent=persistent) persistent=persistent)

View file

@ -671,7 +671,7 @@ class _CommonConfig(SubConfig):
metaconfig_prefix=None, metaconfig_prefix=None,
child=None, child=None,
deep=False): deep=False):
assert isinstance(self, (KernelConfig, KernelPathConfig)), _('cannot duplicate {}').format(self.__class__.__name__) assert isinstance(self, (KernelConfig, KernelMixConfig)), _('cannot duplicate {}').format(self.__class__.__name__)
if isinstance(self, KernelConfig): if isinstance(self, KernelConfig):
duplicated_config = KernelConfig(self._impl_descr, duplicated_config = KernelConfig(self._impl_descr,
_duplicate=True, _duplicate=True,
@ -812,7 +812,7 @@ class KernelGroupConfig(_CommonConfig):
resetted_opts=None): resetted_opts=None):
if resetted_opts is None: if resetted_opts is None:
resetted_opts = [] resetted_opts = []
if isinstance(self, KernelPathConfig): if isinstance(self, KernelMixConfig):
super().cfgimpl_reset_cache(option_bag, super().cfgimpl_reset_cache(option_bag,
resetted_opts=copy(resetted_opts)) resetted_opts=copy(resetted_opts))
for child in self._impl_children: for child in self._impl_children:
@ -889,7 +889,7 @@ class KernelGroupConfig(_CommonConfig):
#so search only one time the option for all children #so search only one time the option for all children
if bypath is undefined and byname is not None and \ if bypath is undefined and byname is not None and \
isinstance(self, isinstance(self,
KernelPathConfig): KernelMixConfig):
bypath = next(self.find(bytype=None, bypath = next(self.find(bytype=None,
byvalue=undefined, byvalue=undefined,
byname=byname, byname=byname,
@ -959,9 +959,9 @@ class KernelGroupConfig(_CommonConfig):
raise ConfigError(_('unknown config "{}"').format(name)) raise ConfigError(_('unknown config "{}"').format(name))
class KernelPathConfig(KernelGroupConfig): class KernelMixConfig(KernelGroupConfig):
__slots__ = tuple() __slots__ = tuple()
impl_type = 'path' impl_type = 'mix'
def __init__(self, def __init__(self,
optiondescription, optiondescription,
@ -1147,7 +1147,7 @@ class KernelPathConfig(KernelGroupConfig):
_commit=False) _commit=False)
except AttributeError: except AttributeError:
pass pass
if isinstance(child, KernelPathConfig): if isinstance(child, KernelMixConfig):
child.reset(path, child.reset(path,
False, False,
rconfig_bag, rconfig_bag,
@ -1160,7 +1160,7 @@ class KernelPathConfig(KernelGroupConfig):
self.cfgimpl_get_values()._p_.commit() self.cfgimpl_get_values()._p_.commit()
class KernelMetaConfig(KernelPathConfig): class KernelMetaConfig(KernelMixConfig):
__slots__ = tuple() __slots__ = tuple()
impl_type = 'meta' impl_type = 'meta'