diff options
author | Benjamin Peterson <benjamin@python.org> | 2013-10-05 15:03:04 -0400 |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2013-10-05 15:03:04 -0400 |
commit | 33b663e03d7673fc92d7dee27c845d0431890b44 (patch) | |
tree | 9ec727161881dd56520fed35559626398f2ee176 /_pytest | |
parent | 4bfbe7ec22a266a5c638bf9fef76501bfa2c5f5a (diff) | |
download | pytest-33b663e03d7673fc92d7dee27c845d0431890b44.tar.gz |
fix coding cookie detection logic
Diffstat (limited to '_pytest')
-rw-r--r-- | _pytest/assertion/rewrite.py | 6 |
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 |