diff options
Diffstat (limited to 'test/t/test_xfreerdp.py')
-rw-r--r-- | test/t/test_xfreerdp.py | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/test/t/test_xfreerdp.py b/test/t/test_xfreerdp.py new file mode 100644 index 0000000..5616271 --- /dev/null +++ b/test/t/test_xfreerdp.py @@ -0,0 +1,60 @@ +import pytest + +from conftest import assert_bash_exec + + +class TestXfreerdp: + def _help(self, bash): + return assert_bash_exec( + bash, "xfreerdp --help 2>&1 || :", want_output=True + ) + + @pytest.fixture(scope="class") + def help_success(self, bash): + output = self._help(bash) + # Example from our CentOS 7 container + # [04:51:31:663] [238:238] [ERROR][com.freerdp.client.x11] - Failed to get pixmap info + if not output or "ERROR" in output.strip().splitlines()[0]: + pytest.skip("--help errored") + + @pytest.fixture(scope="class") + def slash_syntax(self, bash, help_success): + if "/help" not in self._help(bash): + pytest.skip("Not slash syntax") + + @pytest.fixture(scope="class") + def dash_syntax(self, bash): + if "/help" in self._help(bash): + pytest.skip("Not dash syntax") + + @pytest.mark.complete("xfreerdp /", require_cmd=True) + def test_1(self, bash, completion, help_success, slash_syntax): + assert completion + + @pytest.mark.complete("xfreerdp -", require_cmd=True) + def test_2(self, completion, help_success): + assert completion + + @pytest.mark.complete("xfreerdp +", require_cmd=True) + def test_3(self, bash, completion, help_success, slash_syntax): + assert completion + + @pytest.mark.complete( + "xfreerdp /kbd:", + require_cmd=True, + skipif='test -z "$(xfreerdp /kbd-list 2>/dev/null)"', + ) + def test_4(self, bash, completion, help_success, slash_syntax): + assert completion + + @pytest.mark.complete("xfreerdp /help ", require_cmd=True) + def test_5(self, completion, help_success): + assert not completion + + @pytest.mark.complete("xfreerdp -k ", require_cmd=True) + def test_6(self, bash, completion, help_success, dash_syntax): + assert completion + + @pytest.mark.complete("xfreerdp --help ", require_cmd=True) + def test_7(self, completion): + assert not completion |