diff options
| author | Chris McDonough <chrism@plope.com> | 2011-09-20 07:01:01 -0400 |
|---|---|---|
| committer | Chris McDonough <chrism@plope.com> | 2011-09-20 07:01:01 -0400 |
| commit | 964c75befd9cebf5c35c6f508d0449518d0771e7 (patch) | |
| tree | cadfca0f56adae303b2156abc2b8c62153680abc /webob | |
| parent | b96876888e4cf119b6cbce150909d0c0bd69ad90 (diff) | |
| download | webob-964c75befd9cebf5c35c6f508d0449518d0771e7.tar.gz | |
fix most test_exc tests, all datetime_utils tests, some test_dec tests for 3.2
Diffstat (limited to 'webob')
| -rw-r--r-- | webob/datetime_utils.py | 7 | ||||
| -rw-r--r-- | webob/dec.py | 7 | ||||
| -rw-r--r-- | webob/exc.py | 19 | ||||
| -rw-r--r-- | webob/util.py | 3 |
4 files changed, 24 insertions, 12 deletions
diff --git a/webob/datetime_utils.py b/webob/datetime_utils.py index 83c3706..103a459 100644 --- a/webob/datetime_utils.py +++ b/webob/datetime_utils.py @@ -8,9 +8,10 @@ from email.utils import parsedate_tz from email.utils import mktime_tz from email.utils import formatdate -from webob.compat import text_type from webob.compat import binary_type +from webob.compat import text_type from webob.compat import integer_types +from webob.compat import text_ __all__ = [ 'UTC', 'timedelta_to_seconds', @@ -69,9 +70,9 @@ def parse_date(value): return datetime.fromtimestamp(t, UTC) def serialize_date(dt): - if isinstance(dt, text_type): - dt = dt.encode('ascii') if isinstance(dt, binary_type): + dt = text_(dt) + if isinstance(dt, text_type): return dt if isinstance(dt, timedelta): dt = _now() + dt diff --git a/webob/dec.py b/webob/dec.py index f402315..69853bd 100644 --- a/webob/dec.py +++ b/webob/dec.py @@ -10,6 +10,9 @@ import sys import webob import webob.exc from webob.compat import class_types +from webob.compat import text_type +from webob.compat import binary_type +from webob.compat import bytes_ __all__ = ['wsgify'] @@ -150,7 +153,9 @@ class wsgify(object): if resp is None: ## FIXME: I'm not sure what this should be? resp = req.response - elif isinstance(resp, basestring): + if isinstance(resp, text_type): + resp = bytes_(resp, req.charset) + if isinstance(resp, binary_type): body = resp resp = req.response resp.write(body) diff --git a/webob/exc.py b/webob/exc.py index f117f25..4903383 100644 --- a/webob/exc.py +++ b/webob/exc.py @@ -163,12 +163,15 @@ import re import sys from string import Template -from webob import Response -from webob import Request -from webob import html_escape from webob.compat import urlparse from webob.compat import class_types +from webob.compat import text_type +from webob.compat import binary_type +from webob.compat import text_ +from webob.request import Request +from webob.response import Response from webob.util import warn_deprecation +from webob.util import html_escape tag_re = re.compile(r'<.*?>', re.S) br_re = re.compile(r'<br.*?>', re.I|re.S) @@ -177,11 +180,13 @@ comment_re = re.compile(r'<!--|-->') def no_escape(value): if value is None: return '' - if not isinstance(value, basestring): + if not isinstance(value, text_type): if hasattr(value, '__unicode__'): - value = unicode(value) + value = value.__unicode__() + if isinstance(value, binary_type): + value = text_(value, 'utf-8') else: - value = str(value) + value = text_type(value) return value def strip_tags(value): @@ -304,7 +309,7 @@ ${body}''') content_type = 'text/plain' body = self.plain_body(environ) extra_kw = {} - if isinstance(body, unicode): + if isinstance(body, text_type): extra_kw.update(charset='utf-8') resp = Response(body, status=self.status, diff --git a/webob/util.py b/webob/util.py index 0f590a2..8b032f5 100644 --- a/webob/util.py +++ b/webob/util.py @@ -2,6 +2,7 @@ import cgi, warnings from webob.headers import _trans_key from webob.compat import string_types from webob.compat import text_type +from webob.compat import text_ def html_escape(s): """HTML-escape a string or object @@ -25,7 +26,7 @@ def html_escape(s): s = cgi.escape(s, True) if isinstance(s, text_type): s = s.encode('ascii', 'xmlcharrefreplace') - return s + return text_(s) def header_docstring(header, rfc_section): if header.isupper(): |
