Browse Source

test the value of completions

Isaac 2 years ago
parent
commit
ccfdd6806f
1 changed files with 8 additions and 4 deletions
  1. 8 4
      tests/unit/commands/test_completions.py

+ 8 - 4
tests/unit/commands/test_completions.py

@@ -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}'