From 4fee3e091a8d79a40f70ff9c1f87b29b9340049a Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 25 Jan 2021 14:26:11 +0100 Subject: Merging upstream version 0.15.0. Signed-off-by: Daniel Baumann --- qa/utils.py | 49 ------------------------------------------------- 1 file changed, 49 deletions(-) (limited to 'qa/utils.py') diff --git a/qa/utils.py b/qa/utils.py index f44917e..c75872b 100644 --- a/qa/utils.py +++ b/qa/utils.py @@ -1,6 +1,5 @@ # pylint: disable=bad-option-value,unidiomatic-typecheck,undefined-variable,no-else-return import platform -import sys import os import locale @@ -15,16 +14,6 @@ def platform_is_windows(): PLATFORM_IS_WINDOWS = platform_is_windows() -######################################################################################################################## -# IS_PY2 - - -def is_py2(): - return sys.version_info[0] == 2 - - -IS_PY2 = is_py2() - ######################################################################################################################## # USE_SH_LIB # Determine whether to use the `sh` library @@ -71,41 +60,3 @@ def getpreferredencoding(): DEFAULT_ENCODING = getpreferredencoding() - -######################################################################################################################## -# Unicode utility functions - - -def ustr(obj): - """ Python 2 and 3 utility method that converts an obj to unicode in python 2 and to a str object in python 3""" - if IS_PY2: - # If we are getting a string, then do an explicit decode - # else, just call the unicode method of the object - if type(obj) in [str, basestring]: # pragma: no cover # noqa - return unicode(obj, DEFAULT_ENCODING) # pragma: no cover # noqa - else: - return unicode(obj) # pragma: no cover # noqa - else: - if type(obj) in [bytes]: - return obj.decode(DEFAULT_ENCODING) - else: - return str(obj) - - -def sstr(obj): - """ Python 2 and 3 utility method that converts an obj to a DEFAULT_ENCODING encoded string in python 2 - and to unicode in python 3. - Especially useful for implementing __str__ methods in python 2: http://stackoverflow.com/a/1307210/381010""" - if IS_PY2: - # For lists and tuples in python2, remove unicode string representation characters. - # i.e. ensure lists are printed as ['a', 'b'] and not [u'a', u'b'] - if type(obj) in [list]: - return [sstr(item) for item in obj] # pragma: no cover # noqa - elif type(obj) in [tuple]: - return tuple(sstr(item) for item in obj) # pragma: no cover # noqa - - return unicode(obj).encode(DEFAULT_ENCODING) # pragma: no cover # noqa - else: - return obj # pragma: no cover - -######################################################################################################################## -- cgit v1.2.3