diff options
Diffstat (limited to 'tests/util_test.py')
-rw-r--r-- | tests/util_test.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/util_test.py b/tests/util_test.py new file mode 100644 index 0000000..92473e5 --- /dev/null +++ b/tests/util_test.py @@ -0,0 +1,27 @@ +from __future__ import annotations + +import pytest + +from pre_commit_hooks.util import CalledProcessError +from pre_commit_hooks.util import cmd_output +from pre_commit_hooks.util import zsplit + + +def test_raises_on_error(): + with pytest.raises(CalledProcessError): + cmd_output('sh', '-c', 'exit 1') + + +def test_output(): + ret = cmd_output('sh', '-c', 'echo hi') + assert ret == 'hi\n' + + +@pytest.mark.parametrize('out', ('\0f1\0f2\0', '\0f1\0f2', 'f1\0f2\0')) +def test_check_zsplits_str_correctly(out): + assert zsplit(out) == ['f1', 'f2'] + + +@pytest.mark.parametrize('out', ('\0\0', '\0', '')) +def test_check_zsplit_returns_empty(out): + assert zsplit(out) == [] |