[paths]
source =
    src
    */site-packages

[run]
branch = True
source = validataclass
omit =
    */_version.py
plugins =
    coverage_conditional_plugin

[report]
show_missing = True
skip_empty = True
skip_covered = True
exclude_lines =
    pragma: nocover
    @overload

[html]
directory = reports/coverage_html/
skip_covered = False
show_contexts = True

[coverage_conditional_plugin]
# These rules are a bit contraintuitive as they define when to IGNORE code from coverage, instead of when to include it,
# so we prefix the pragmas with "ignore-" to make it more clear.
rules =
    "sys_version_info < (3, 10)": ignore-py-lt-310
    "sys_version_info >= (3, 10)": ignore-py-gte-310
