diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2016-02-07 11:51:02 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2016-02-07 11:51:02 -0500 |
commit | 66372c8e384e29e7345f9eb535b5e6e4edbe5a03 (patch) | |
tree | 1177f0997bb225125dc1d5d7b639999bea632b5c | |
parent | bf3faba61d42d8949215e06a7a374fd7cd633e86 (diff) | |
download | python-coveragepy-git-66372c8e384e29e7345f9eb535b5e6e4edbe5a03.tar.gz |
Centralize the no-op-iness of contracts
-rw-r--r-- | coverage/misc.py | 4 | ||||
-rw-r--r-- | coverage/parser.py | 9 |
2 files changed, 8 insertions, 5 deletions
diff --git a/coverage/misc.py b/coverage/misc.py index db6298b6..90988dfc 100644 --- a/coverage/misc.py +++ b/coverage/misc.py @@ -60,6 +60,10 @@ else: # pragma: not covered """Dummy no-op implementation of `contract`.""" return lambda func: func + def new_contract(*args, **kwargs): + """Dummy no-op implementation of `new_contract`.""" + pass + def nice_pair(pair): """Make a nice string representation of a pair of numbers. diff --git a/coverage/parser.py b/coverage/parser.py index 56ef528e..7a468e39 100644 --- a/coverage/parser.py +++ b/coverage/parser.py @@ -14,7 +14,7 @@ from coverage import env from coverage.backward import range # pylint: disable=redefined-builtin from coverage.backward import bytes_to_ints, string_class from coverage.bytecode import CodeObjects -from coverage.misc import contract, nice_pair, join_regex +from coverage.misc import contract, new_contract, nice_pair, join_regex from coverage.misc import CoverageException, NoSource, NotPython from coverage.phystokens import compile_unicode, generate_tokens, neuter_encoding_declaration @@ -367,11 +367,10 @@ class ArcStart(collections.namedtuple("Arc", "lineno, cause")): self = super(ArcStart, cls).__new__(cls, lineno, cause) return self -if env.TESTING: - from contracts import new_contract - # Define contract words that PyContract doesn't have. - new_contract('ArcStarts', lambda seq: all(isinstance(x, ArcStart) for x in seq)) +# Define contract words that PyContract doesn't have. +# ArcStarts is for a list or set of ArcStart's. +new_contract('ArcStarts', lambda seq: all(isinstance(x, ArcStart) for x in seq)) class AstArcAnalyzer(object): |