diff Lib/test/test_unicode.py @ 35331:ef11cbc08dab legacy-trunk

Change the %s format specifier for str objects so that it returns a unicode instance if the argument is not an instance of basestring and calling __str__ on the argument returns a unicode instance.
author Neil Schemenauer <nascheme@enme.ucalgary.ca>
date Fri, 12 Aug 2005 17:34:58 +0000
parents 9a1b1e1ae653
children bb80b8f393ef
line wrap: on
line diff
--- a/Lib/test/test_unicode.py	Fri Aug 12 14:02:32 2005 +0000
+++ b/Lib/test/test_unicode.py	Fri Aug 12 17:34:58 2005 +0000
@@ -388,6 +388,10 @@
         self.assertEqual('%i %*.*s' % (10, 5,3,u'abc',), u'10   abc')
         self.assertEqual('%i%s %*.*s' % (10, 3, 5, 3, u'abc',), u'103   abc')
         self.assertEqual('%c' % u'a', u'a')
+        class Wrapper:
+            def __str__(self):
+                return u'\u1234'
+        self.assertEqual('%s' % Wrapper(), u'\u1234')
 
     def test_constructor(self):
         # unicode(obj) tests (this maps to PyObject_Unicode() at C level)