encoding.utf8 fixes

pull/2951/head
penguindark 2019-12-01 18:41:29 +01:00 committed by Alexander Medvednikov
parent ee1edab2a9
commit 322733d59a
2 changed files with 825 additions and 732 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,28 @@
import encoding.utf8
fn test_utf8_util() {
src:="ăĂ ôÔ testo æ"
// string test
src:="ăĂ ôÔ testo æ"//_\u1E5A\u1E5B<=>\u1F49\u1F41<=>\u0128\u012a\u012c" // len 29 runes, raw 49 bytes
src_upper:="ĂĂ ÔÔ TESTO Æ"//_\u1E5A\u1E5A<=>\u1F49\u1F49<=>\u0128\u012A\u012C"
src_lower:="ăă ôô testo æ"//_\u1E5B\u1E5B<=>\u1F41\u1F41<=>\u0129\u012B\u012D"
upper:=utf8.to_upper(src)
lower:=utf8.to_lower(src)
assert upper=="ĂĂ ÔÔ TESTO Æ"
assert lower=="ăă ôô testo æ"
assert upper==src_upper
assert lower==src_lower
// ustring test
src1:=src.ustring()
upper1:=utf8.u_to_upper(src1)
lower1:=utf8.u_to_lower(src1)
assert upper1==( src_upper.ustring() )
assert lower1==( src_lower.ustring() )
// test len function
assert utf8.len("pippo")==5
assert utf8.len(src)==15 //29
assert src.len==24 //49
// test u_len function
assert utf8.u_len(src1)==15 //29
assert utf8.u_len("pippo".ustring())==5
}