@@ -641,6 +641,23 @@ def test_capitalize(self):
641641 self .checkequal ('Aaaa' , 'aaaa' , 'capitalize' )
642642 self .checkequal ('Aaaa' , 'AaAa' , 'capitalize' )
643643
644+ # check that titlecased chars are lowered correctly
645+ # \u1ffc is the titlecased char
646+ self .checkequal ('\u1ffc \u1ff3 \u1ff3 \u1ff3 ' ,
647+ '\u1ff3 \u1ff3 \u1ffc \u1ffc ' , 'capitalize' )
648+ # check with cased non-letter chars
649+ self .checkequal ('\u24c5 \u24e8 \u24e3 \u24d7 \u24de \u24dd ' ,
650+ '\u24c5 \u24ce \u24c9 \u24bd \u24c4 \u24c3 ' , 'capitalize' )
651+ self .checkequal ('\u24c5 \u24e8 \u24e3 \u24d7 \u24de \u24dd ' ,
652+ '\u24df \u24e8 \u24e3 \u24d7 \u24de \u24dd ' , 'capitalize' )
653+ self .checkequal ('\u2160 \u2171 \u2172 ' ,
654+ '\u2160 \u2161 \u2162 ' , 'capitalize' )
655+ self .checkequal ('\u2160 \u2171 \u2172 ' ,
656+ '\u2170 \u2171 \u2172 ' , 'capitalize' )
657+ # check with Ll chars with no upper - nothing changes here
658+ self .checkequal ('\u019b \u1d00 \u1d86 \u0221 \u1fb7 ' ,
659+ '\u019b \u1d00 \u1d86 \u0221 \u1fb7 ' , 'capitalize' )
660+
644661 self .checkraises (TypeError , 'hello' , 'capitalize' , 42 )
645662
646663 def test_lower (self ):
0 commit comments