diff options
author | Nils Philippsen <nils@redhat.com> | 2015-08-19 16:32:16 +0200 |
---|---|---|
committer | Nils Philippsen <nils@redhat.com> | 2015-08-19 16:32:16 +0200 |
commit | be901601473bd3ba5826d86fb9912843a3517a07 (patch) | |
tree | 0d3ae1654e6901f23fce39da78b4ec21cf201562 /paste/util/converters.py | |
download | paste-git-be901601473bd3ba5826d86fb9912843a3517a07.tar.gz |
Python 3: App must always return binary type.
Fixes tests.test_wsgiwrappers.test_wsgirequest_charset
Diffstat (limited to 'paste/util/converters.py')
-rw-r--r-- | paste/util/converters.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/paste/util/converters.py b/paste/util/converters.py new file mode 100644 index 0000000..11451bc --- /dev/null +++ b/paste/util/converters.py @@ -0,0 +1,30 @@ +# (c) 2005 Ian Bicking and contributors; written for Paste (http://pythonpaste.org) +# Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php + +import six + + +def asbool(obj): + if isinstance(obj, (six.binary_type, six.text_type)): + obj = obj.strip().lower() + if obj in ['true', 'yes', 'on', 'y', 't', '1']: + return True + elif obj in ['false', 'no', 'off', 'n', 'f', '0']: + return False + else: + raise ValueError( + "String is not true/false: %r" % obj) + return bool(obj) + +def aslist(obj, sep=None, strip=True): + if isinstance(obj, (six.binary_type, six.text_type)): + lst = obj.split(sep) + if strip: + lst = [v.strip() for v in lst] + return lst + elif isinstance(obj, (list, tuple)): + return obj + elif obj is None: + return [] + else: + return [obj] |