summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2018-09-07 16:00:58 (GMT)
committerGitHub <noreply@github.com>2018-09-07 16:00:58 (GMT)
commit886483e2b9bbabf60ab769683269b873381dd5ee (patch)
tree90fffe79f3a8897003eccd4c7e6c765ebe3e1bce /Lib
parent254a4663d8c5970ae2928185c50ebaa6c7e62c80 (diff)
downloadcpython-886483e2b9bbabf60ab769683269b873381dd5ee.zip
cpython-886483e2b9bbabf60ab769683269b873381dd5ee.tar.gz
cpython-886483e2b9bbabf60ab769683269b873381dd5ee.tar.bz2
bpo-34595: Add %T format to PyUnicode_FromFormatV() (GH-9080)
* Add %T format to PyUnicode_FromFormatV(), and so to PyUnicode_FromFormat() and PyErr_Format(), to format an object type name: equivalent to "%s" with Py_TYPE(obj)->tp_name. * Replace Py_TYPE(obj)->tp_name with %T format in unicodeobject.c. * Add unit test on %T format. * Rename unicode_fromformat_write_cstr() to unicode_fromformat_write_utf8(), to make the intent more explicit.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_unicode.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index fb7bb2d..73111f1 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -2655,6 +2655,10 @@ class CAPITest(unittest.TestCase):
check_format(r"%A:'abc\xe9\uabcd\U0010ffff'",
b'%%A:%A', 'abc\xe9\uabcd\U0010ffff')
+ # test %T (object type name)
+ check_format(r"type name: str",
+ b'type name: %T', 'text')
+
# test %V
check_format('repr=abc',
b'repr=%V', 'abc', b'xyz')