test the value of completions

This commit is contained in:
Isaac 2023-05-06 11:29:14 -07:00
parent aa564ac5fe
commit ccfdd6806f
No known key found for this signature in database
GPG key ID: E69FB5A841448A48

View file

@ -114,7 +114,7 @@ def test_has_unknown_required_param_options_detects_unknown_required_param_optio
@pytest.mark.parametrize('action, option_type', test_data)
def test_has_exact_options_detects_exact_options(action: Action, option_type: OptionType):
assert has_exact_options(action) == (
option_type.file or option_type.choice or option_type.unknown_required
True in option_type
), f'Action: {action} should have exact options given {option_type}'
@ -122,8 +122,12 @@ def test_has_exact_options_detects_exact_options(action: Action, option_type: Op
def test_produce_exact_options_completion(action: Action, option_type: OptionType):
try:
completion = exact_options_completion(action)
assert (
type(completion) == str
), f'Completion should be a string, got {completion} of type {type(completion)}'
if True in option_type:
assert completion.startswith(
'\ncomplete -c borgmatic'
), f'Completion should start with "complete -c borgmatic", got {completion}'
else:
assert completion == '', f'Completion should be empty, got {completion}'
except ValueError as value_error:
assert False, f'exact_options_completion raised ValueError: {value_error}'