# Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0
# For details: https://bitbucket.org/ned/coveragepy/src/default/NOTICE.txt

# Settings to use when using coverage.py to measure itself.
[run]
branch = true
data_file = $COVERAGE_METAFILE
parallel = true
source =
    $COVERAGE_HOME/coverage
    $COVERAGE_HOME/tests

[report]
# We set a different pragma so our code won't be confused with test code.
exclude_lines =
    # pragma: not covered
    # pragma: nested
    def __repr__
    raise AssertionError
    # pragma: debugging
    # pragma: only failure

partial_branches =
    # pragma: part covered
    if env.TESTING:

ignore_errors = true
precision = 1

[paths]
source =
    .
    *\coverage\trunk
    */coverage/trunk
    *\coveragepy
