90 lines
2.4 KiB
INI
Raw Normal View History

2021-01-31 22:40:30 -08:00
[flake8]
max-complexity = 15
ignore =
# Ignore: line length issues, since black's formatter will take care of them.
E501,
# Ignore: 1 blank line required before class docstring.
D203,
# See https://stackoverflow.com/a/57074416.
W503,
# See https://github.com/psf/black/issues/315.
E203
2021-02-11 21:59:54 -08:00
exclude =
.git,
2021-02-15 15:04:21 -08:00
src/datahub/metadata,
venv,
.tox,
2021-02-11 21:59:54 -08:00
__pycache__
per-file-ignores =
# imported but unused
__init__.py: F401
ban-relative-imports = true
2021-01-31 22:40:30 -08:00
[mypy]
plugins =
sqlmypy,
pydantic.mypy
exclude = ^(venv|build|dist)/
ignore_missing_imports = yes
2021-01-31 22:40:30 -08:00
strict_optional = yes
check_untyped_defs = yes
disallow_incomplete_defs = yes
disallow_untyped_decorators = yes
warn_unused_configs = yes
# eventually we'd like to enable these
2021-01-31 22:40:30 -08:00
disallow_untyped_defs = no
# try to be a bit more strict in certain areas of the codebase
[mypy-datahub.*]
ignore_missing_imports = no
[mypy-tests.*]
ignore_missing_imports = no
[mypy-datahub.configuration.*]
disallow_untyped_defs = yes
[mypy-datahub.emitter.*]
disallow_untyped_defs = yes
[mypy-datahub.ingestion.api.*]
disallow_untyped_defs = yes
[mypy-datahub.ingestion.run.*]
disallow_untyped_defs = yes
[mypy-datahub.utilities.*]
disallow_untyped_defs = yes
2021-01-31 22:40:30 -08:00
[tool:pytest]
asyncio_mode = auto
addopts = --cov=src --cov-report term-missing --cov-config setup.cfg --strict-markers
markers =
integration: marks tests to only run in integration (deselect with '-m "not integration"')
2021-12-09 04:26:31 +05:30
slow_integration: marks tests that are too slow to even run in integration (deselect with '-m "not slow_integration")
2021-02-09 10:15:17 -08:00
testpaths =
tests/unit
tests/integration
[coverage:run]
# Because of some quirks in the way setup.cfg, coverage.py, pytest-cov,
# and tox interact, we should not uncomment the following line.
# See https://pytest-cov.readthedocs.io/en/latest/config.html and
# https://coverage.readthedocs.io/en/coverage-5.0/config.html.
# We also have some additional pytest/cov config options in tox.ini.
# source = src
[coverage:paths]
# This is necessary for tox-based coverage to be counted properly.
source =
src
*/site-packages
2021-01-31 22:40:30 -08:00
[coverage:report]
# The fail_under value ensures that at least some coverage data is collected.
# We override its value in the tox config.
2021-01-31 22:40:30 -08:00
show_missing = true
exclude_lines =
pragma: no cover
@abstract
if TYPE_CHECKING:
omit =
# omit codegen
2021-02-15 15:04:21 -08:00
src/datahub/metadata/*
# omit example dags
src/datahub_provider/example_dags/*