diff --git a/src/yunohost/app.py b/src/yunohost/app.py index 007ee2d37..0349f92e7 100644 --- a/src/yunohost/app.py +++ b/src/yunohost/app.py @@ -2423,6 +2423,10 @@ class YunoHostArgumentFormatParser(object): if parsed_question.ask is None: parsed_question.ask = "Enter value for '%s':" % parsed_question.name + + # Empty value is parsed as empty string + if parsed_question.default == "": + parsed_question.default = None return parsed_question diff --git a/src/yunohost/tests/test_apps_arguments_parsing.py b/src/yunohost/tests/test_apps_arguments_parsing.py index ff5d1d15d..ca08f58ff 100644 --- a/src/yunohost/tests/test_apps_arguments_parsing.py +++ b/src/yunohost/tests/test_apps_arguments_parsing.py @@ -260,6 +260,10 @@ def test_parse_args_in_yunohost_format_password_no_input_optional(): assert _parse_args_in_yunohost_format(answers, questions) == expected_result + questions = [{"name": "some_password", "type": "password", "optional": True, "default": ""}] + + assert _parse_args_in_yunohost_format(answers, questions) == expected_result + def test_parse_args_in_yunohost_format_password_optional_with_input(): questions = [