diff options
author | Julian Berman <Julian+Hg@GrayVines.com> | 2012-07-31 10:17:00 -0400 |
---|---|---|
committer | Julian Berman <Julian+Hg@GrayVines.com> | 2012-07-31 10:17:00 -0400 |
commit | e4671e4ba2dd74204abd6a41ddb411f786c484cd (patch) | |
tree | 3eb1ea75877e62a97f2190e206b1d9b2be3edef6 /coverage/parser.py | |
parent | 4b84b6b6035f7bdc44af395615f096419d5a5219 (diff) | |
download | python-coveragepy-e4671e4ba2dd74204abd6a41ddb411f786c484cd.tar.gz |
Don't report coverage for non-Python source files even if __file__ says they were executed.
Closes #82
Diffstat (limited to 'coverage/parser.py')
-rw-r--r-- | coverage/parser.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/coverage/parser.py b/coverage/parser.py index f868d35..a9cceb3 100644 --- a/coverage/parser.py +++ b/coverage/parser.py @@ -203,7 +203,16 @@ class CodeParser(object): statements. """ - self._raw_parse() + + try: + self._raw_parse() + except tokenize.TokenError: + _, tokerr, _ = sys.exc_info() + msg, lineno = tokerr.args + raise NotPython( + "Couldn't parse '%s' as Python source: '%s' at %s" % + (self.filename, msg, lineno) + ) excluded_lines = self.first_lines(self.excluded) ignore = excluded_lines + list(self.docstrings) |