summaryrefslogtreecommitdiff
path: root/coverage/backward.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2011-04-10 08:42:31 -0400
committerNed Batchelder <ned@nedbatchelder.com>2011-04-10 08:42:31 -0400
commit52e07c90b77b1d07ed95a6195ec5d895f0988224 (patch)
tree325346a20aedac88b3297919f5c1c89f79de7aed /coverage/backward.py
parentd4dd809d27ad7f31431a4ef61309b6951ad41d9b (diff)
parent822b7c82f58bbd6f2b38cc98c7881cc405d0c69e (diff)
downloadpython-coveragepy-52e07c90b77b1d07ed95a6195ec5d895f0988224.tar.gz
Merge Brett's __main__.py file for the tree.
Diffstat (limited to 'coverage/backward.py')
-rw-r--r--coverage/backward.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/coverage/backward.py b/coverage/backward.py
index c363f21..f0a34ac 100644
--- a/coverage/backward.py
+++ b/coverage/backward.py
@@ -81,3 +81,30 @@ except AttributeError:
"""Open a source file the best way."""
return open(fname, "rU")
+# Python 3.x is picky about bytes and strings, so provide methods to
+# get them right, and make them no-ops in 2.x
+if sys.version_info >= (3, 0):
+ def to_bytes(s):
+ """Convert string `s` to bytes."""
+ return s.encode('utf8')
+
+ def to_string(b):
+ """Convert bytes `b` to a string."""
+ return b.decode('utf8')
+
+else:
+ def to_bytes(s):
+ """Convert string `s` to bytes (no-op in 2.x)."""
+ return s
+
+ def to_string(b):
+ """Convert bytes `b` to a string (no-op in 2.x)."""
+ return b
+
+# Md5 is available in different places.
+try:
+ import hashlib
+ md5 = hashlib.md5
+except ImportError:
+ import md5
+ md5 = md5.new