tests.toml: fix issue when manifest contains questions with no default

This commit is contained in:
Alexandre Aubin 2023-02-03 15:19:38 +01:00
parent 9c5e62ad6d
commit 83d4d8f292
2 changed files with 5 additions and 4 deletions

View file

@ -4,7 +4,7 @@ import sys
import json
import toml
def get_default_values_for_questions(manifest):
def get_default_values_for_questions(manifest, raise_if_no_default=True):
base_default_value_per_arg_type = {
("domain", "domain"): "domain.tld",
@ -37,8 +37,9 @@ def get_default_values_for_questions(manifest):
choices = str(question["choices"])
else:
choices = list(question["choices"].keys())
yield (name, question["choices"][0])
yield (name, choices[0])
else:
if raise_if_no_default:
raise Exception("No default value could be computed for arg " + name)
if __name__ == '__main__':

View file

@ -136,7 +136,7 @@ def build_test_list(basedir):
is_webapp = os.system(f"grep -q '^ynh_add_nginx_config' '{basedir}/scripts/install'") == 0
from default_install_args import get_default_values_for_questions
default_install_args = {k: v for k, v in get_default_values_for_questions(manifest)}
default_install_args = {k: v for k, v in get_default_values_for_questions(manifest, raise_if_no_default=False)}
base_test_list = list(generate_test_list_base(test_manifest, default_install_args, is_webapp, is_multi_instance))
test_list = {test_suite_id: tests for test_suite_id, tests in filter_test_list(test_manifest, base_test_list)}