diff options
author | Eric V. Smith <eric@trueblade.com> | 2014-04-14 16:08:21 (GMT) |
---|---|---|
committer | Eric V. Smith <eric@trueblade.com> | 2014-04-14 16:08:21 (GMT) |
commit | 280c458f9ec3b7d5d1aa8e83c02af350a15ede8e (patch) | |
tree | 8a44f937b69eaf29d0df4f233ba87d97053f39ea /Lib/test/test_unicode.py | |
parent | f33201b6dbb700b6d07b25bfeb63deeaf1446419 (diff) | |
parent | 2ea9712ee91e6b6a6c1b10d9c21b219bc4fbe54b (diff) | |
download | cpython-280c458f9ec3b7d5d1aa8e83c02af350a15ede8e.zip cpython-280c458f9ec3b7d5d1aa8e83c02af350a15ede8e.tar.gz cpython-280c458f9ec3b7d5d1aa8e83c02af350a15ede8e.tar.bz2 |
Closes issue #12546: Allow \x00 as a fill character for builtin type __format__ methods.
Diffstat (limited to 'Lib/test/test_unicode.py')
-rw-r--r-- | Lib/test/test_unicode.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py index 7fda51c..64e6bf5 100644 --- a/Lib/test/test_unicode.py +++ b/Lib/test/test_unicode.py @@ -874,6 +874,27 @@ class UnicodeTest(string_tests.CommonTest, self.assertEqual('{0:10000}'.format(''), ' ' * 10000) self.assertEqual('{0:10000000}'.format(''), ' ' * 10000000) + # issue 12546: use \x00 as a fill character + self.assertEqual('{0:\x00<6s}'.format('foo'), 'foo\x00\x00\x00') + self.assertEqual('{0:\x01<6s}'.format('foo'), 'foo\x01\x01\x01') + self.assertEqual('{0:\x00^6s}'.format('foo'), '\x00foo\x00\x00') + self.assertEqual('{0:^6s}'.format('foo'), ' foo ') + + self.assertEqual('{0:\x00<6}'.format(3), '3\x00\x00\x00\x00\x00') + self.assertEqual('{0:\x01<6}'.format(3), '3\x01\x01\x01\x01\x01') + self.assertEqual('{0:\x00^6}'.format(3), '\x00\x003\x00\x00\x00') + self.assertEqual('{0:<6}'.format(3), '3 ') + + self.assertEqual('{0:\x00<6}'.format(3.14), '3.14\x00\x00') + self.assertEqual('{0:\x01<6}'.format(3.14), '3.14\x01\x01') + self.assertEqual('{0:\x00^6}'.format(3.14), '\x003.14\x00') + self.assertEqual('{0:^6}'.format(3.14), ' 3.14 ') + + self.assertEqual('{0:\x00<12}'.format(3+2.0j), '(3+2j)\x00\x00\x00\x00\x00\x00') + self.assertEqual('{0:\x01<12}'.format(3+2.0j), '(3+2j)\x01\x01\x01\x01\x01\x01') + self.assertEqual('{0:\x00^12}'.format(3+2.0j), '\x00\x00\x00(3+2j)\x00\x00\x00') + self.assertEqual('{0:^12}'.format(3+2.0j), ' (3+2j) ') + # format specifiers for user defined type self.assertEqual('{0:abc}'.format(C()), 'abc') |