charasheet/pyproject.toml
2024-05-20 21:58:18 +00:00

85 lines
2.3 KiB
TOML

###############################################################################
# pytest
###############################################################################
[tool.ruff]
target-version = "py311"
src = [
"src",
]
lint.select = [
"ALL",
]
lint.ignore = [
"ANN", # flake8-annotations
"BLE", # flake8-blind-except
"D1", # missing docstring
"E501", # long lines
"RUF012", # Mutable class attributes should be annotated with `typing.ClassVar`
"TCH", # flake8-type-checking / TODO: revisit later ?
"TRY003", # Avoid specifying long messages outside the exception class
]
lint.per-file-ignores."**/tests/*" = [
"ARG001", # Unused function argument (mostly fixtures)
"B011", # Do not call assert False since python -O removes these calls.
"PLR2004", # Magic value used in comparison, consider replacing {value} with a constant variable
"S101", # Use of assert detected.
"S106", # Possible hardcoded password.
"S311", # Standard pseudo-random generators are not suitable for cryptographic purposes.
]
lint.per-file-ignores."src/character/management/commands/*" = [
"RUF001", # String contains ambiguous unicode character
]
lint.per-file-ignores."src/conftest.py" = [
"INP001",
]
lint.per-file-ignores."src/manage.py" = [
"INP001",
]
# File {name} is part of an implicit namespace package. Add an `__init__.py`.
lint.per-file-ignores."tasks.py" = [
"INP001",
]
lint.unfixable = [
"RUF001",
"RUF002",
"RUF003",
"T20",
]
lint.mccabe.max-complexity = 10
lint.pydocstyle.convention = "pep257"
[tool.pytest.ini_options]
addopts = """
--html=test_reports/pytest_result/pytest.html --color=yes --durations 20
--no-cov-on-fail --strict-markers --reuse-db
--driver=Firefox
-W error
-W "ignore:capabilities and desired_capabilities have been deprecated:DeprecationWarning:pytest_selenium.pytest_selenium"
-W "ignore:service_log_path has been deprecated:DeprecationWarning:pytest_selenium.pytest_selenium"
"""
markers = [
]
minversion = "6.0"
DJANGO_SETTINGS_MODULE = "charasheet.settings"
junit_family = "xunit1"
norecursedirs = [
".*",
"docker",
"documentation",
"static",
"public",
]
testpaths = [
"src",
]
python_files = [
"test_*.py",
"tests.py",
]
###############################################################################
# ruff
###############################################################################