diff options
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/test_cmd2.py | 7 | ||||
-rw-r--r-- | tests/test_utils.py | 19 |
2 files changed, 26 insertions, 0 deletions
diff --git a/tests/test_cmd2.py b/tests/test_cmd2.py index 671a6685..9aaebc99 100755 --- a/tests/test_cmd2.py +++ b/tests/test_cmd2.py @@ -127,6 +127,13 @@ Parameter 'qqq' not supported (type 'set' for list of parameters). assert err == expected +def test_set_no_settables(base_app): + base_app.settables = {} + out, err = run_cmd(base_app, 'set quiet True') + expected = normalize("There are no settable parameters") + assert err == expected + + @pytest.mark.parametrize('new_val, is_valid, expected', [ (ansi.STYLE_NEVER, False, ansi.STYLE_NEVER), ('neVeR', False, ansi.STYLE_NEVER), diff --git a/tests/test_utils.py b/tests/test_utils.py index 9dd54ee2..804e58be 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -531,3 +531,22 @@ def test_align_right_wide_fill_needs_padding(): width = 6 aligned = cu.align_right(text, fill_char=fill_char, width=width) assert aligned == fill_char + ' ' + text + + +def test_str_to_bool_true(): + assert cu.str_to_bool('true') + assert cu.str_to_bool('True') + assert cu.str_to_bool('TRUE') + +def test_str_to_bool_false(): + assert not cu.str_to_bool('false') + assert not cu.str_to_bool('False') + assert not cu.str_to_bool('FALSE') + +def test_str_to_bool_invalid(): + with pytest.raises(ValueError): + cu.str_to_bool('other') + +def test_str_to_bool_bad_input(): + with pytest.raises(ValueError): + cu.str_to_bool(1) |