diff options
Diffstat (limited to 'test/t/test_mr.py')
-rw-r--r-- | test/t/test_mr.py | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/test/t/test_mr.py b/test/t/test_mr.py new file mode 100644 index 0000000..bfad643 --- /dev/null +++ b/test/t/test_mr.py @@ -0,0 +1,58 @@ +import pytest + + +class TestMr: + @pytest.mark.complete("mr ") + def test_1(self, completion): + assert completion + + # man -h tests below: Some mr versions require man to be around in order + # to provide useful output. + + @pytest.mark.complete( + "mr --", require_cmd=True, xfail="! man -h &>/dev/null" + ) + def test_2(self, completion): + assert completion + + @pytest.mark.complete( + "mr -c shared/default/foo.d/", xfail="! man -h &>/dev/null" + ) + def test_3(self, completion): + assert completion == "foo" + + @pytest.mark.complete( + "mr bootstrap shared/default/", + require_cmd=True, + xfail="! man -h &>/dev/null", + ) + def test_4(self, completion): + assert completion == ["bar", "bar bar.d/", "foo", "foo.d/"] + + @pytest.mark.complete( + "mr clean -", + require_cmd=True, + xfail="! man -h &>/dev/null", + # "clean" does not exist before mr 1.20141023 + skipif="! mr help 2>&1 | command grep -qwF clean", + ) + def test_5(self, completion): + assert completion == "f" + + @pytest.mark.complete( + "mr commit -", require_cmd=True, xfail="! man -h &>/dev/null" + ) + def test_6(self, completion): + assert completion == "m" + + @pytest.mark.complete( + "mr status ", require_cmd=True, xfail="! man -h &>/dev/null" + ) + def test_7(self, completion): + assert not completion + + @pytest.mark.complete( + "mr run ", require_cmd=True, xfail="! man -h &>/dev/null" + ) + def test_8(self, completion): + assert completion |