From 502d29b95238e569d50bb0bea43cbbbb525cbb6a Mon Sep 17 00:00:00 2001 From: deadc0de6 Date: Thu, 18 Aug 2022 23:35:56 +0200 Subject: [PATCH] clear error on bad config --- dotdrop/cfg_aggregator.py | 7 +++++-- tests/test_yamlcfg.py | 3 ++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/dotdrop/cfg_aggregator.py b/dotdrop/cfg_aggregator.py index 8965aab..01f1125 100644 --- a/dotdrop/cfg_aggregator.py +++ b/dotdrop/cfg_aggregator.py @@ -17,7 +17,7 @@ from dotdrop.profile import Profile from dotdrop.action import Action, Transform from dotdrop.logger import Logger from dotdrop.utils import strip_home, debug_list, debug_dict -from dotdrop.exceptions import UndefinedException +from dotdrop.exceptions import UndefinedException, YamlException TILD = '~' @@ -41,7 +41,10 @@ class CfgAggregator: self.debug = debug self.dry = dry self.log = Logger(debug=self.debug) - self._load() + try: + self._load() + except Exception as exc: + raise YamlException(exc) from exc self._validate() ######################################################## diff --git a/tests/test_yamlcfg.py b/tests/test_yamlcfg.py index 8539e33..366a63a 100644 --- a/tests/test_yamlcfg.py +++ b/tests/test_yamlcfg.py @@ -12,6 +12,7 @@ import os from dotdrop.cfg_yaml import CfgYaml as Cfg from dotdrop.options import Options from dotdrop.linktypes import LinkTypes +from dotdrop.exceptions import YamlException from tests.helpers import (SubsetTestCase, _fake_args, clean, create_fake_config, create_yaml_keyval, get_tempdir, populate_fake_config, yaml_load, yaml_dump) @@ -129,7 +130,7 @@ profiles: args['--cfg'] = 'mocked' args['--verbose'] = True - with self.assertRaises(ValueError): + with self.assertRaises(YamlException): o = Options(args=args) print(o.import_link)