check_config check bootstrap errors (#12291)

This commit is contained in:
Johann Kellerman 2018-02-11 09:40:48 +02:00 committed by Paulus Schoutsen
parent fe1a85047e
commit 65c6f72c9d
2 changed files with 24 additions and 0 deletions

View File

@ -30,6 +30,8 @@ MOCKS = {
config_util._log_pkg_error), config_util._log_pkg_error),
'logger_exception': ("homeassistant.setup._LOGGER.error", 'logger_exception': ("homeassistant.setup._LOGGER.error",
setup._LOGGER.error), setup._LOGGER.error),
'logger_exception_bootstrap': ("homeassistant.bootstrap._LOGGER.error",
bootstrap._LOGGER.error),
} }
SILENCE = ( SILENCE = (
'homeassistant.bootstrap.clear_secret_cache', 'homeassistant.bootstrap.clear_secret_cache',
@ -229,6 +231,11 @@ def check(config_path):
res['except'].setdefault(ERROR_STR, []).append(msg % params) res['except'].setdefault(ERROR_STR, []).append(msg % params)
MOCKS['logger_exception'][1](msg, *params) MOCKS['logger_exception'][1](msg, *params)
def mock_logger_exception_bootstrap(msg, *params):
"""Log logger.exceptions."""
res['except'].setdefault(ERROR_STR, []).append(msg % params)
MOCKS['logger_exception_bootstrap'][1](msg, *params)
# Patches to skip functions # Patches to skip functions
for sil in SILENCE: for sil in SILENCE:
PATCHES[sil] = patch(sil) PATCHES[sil] = patch(sil)

View File

@ -212,3 +212,20 @@ class TestCheckConfig(unittest.TestCase):
assert res['components'] == {} assert res['components'] == {}
assert res['secret_cache'] == {} assert res['secret_cache'] == {}
assert res['secrets'] == {} assert res['secrets'] == {}
def test_bootstrap_error(self): \
# pylint: disable=no-self-use,invalid-name
"""Test a valid platform setup."""
files = {
'badbootstrap.yaml': BASE_CONFIG + 'automation: !include no.yaml',
}
with patch_yaml_files(files):
res = check_config.check(get_test_config_dir('badbootstrap.yaml'))
change_yaml_files(res)
err = res['except'].pop(check_config.ERROR_STR)
assert len(err) == 1
assert res['except'] == {}
assert res['components'] == {}
assert res['secret_cache'] == {}
assert res['secrets'] == {}