summaryrefslogtreecommitdiffstats
path: root/tests/repository_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/repository_test.py')
-rw-r--r--tests/repository_test.py38
1 files changed, 31 insertions, 7 deletions
diff --git a/tests/repository_test.py b/tests/repository_test.py
index 84e4da9..3d5093d 100644
--- a/tests/repository_test.py
+++ b/tests/repository_test.py
@@ -1,5 +1,4 @@
import os.path
-import re
import shutil
import sys
from typing import Any
@@ -8,6 +7,7 @@ from unittest import mock
import cfgv
import pytest
+import re_assert
import pre_commit.constants as C
from pre_commit.clientlib import CONFIG_SCHEMA
@@ -31,6 +31,7 @@ from testing.fixtures import make_repo
from testing.fixtures import modify_manifest
from testing.util import cwd
from testing.util import get_resource_path
+from testing.util import skipif_cant_run_coursier
from testing.util import skipif_cant_run_docker
from testing.util import skipif_cant_run_swift
from testing.util import xfailif_windows
@@ -94,8 +95,8 @@ def test_conda_with_additional_dependencies_hook(tempdir_factory, store):
config_kwargs={
'hooks': [{
'id': 'additional-deps',
- 'args': ['-c', 'import mccabe; print("OK")'],
- 'additional_dependencies': ['mccabe'],
+ 'args': ['-c', 'import tzdata; print("OK")'],
+ 'additional_dependencies': ['python-tzdata'],
}],
},
)
@@ -109,8 +110,8 @@ def test_local_conda_additional_dependencies(store):
'name': 'local-conda',
'entry': 'python',
'language': 'conda',
- 'args': ['-c', 'import mccabe; print("OK")'],
- 'additional_dependencies': ['mccabe'],
+ 'args': ['-c', 'import tzdata; print("OK")'],
+ 'additional_dependencies': ['python-tzdata'],
}],
}
hook = _get_hook(config, store, 'local-conda')
@@ -195,6 +196,15 @@ def test_versioned_python_hook(tempdir_factory, store):
)
+@skipif_cant_run_coursier # pragma: win32 no cover
+def test_run_a_coursier_hook(tempdir_factory, store):
+ _test_hook_repo(
+ tempdir_factory, store, 'coursier_hooks_repo',
+ 'echo-java',
+ ['Hello World from coursier'], b'Hello World from coursier\n',
+ )
+
+
@skipif_cant_run_docker # pragma: win32 no cover
def test_run_a_docker_hook(tempdir_factory, store):
_test_hook_repo(
@@ -843,12 +853,12 @@ def test_too_new_version(tempdir_factory, store, fake_log_handler):
with pytest.raises(SystemExit):
_get_hook(config, store, 'bash_hook')
msg = fake_log_handler.handle.call_args[0][0].msg
- assert re.match(
+ pattern = re_assert.Matches(
r'^The hook `bash_hook` requires pre-commit version 999\.0\.0 but '
r'version \d+\.\d+\.\d+ is installed. '
r'Perhaps run `pip install --upgrade pre-commit`\.$',
- msg,
)
+ pattern.assert_matches(msg)
@pytest.mark.parametrize('version', ('0.1.0', C.VERSION))
@@ -917,3 +927,17 @@ def test_local_perl_additional_dependencies(store):
ret, out = _hook_run(hook, (), color=False)
assert ret == 0
assert _norm_out(out).startswith(b'This is perltidy, v20200110')
+
+
+@pytest.mark.parametrize(
+ 'repo',
+ (
+ 'dotnet_hooks_csproj_repo',
+ 'dotnet_hooks_sln_repo',
+ ),
+)
+def test_dotnet_hook(tempdir_factory, store, repo):
+ _test_hook_repo(
+ tempdir_factory, store, repo,
+ 'dotnet example hook', [], b'Hello from dotnet!\n',
+ )