summaryrefslogtreecommitdiff
path: root/_pytest
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2013-10-05 15:03:04 -0400
committerBenjamin Peterson <benjamin@python.org>2013-10-05 15:03:04 -0400
commit33b663e03d7673fc92d7dee27c845d0431890b44 (patch)
tree9ec727161881dd56520fed35559626398f2ee176 /_pytest
parent4bfbe7ec22a266a5c638bf9fef76501bfa2c5f5a (diff)
downloadpytest-33b663e03d7673fc92d7dee27c845d0431890b44.tar.gz
fix coding cookie detection logic
Diffstat (limited to '_pytest')
-rw-r--r--_pytest/assertion/rewrite.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/_pytest/assertion/rewrite.py b/_pytest/assertion/rewrite.py
index 96b1a33d3..8ef27ac15 100644
--- a/_pytest/assertion/rewrite.py
+++ b/_pytest/assertion/rewrite.py
@@ -196,7 +196,7 @@ def _write_pyc(state, co, source_path, pyc):
RN = "\r\n".encode("utf-8")
N = "\n".encode("utf-8")
-cookie_re = re.compile("coding[:=]\s*[-\w.]+")
+cookie_re = re.compile(r"^[ \t\f]*#.*coding[:=][ \t]*[-\w.]+")
BOM_UTF8 = '\xef\xbb\xbf'
def _rewrite_test(state, fn):
@@ -220,8 +220,8 @@ def _rewrite_test(state, fn):
end1 = source.find("\n")
end2 = source.find("\n", end1 + 1)
if (not source.startswith(BOM_UTF8) and
- (not cookie_re.match(source[0:end1]) or
- not cookie_re.match(source[end1:end2]))):
+ cookie_re.match(source[0:end1]) is None and
+ cookie_re.match(source[end1:end2]) is None):
if hasattr(state, "_indecode"):
return None # encodings imported us again, we don't rewrite
state._indecode = True