[run]
source = src/pymediate
# Store repo-relative paths in the .coverage data file. Required by
# py-cov-action/python-coverage-comment-action, which re-runs `coverage json` in a fresh
# checkout: with absolute paths that fails with "No source for code", which was breaking the
# PR "Test Coverage Diff" / "All Checks Passed" required check.
relative_files = true
omit =
    */tests/*
    */__pycache__/*
    */site-packages/*
    .venv/*

[report]
# Exclude lines from coverage
exclude_lines =
    pragma: no cover
    def __repr__
    raise AssertionError
    raise NotImplementedError
    if __name__ == .__main__.:
    if TYPE_CHECKING:
    @abstractmethod
    @abc.abstractmethod
    def main
    ^def main\(\):
    class .*\(Protocol\):

# Report settings
precision = 2
show_missing = True
skip_covered = False

[html]
directory = htmlcov
