[run]
branch = true
omit =
    */_vendor/*

[paths]
# https://coverage.readthedocs.io/en/latest/config.html#paths
src =
    src
    .tox*/*/lib/python*/site-packages
    .tox*/pypy*/site-packages
    .tox*\*\Lib\site-packages
    */src
    *\src


[report]
precision = 1
show_missing = true
skip_covered = false
fail_under = 50

# Some of the patterns below were taken or adapted
# from: https://github.com/asottile/covdefaults
exclude_lines =
    # a more strict default pragma
    \# pragma: no cover\b
    # allow defensive code
    ^\s*raise AssertionError\b
    ^\s*raise NotImplementedError\b
    ^\s*return NotImplemented\b
    ^\s*raise$
    # typing-related code
    ^\s*if (__debug__|False|TYPE_CHECKING):
    ^@overload\b
    : \.\.\.(\s*#.*)?$
    ^ +\.\.\.$
    -> ['"]?NoReturn['"]?:
    # non-runnable code
    if __name__ == ['"]__main__['"]:$
partial_branches =
    \# pragma: no branch\b
