[mod] refactor error handling mecanism

This commit is contained in:
Laurent Peuch 2015-12-08 07:28:57 +01:00
parent 7a1bdb033d
commit 2392e52dbd

View File

@ -5,15 +5,22 @@ import sys
import yaml import yaml
def main():
if not os.path.exists(os.path.join(os.getcwd(), "settings.yaml")): def error(test, error_message):
sys.stderr.write("I can't find a settings.yaml in the current working directory, abort\n") if not test:
sys.stderr.write(error_message)
sys.stderr.write("\n")
sys.exit(1) sys.exit(1)
def main():
error(os.path.exists(os.path.join(os.getcwd(), "settings.yaml")), "I can't find a settings.yaml in the current working directory, abort")
settings = yaml.safe_load("settings.yaml") settings = yaml.safe_load("settings.yaml")
assert isinstance(settings, dict), "Your settings.yaml should be a dict" error(isinstance(settings, dict), "Your settings.yaml should be a dict")
assert settings.get("title"), "You should specify a title in your main settings.yaml" error(settings.get("title"), "You should specify a title in your main settings.yaml")
title = settings["title"] title = settings["title"]
sub_title = settings.get("sub_title", "") sub_title = settings.get("sub_title", "")