Refactoring merge Method into a New Class & Adding Unit Tests (#137)

This commit is contained in:
Adam Outler
2023-06-19 22:35:53 -04:00
committed by GitHub
parent 9879a9f05b
commit db3f622023
5 changed files with 219 additions and 14 deletions

View File

@@ -53,6 +53,7 @@ from ..yamlconf import Option
from ..yamlconf import build_raw_from_options
from ..yamlconf.dumper import make_config_dump
from ..yamlconf.loader import load_yaml_file
from ..yamlconf.merger import yaml_merge
from ..validators.basic import valid_stripped_string
from ..validators.basic import valid_stripped_string_not_empty
@@ -177,8 +178,8 @@ def _init_config(config_path: str, override_options: list[str], **load_flags: bo
scheme = _get_config_scheme()
try:
tools.merge(raw_config, (raw_config.pop("override", {}) or {}))
tools.merge(raw_config, build_raw_from_options(override_options))
yaml_merge(raw_config, (raw_config.pop("override", {}) or {}))
yaml_merge(raw_config, build_raw_from_options(override_options), "raw command line options")
_patch_raw(raw_config)
config = make_config(raw_config, scheme)