summaryrefslogtreecommitdiffstats
path: root/test/t/unit/test_unit_xinetd_services.py
blob: a9e33a9c70bc7c63df8fa1fc951b4730f30737e0 (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
import pytest

from conftest import assert_bash_exec


@pytest.mark.bashcomp(cmd=None, ignore_env=r"^\+COMPREPLY=")
class TestUnitXinetdServices:
    def test_direct(self, bash):
        assert_bash_exec(bash, "_comp_compgen_xinetd_services >/dev/null")

    def test_env_non_pollution(self, bash):
        """Test environment non-pollution, detected at teardown."""
        assert_bash_exec(
            bash, "foo() { _comp_compgen_xinetd_services; }; foo; unset -f foo"
        )

    def test_basic(self, bash):
        output = assert_bash_exec(
            bash,
            "foo() { local _comp__test_xinetd_dir=$PWD/shared/bin; unset -v COMPREPLY; "
            '_comp_compgen_xinetd_services; printf "%s\\n" "${COMPREPLY[@]}"; }; foo; unset -f foo',
            want_output=True,
        )
        assert sorted(output.split()) == ["arp", "ifconfig"]