summaryrefslogtreecommitdiffstats
path: root/test/t/unit/test_unit_looks_like_path.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/t/unit/test_unit_looks_like_path.py')
-rw-r--r--test/t/unit/test_unit_looks_like_path.py33
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)