message_ix_models.tests.util.test_config.C1
- class message_ix_models.tests.util.test_config.C1(foo_1: int = 1, foo_2: str = '', foo_3: bool = True)[source]
Bases:
ConfigHelperA class which inherits from ConfigHelper.
Methods
__init__([foo_1, foo_2, foo_3])from_dict(data)Construct an instance from data with name manipulation.
hexdigest([length])Return a hex digest that is unique for distinct settings on the instance.
read_file(path[, key])Update configuration from file.
replace(**kwargs)Like
dataclasses.replace()with name manipulation.update([arg])Update attributes in-place.
Attributes
foo_1foo_2foo_3- hexdigest(length: int = -1) str
Return a hex digest that is unique for distinct settings on the instance.
Uses
dataclasses.asdict(). This means that if the names of fields defined by a subclass change—including if fields are added or removed—the result will differ. The returned value should be the same across versions of Python.- Returns:
If length is greater than 0, a string of this length; otherwise a 32-character string from
blake2s.hexdigest().- Return type:
- read_file(path: Path, key: str = '') None
Update configuration from file.
- Parameters:
path – to a
.yamlfile containing a top-level mapping.key – if given, read data not from the top level of the file, but from a sub- mapping under the top-level key key.
optional – if given, read data not from the top level of the file, but from a sub- mapping under the top-level key key.
- replace(**kwargs)
Like
dataclasses.replace()with name manipulation.
- update(arg: Mapping | None = None, **kwargs) None
Update attributes in-place.
- Raises:
AttributeError – Any of the kwargs are not fields in the data class.