diff options
Diffstat (limited to 'Lib/test/test_unicode.py')
-rw-r--r-- | Lib/test/test_unicode.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py index 662acd378d..47d7236b70 100644 --- a/Lib/test/test_unicode.py +++ b/Lib/test/test_unicode.py @@ -424,6 +424,10 @@ class UnicodeTest( def __format__(self, format_spec): return 1.0 + class I(datetime.date): + def __format__(self, format_spec): + return self.strftime(format_spec) + self.assertEqual(''.format(), '') self.assertEqual('abc'.format(), 'abc') @@ -504,9 +508,6 @@ class UnicodeTest( self.assertEqual('{0!r:}'.format('Hello'), "'Hello'") self.assertEqual('{0!r}'.format(F('Hello')), 'F(Hello)') - # XXX should pass, but currently don't - # format(object, "") - # test fallback to object.__format__ self.assertEqual('{0}'.format({}), '{}') self.assertEqual('{0}'.format([]), '[]') @@ -518,6 +519,11 @@ class UnicodeTest( self.assertEqual('{0:>15s}'.format(G('data')), ' string is data') self.assertEqual('{0!s}'.format(G('data')), 'string is data') + self.assertEqual("{0:date: %Y-%m-%d}".format(I(year=2007, + month=8, + day=27)), + "date: 2007-08-27") + # string format specifiers self.assertEqual('{0:}'.format('a'), 'a') |