summaryrefslogtreecommitdiffstats
path: root/test/t/test_finger.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/t/test_finger.py')
-rw-r--r--test/t/test_finger.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/t/test_finger.py b/test/t/test_finger.py
new file mode 100644
index 0000000..d765fdd
--- /dev/null
+++ b/test/t/test_finger.py
@@ -0,0 +1,33 @@
+import pytest
+
+from conftest import assert_complete, partialize
+
+
+class TestFinger:
+ @pytest.fixture(scope="class")
+ def users_at(self, bash, output_sort_uniq):
+ return output_sort_uniq("compgen -u -S @")
+
+ @pytest.mark.complete("finger ")
+ def test_1(self, bash, completion, users_at):
+ assert completion == users_at
+
+ @pytest.mark.complete("finger r")
+ def test_2(self, bash, completion, users_at):
+ if not any(x.startswith("r") for x in users_at):
+ pytest.skip("No users starting with r")
+ assert completion
+ idx = 1 if len(completion) == 1 else 0
+ assert completion == sorted(
+ x[idx:] for x in users_at if x.startswith("r")
+ )
+ assert not completion.endswith(" ")
+
+ def test_partial_hostname(self, bash, known_hosts):
+ first_char, partial_hosts = partialize(bash, known_hosts)
+ user = "test"
+ completion = assert_complete(bash, "finger %s@%s" % (user, first_char))
+ if len(completion) == 1:
+ assert completion == partial_hosts[0][1:]
+ else:
+ assert completion == ["%s@%s" % (user, x) for x in partial_hosts]