[pypy-svn] r48502 - in pypy/branch/unicode-objspace/pypy/objspace/std: . test
fijal at codespeak.net
fijal at codespeak.net
Sat Nov 10 13:38:57 CET 2007
Author: fijal
Date: Sat Nov 10 13:38:56 2007
New Revision: 48502
Modified:
pypy/branch/unicode-objspace/pypy/objspace/std/test/test_unicodeobject.py
pypy/branch/unicode-objspace/pypy/objspace/std/unicodetype.py
Log:
I don't get it, but at least test is passing
Modified: pypy/branch/unicode-objspace/pypy/objspace/std/test/test_unicodeobject.py
==============================================================================
--- pypy/branch/unicode-objspace/pypy/objspace/std/test/test_unicodeobject.py (original)
+++ pypy/branch/unicode-objspace/pypy/objspace/std/test/test_unicodeobject.py Sat Nov 10 13:38:56 2007
@@ -365,3 +365,8 @@
raises(TypeError, u'hello'.translate)
raises(TypeError, u'abababc'.translate, {ord('a'):''})
+
+ def test_unicode_form_encoded_object(self):
+ assert unicode('x', 'utf-8') == u'x'
+ assert unicode('x', 'utf-8', 'strict') == u'x'
+
Modified: pypy/branch/unicode-objspace/pypy/objspace/std/unicodetype.py
==============================================================================
--- pypy/branch/unicode-objspace/pypy/objspace/std/unicodetype.py (original)
+++ pypy/branch/unicode-objspace/pypy/objspace/std/unicodetype.py Sat Nov 10 13:38:56 2007
@@ -148,12 +148,12 @@
encoding = space.defaultencoding
w_decode = space.getattr(w_codecs, space.wrap("decode"))
if errors is None:
- w_retval, w_length = space.unpacktuple(
- space.call(w_decode, w_obj, space.wrap(encoding)), 2)
+ w_retval = space.call(w_decode, space.newlist([w_obj,
+ space.wrap(encoding)]))
else:
- w_retval, w_length = space.unpacktuple(
- space.call(w_decode, w_obj, space.wrap(encoding),
- space.wrap(errors)), 2)
+ w_retval = space.call(w_decode, space.newlist([w_obj,
+ space.wrap(encoding),
+ space.wrap(errors)]))
if not space.is_true(space.isinstance(w_retval, space.w_unicode)):
raise OperationError(
space.w_TypeError,
@@ -180,7 +180,7 @@
w_res = space.call(w_unicode_method)
if space.is_true(space.isinstance(w_res, space.w_unicode)):
return w_res
- return unicode_from_encoded_object(w_res, None, "strict")
+ return unicode_from_encoded_object(space, w_res, None, "strict")
def unicode_from_string(space, w_str):
# this is a performance and bootstrapping hack
More information about the Pypy-commit
mailing list