Tres Seaver
2012-03-18 d6391cada4cc468f5cfaa6e75ff1bb009c7b2285
Avoid un-checked use of 'unicode' builtin.
2 files modified
17 ■■■■ changed files
repoze/who/_auth_tkt.py 8 ●●●● patch | view | raw | blame | history
repoze/who/plugins/tests/test_authtkt.py 9 ●●●●● patch | view | raw | blame | history
repoze/who/_auth_tkt.py
@@ -52,10 +52,6 @@
    from hashlib import md5
except ImportError:
    from md5 import md5
try:
    STRING_TYPES = (str, unicode)
except NameError:  #pragma NO COVER Python >= 3.0
    STRING_TYPES = (str,)
from repoze.who._compat import get_cookies
from repoze.who._compat import STRING_TYPES
@@ -208,7 +204,7 @@
def maybe_encode(s, encoding='utf8'):
    if isinstance(s, unicode):
    if not isinstance(s, type(b'')):
        s = s.encode(encoding)
    return s
@@ -389,7 +385,7 @@
def asbool(obj):
    # Lifted from paste.deploy.converters
    if isinstance(obj, (str, unicode)):
    if isinstance(obj, STRING_TYPES):
        obj = obj.strip().lower()
        if obj in ['true', 'yes', 'on', 'y', 't', '1']:
            return True
repoze/who/plugins/tests/test_authtkt.py
@@ -401,10 +401,11 @@
                          'Path=/' % new_val))
    def test_remember_creds_different_unicode_userid(self):
        from repoz.who._compat import u
        plugin = self._makeOne('secret')
        old_val = self._makeTicket(userid='userid')
        environ = self._makeEnviron({'HTTP_COOKIE':'auth_tkt=%s' % old_val})
        userid = unicode('\xc2\xa9', 'utf-8')
        userid = u('\xc2\xa9', 'utf-8')
        new_val = self._makeTicket(userid=userid.encode('utf-8'),
                                   userdata='userid_type:unicode')
        result = plugin.remember(environ, {'repoze.who.userid':userid,
@@ -559,13 +560,9 @@
        self.assertEqual(plugin.userid_checker, make_plugin)
    def test_remember_max_age_unicode(self):
        try:
            u = unicode
        except NameError:
            u = str
        from repoz.who._compat import u
        plugin = self._makeOne('secret')
        environ = {'HTTP_HOST':'example.com'}
        tkt = self._makeTicket(userid='chris', userdata='')
        result = plugin.remember(environ, {'repoze.who.userid': 'chris',
                                           'max_age': u('500')})