summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorMarc-André Lemburg <mal@egenix.com>2004-07-23 16:13:25 (GMT)
committerMarc-André Lemburg <mal@egenix.com>2004-07-23 16:13:25 (GMT)
commitd25c650461b6010ad66768e4495e780683745ced (patch)
treef6e85aa066a781717bfc58294888f27596b57341 /Lib
parentfe0808382b4bae113ad254ed1d984e94294beea0 (diff)
downloadcpython-d25c650461b6010ad66768e4495e780683745ced.zip
cpython-d25c650461b6010ad66768e4495e780683745ced.tar.gz
cpython-d25c650461b6010ad66768e4495e780683745ced.tar.bz2
Let u'%s' % obj try obj.__unicode__() first and fallback to obj.__str__().
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_unicode.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index e2db207..17c82ab 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -438,6 +438,14 @@ class UnicodeTest(
self.assertEqual(unicode(o), u'unicode(obj) is compatible to str()')
self.assertEqual(str(o), 'unicode(obj) is compatible to str()')
+ # %-formatting and .__unicode__()
+ self.assertEqual(u'%s' %
+ UnicodeCompat(u"u'%s' % obj uses obj.__unicode__()"),
+ u"u'%s' % obj uses obj.__unicode__()")
+ self.assertEqual(u'%s' %
+ UnicodeCompat(u"u'%s' % obj falls back to obj.__str__()"),
+ u"u'%s' % obj falls back to obj.__str__()")
+
for obj in (123, 123.45, 123L):
self.assertEqual(unicode(obj), unicode(str(obj)))