############################################################################### # pytest ############################################################################### [tool.pytest.ini_options] addopts = """ --html=test_reports/pytest_result/pytest.html --color=yes --durations 20 --no-cov-on-fail --strict-markers --reuse-db -W error """ markers = [] minversion = "6.0" DJANGO_SETTINGS_MODULE = "{{cookiecutter.project_slug}}.settings" junit_family = "xunit1" norecursedirs = [ ".*", "docker", "documentation", "static", "public", ] testpaths = [ "src", ] python_files = [ "test_*.py", "tests.py", ] ############################################################################### # ruff ############################################################################### [tool.ruff] src = ["src"] target-version = "{{ cookiecutter.python_version_slug }}" select = ["ALL"] unfixable = ["T20", "RUF001", "RUF002", "RUF003"] ignore = [ "ANN", # flake8-annotations "BLE", # flake8-blind-except "TCH", # flake8-type-checking / TODO: revisit later ? "E501", # long lines "D1", # missing docstring "TRY003", # Avoid specifying long messages outside the exception class ] [tool.ruff.per-file-ignores] "**/tests/*" = [ "S101", # Use of assert detected. "S106", # Possible hardcoded password. "B011", # Do not call assert False since python -O removes these calls. "ARG001", # Unused function argument (mostly fixtures) "PLR2004", # Magic value used in comparison, consider replacing {value} with a constant variable ] # File {name} is part of an implicit namespace package. Add an `__init__.py`. "tasks.py" = ["INP001"] "src/conftest.py" = ["INP001"] "src/manage.py" = ["INP001"] [tool.ruff.pydocstyle] convention = "pep257" [tool.ruff.mccabe] max-complexity = 10