diff options
Diffstat (limited to 'coverage')
-rw-r--r-- | coverage/env.py | 5 | ||||
-rw-r--r-- | coverage/inorout.py | 9 | ||||
-rw-r--r-- | coverage/misc.py | 7 |
3 files changed, 11 insertions, 10 deletions
diff --git a/coverage/env.py b/coverage/env.py index 68da83dd..a01bb816 100644 --- a/coverage/env.py +++ b/coverage/env.py @@ -124,3 +124,8 @@ METACOV = os.getenv('COVERAGE_COVERAGE', '') != '' # Even when running tests, you can use COVERAGE_TESTING=0 to disable the # test-specific behavior like contracts. TESTING = os.getenv('COVERAGE_TESTING', '') == 'True' + +# Environment COVERAGE_NO_CONTRACTS=1 can turn off contracts while debugging +# tests to remove noise from stack traces. +# $set_env.py: COVERAGE_NO_CONTRACTS - Disable PyContracts to simplify stack traces. +USE_CONTRACTS = TESTING and not bool(int(os.environ.get("COVERAGE_NO_CONTRACTS", 0))) diff --git a/coverage/inorout.py b/coverage/inorout.py index 8badf4f7..174a19dc 100644 --- a/coverage/inorout.py +++ b/coverage/inorout.py @@ -180,10 +180,11 @@ def add_coverage_paths(paths): # When testing, we use PyContracts, which should be considered # part of coverage.py, and it uses six. Exclude those directories # just as we exclude ourselves. - import contracts - import six - for mod in [contracts, six]: - paths.add(canonical_path(mod)) + if env.USE_CONTRACTS: + import contracts + import six + for mod in [contracts, six]: + paths.add(canonical_path(mod)) class InOrOut: diff --git a/coverage/misc.py b/coverage/misc.py index 40f00930..584efeaa 100644 --- a/coverage/misc.py +++ b/coverage/misc.py @@ -100,14 +100,9 @@ def dummy_decorator_with_args(*args_unused, **kwargs_unused): return _decorator -# Environment COVERAGE_NO_CONTRACTS=1 can turn off contracts while debugging -# tests to remove noise from stack traces. -# $set_env.py: COVERAGE_NO_CONTRACTS - Disable PyContracts to simplify stack traces. -USE_CONTRACTS = env.TESTING and not bool(int(os.environ.get("COVERAGE_NO_CONTRACTS", 0))) - # Use PyContracts for assertion testing on parameters and returns, but only if # we are running our own test suite. -if USE_CONTRACTS: +if env.USE_CONTRACTS: from contracts import contract # pylint: disable=unused-import from contracts import new_contract as raw_new_contract |