Merged revisions 71894 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71894 | walter.doerwald | 2009-04-25 16:03:16 +0200 (Sa, 25 Apr 2009) | 4 lines

  Issue #5828 (Invalid behavior of unicode.lower): Fixed bogus logic in
  makeunicodedata.py and regenerated the Unicode database (This fixes
  u'\u1d79'.lower() == '\x00').
........
This commit is contained in:
Walter Dörwald 2009-04-25 14:13:56 +00:00
parent 939f9c898a
commit 1b08b30743
4 changed files with 41 additions and 25 deletions

View file

@ -20,7 +20,7 @@ encoding = 'utf-8'
class UnicodeMethodsTest(unittest.TestCase):
# update this, if the database changes
expectedchecksum = 'aef99984a58c8e1e5363a3175f2ff9608599a93e'
expectedchecksum = 'b7db9b5f1d804976fa921d2009cbef6f025620c1'
def test_method_checksum(self):
h = hashlib.sha1()
@ -258,6 +258,19 @@ class UnicodeMiscTest(UnicodeDatabaseTest):
# the upper-case mapping: as delta, or as absolute value
self.assert_("a".upper()=='A')
self.assert_("\u1d79".upper()=='\ua77d')
self.assert_(".".upper()=='.')
def test_bug_5828(self):
self.assertEqual("\u1d79".lower(), "\u1d79")
# Only U+0000 should have U+0000 as its upper/lower/titlecase variant
self.assertEqual(
[
c for c in range(sys.maxunicode+1)
if "\x00" in chr(c).lower()+chr(c).upper()+chr(c).title()
],
[0]
)
def test_main():
test.support.run_unittest(