def test_valid_param( option, values, input_type, blank_cli_options, default_config, valid_config_types ): for value in values: config = {option: value} if input_type == "cli": validated_config = merge_config_sources( cli_options=config, user_config=None, default_config=default_config ) else: validated_config = merge_config_sources( cli_options=blank_cli_options, user_config=config, default_config=default_config ) check_validated_config(validated_config, valid_config_types) assert len(validated_config) == len(blank_cli_options)
def test_invalid_param(option, values, input_type, blank_cli_options, default_config): if input_type == "cli" and option == "rules": return for value in values: # Need to refresh these variables as they might be altered during merge defaults = default_config blanks = blank_cli_options config = {option: value} with raises(ConfigLoadError): if input_type == "cli": merge_config_sources(cli_options=config, user_config=None, default_config=defaults) else: merge_config_sources( cli_options=blanks, user_config=config, default_config=defaults )
def test_valid_param( option, values, input_type, blank_cli_options, default_config, valid_config_types ): for value in values: blanks = deepcopy(blank_cli_options) if input_type == "cli": blanks[option] = value validated_config = merge_config_sources( cli_options=blanks, user_config=None, default_config=default_config ) else: config = {option: value} validated_config = merge_config_sources( cli_options=blanks, user_config=config, default_config=default_config ) check_validated_config(validated_config, valid_config_types)
def test_rule_defaults_inherited_from_global_param(default_config, blank_cli_options): user_config = {"rules": [{"window_class": "foo"}]} validated = merge_config_sources(blank_cli_options, default_config, user_config) assert validated["rules"][0]["flash_opacity"] == default_config[ "flash_opacity"]
def test_rules_validation(rules, blank_cli_options, default_config, valid_config_types): rules_dict = {"rules": rules} validated_config = merge_config_sources(blank_cli_options, default_config, rules_dict) for rule in validated_config["rules"]: check_validated_config(rule, valid_config_types)
def test_rules_added_to_config_dict_if_not_present_in_config(default_config, blank_cli_options): validated = merge_config_sources(blank_cli_options, default_config, default_config) assert "rules" in validated