diff options
Diffstat (limited to 'test/t/unit/test_unit_looks_like_path.py')
-rw-r--r-- | test/t/unit/test_unit_looks_like_path.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/test/t/unit/test_unit_looks_like_path.py b/test/t/unit/test_unit_looks_like_path.py new file mode 100644 index 0000000..3e86b48 --- /dev/null +++ b/test/t/unit/test_unit_looks_like_path.py @@ -0,0 +1,33 @@ +import shlex + +import pytest + +from conftest import TestUnitBase, assert_bash_exec + + +@pytest.mark.bashcomp(cmd=None) +class TestUnitQuote(TestUnitBase): + @pytest.mark.parametrize( + "thing_looks_like", + ( + ("", False), + ("foo", False), + ("/foo", True), + ("foo/", True), + ("foo/bar", True), + (".", True), + ("../", True), + ("~", True), + ("~foo", True), + ), + ) + def test_1(self, bash, thing_looks_like): + thing, looks_like = thing_looks_like + output = assert_bash_exec( + bash, + f"_comp_looks_like_path {shlex.quote(thing)}; printf %s $?", + want_output=True, + want_newline=False, + ) + is_zero = output.strip() == "0" + assert (looks_like and is_zero) or (not looks_like and not is_zero) |