Commit abdb21a3 authored by Victor Stinner's avatar Victor Stinner

Merged revisions 79281 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r79281 | victor.stinner | 2010-03-22 13:50:40 +0100 (lun., 22 mars 2010) | 16 lines

  Merged revisions 79278,79280 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r79278 | victor.stinner | 2010-03-22 13:24:37 +0100 (lun., 22 mars 2010) | 2 lines

    Issue #1583863: An unicode subclass can now override the __str__ method
  ........
    r79280 | victor.stinner | 2010-03-22 13:36:28 +0100 (lun., 22 mars 2010) | 5 lines

    Fix the NEWS about my last commit: an unicode subclass can now override the
    __unicode__ method (and not the __str__ method).

    Simplify also the testcase.
  ........
................
parent 6a11edb5
......@@ -1223,6 +1223,14 @@ class UnicodeTest(
self.assertRaises(MemoryError, alloc)
self.assertRaises(MemoryError, alloc)
def test_format_subclass(self):
class S(str):
def __str__(self):
return '__str__ overridden'
s = S('xxx')
self.assertEquals("%s" % s, '__str__ overridden')
self.assertEquals("{}".format(s), '__str__ overridden')
def test_main():
support.run_unittest(__name__)
......
......@@ -9,6 +9,11 @@ What's New in Python 3.1.3?
*Release date: 20XX-XX-XX*
Core and Builtins
-----------------
- Issue #1583863: An str subclass can now override the __str__ method
Library
-------
......
......@@ -9308,7 +9308,7 @@ PyObject *PyUnicode_Format(PyObject *format,
case 's':
case 'r':
case 'a':
if (PyUnicode_Check(v) && c == 's') {
if (PyUnicode_CheckExact(v) && c == 's') {
temp = v;
Py_INCREF(temp);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment