diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d0b2f16b..930465a5 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,4 +1,4 @@ -exclude: "{{cookiecutter.project_slug}}|.github/contributors.json|CHANGELOG.md" +exclude: "{{cookiecutter.project_slug}}|.github/contributors.json|CHANGELOG.md|CONTRIBUTORS.md" default_stages: [commit] repos: diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 47ece91d..c821674f 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -1967,4 +1967,4 @@ guidance and advice. - Jannis Leidel - Nate Aune -- Barry Morrison \ No newline at end of file +- Barry Morrison diff --git a/tests/test_bare.sh b/tests/test_bare.sh index afd12fec..5dc175eb 100755 --- a/tests/test_bare.sh +++ b/tests/test_bare.sh @@ -20,12 +20,6 @@ sudo utility/install_os_dependencies.sh install # Install Python deps pip install -r requirements/local.txt -# Lint by running pre-commit on all files -# Needs a git repo to find the project root -git init -git add . -pre-commit run --show-diff-on-failure -a - # run the project's tests pytest diff --git a/tests/test_cookiecutter_generation.py b/tests/test_cookiecutter_generation.py index cb5a99cd..e4a03b3b 100755 --- a/tests/test_cookiecutter_generation.py +++ b/tests/test_cookiecutter_generation.py @@ -20,6 +20,11 @@ if sys.platform.startswith("win"): elif sys.platform.startswith("darwin") and os.getenv("CI"): pytest.skip("skipping slow macOS tests on CI", allow_module_level=True) +# Run auto-fixable styles checks - skipped on CI by default. These can be fixed +# automatically by running pre-commit after generation however they are tedious +# to fix in the template, so we don't insist too much in fixing them. +AUTOFIXABLE_STYLES = os.getenv("AUTOFIXABLE_STYLES") == 1 + @pytest.fixture def context(): @@ -184,9 +189,10 @@ def test_flake8_passes(cookies, context_override): pytest.fail(e.stdout.decode()) +@pytest.mark.skipif(not AUTOFIXABLE_STYLES, reason="Black is auto-fixable") @pytest.mark.parametrize("context_override", SUPPORTED_COMBINATIONS, ids=_fixture_id) def test_black_passes(cookies, context_override): - """Generated project should pass black.""" + """Check whether generated project passes black style.""" result = cookies.bake(extra_context=context_override) try: diff --git a/tests/test_docker.sh b/tests/test_docker.sh index 28d23289..5c60d20d 100755 --- a/tests/test_docker.sh +++ b/tests/test_docker.sh @@ -14,13 +14,6 @@ cd .cache/docker cookiecutter ../../ --no-input --overwrite-if-exists use_docker=y "$@" cd my_awesome_project -# Lint by running pre-commit on all files -# Needs a git repo to find the project root -# We don't have git inside Docker, so run it outside -git init -git add . -pre-commit run --show-diff-on-failure -a - # make sure all images build docker-compose -f local.yml build