improved the ucnhash test a bit

This commit is contained in:
Fredrik Lundh 2001-01-19 11:13:46 +00:00
parent ee865c64da
commit 2acb54a194
2 changed files with 11 additions and 3 deletions

View File

@ -1,4 +1,7 @@
test_ucn
Testing General Unicode Character Name, and case insensitivity... done.
Testing name to code mapping.... done.
Testing code to name mapping for all characters.... done.
Found 10538 characters in the unicode name database
Testing misc. symbols for unicode character name expansion.... done.
Testing unicode character name expansion strict error handling.... done.

View File

@ -37,25 +37,30 @@ s = u"\N{LATIN CAPITAL LETTER T}" \
u"\N{LATIN SMALL LETTER P}" \
u"\N{FULL STOP}"
verify(s == u"The rEd fOx ate the sheep.", s)
print "done."
import ucnhash
# minimal sanity check
print "Testing name to code mapping....",
for char in "SPAM":
name = "LATIN SMALL LETTER %s" % char
code = ucnhash.getcode(name)
verify(ucnhash.getname(code) == name)
print "done."
# loop over all characters in the database
print "Testing code to name mapping for all characters....",
count = 0
for code in range(65536):
try:
name = ucnhash.getname(code)
verify(ucnhash.getcode(name) == code)
count += 1
except ValueError:
pass
print "done."
print "Found", count, "characters in the unicode name database"
# misc. symbol testing
print "Testing misc. symbols for unicode character name expansion....",
verify(u"\N{PILCROW SIGN}" == u"\u00b6")