blob: 8abcb59d0fe5154c1ca11ffe884195f962e840f5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
import pytest
from conftest import (
assert_bash_exec,
assert_complete,
find_unique_completion_pair,
)
class TestLs:
@pytest.mark.complete(
"ls --", require_cmd=True, xfail="! ls --help &>/dev/null"
)
def test_1(self, completion):
assert completion
@pytest.mark.complete("ls ~")
def test_2(self, completion):
assert completion
def test_3(self, bash):
"""~part should complete to ~full<SPACE> if home dir does not exist."""
res = (
assert_bash_exec(
bash,
"for u in $(compgen -u); do "
"eval test -d ~$u || echo $u; unset u; done",
want_output=True,
)
.strip()
.split()
)
part_full = find_unique_completion_pair(res)
if not part_full:
pytest.skip("No suitable test user found")
return
part, full = part_full
completion = assert_complete(bash, "ls ~%s" % part)
assert completion == full[len(part) :]
assert completion.endswith(" ")
|