diff options
Diffstat (limited to 'test/t/test_slapt_src.py')
-rw-r--r-- | test/t/test_slapt_src.py | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/test/t/test_slapt_src.py b/test/t/test_slapt_src.py index dd443b04..b55b722d 100644 --- a/test/t/test_slapt_src.py +++ b/test/t/test_slapt_src.py @@ -1,16 +1,43 @@ +import os +from tempfile import mkstemp + import pytest +from conftest import assert_complete, is_bash_type + @pytest.mark.bashcomp(cmd="slapt-src") class TestSlaptSrc: + @pytest.fixture(scope="class") + def slapt_srcrc(self, request, bash): + fd, fname = mkstemp(prefix="slapt-srcrc.", text=True) + request.addfinalizer(lambda: os.remove(fname)) + with os.fdopen(fd, "w") as f: + print( + "BUILDDIR=%s/" + % os.path.join( + bash.cwd, *"slackware usr src slapt-src".split() + ), + file=f, + ) + return fname + @pytest.mark.complete("slapt-src -", require_cmd=True) def test_1(self, completion): assert completion @pytest.mark.complete("slapt-src --bu", require_cmd=True) def test_2(self, completion): - assert completion == "--build" + assert completion == "ild" or "--build" in completion @pytest.mark.complete("slapt-src --ins", require_cmd=True) def test_3(self, completion): - assert completion == "--install" + assert completion == "tall" or "--install" in completion + + def test_install(self, bash, slapt_srcrc): + if not is_bash_type(bash, "slapt-src"): + pytest.skip("slapt-src not found") + completion = assert_complete( + bash, "slapt-src --config %s --install " % slapt_srcrc + ) + assert completion == "abc:4 qwe:2.1".split() |