diff options
Diffstat (limited to 'coverage/misc.py')
-rw-r--r-- | coverage/misc.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/coverage/misc.py b/coverage/misc.py index 36e4fe9..db6298b 100644 --- a/coverage/misc.py +++ b/coverage/misc.py @@ -6,7 +6,9 @@ import errno import hashlib import inspect +import locale import os +import sys import types from coverage import env @@ -149,6 +151,18 @@ def file_be_gone(path): raise +def output_encoding(outfile=None): + """Determine the encoding to use for output written to `outfile` or stdout.""" + if outfile is None: + outfile = sys.stdout + encoding = ( + getattr(outfile, "encoding", None) or + getattr(sys.__stdout__, "encoding", None) or + locale.getpreferredencoding() + ) + return encoding + + class Hasher(object): """Hashes Python data into md5.""" def __init__(self): |