From 17ddbd050a97af86f576d4315e985acfb9fd3cf5 Mon Sep 17 00:00:00 2001 From: Petr Skoda Date: Wed, 24 Aug 2011 18:47:05 +0200 Subject: [PATCH] MDL-29027 yet more tests --- lib/simpletest/testtextlib.php | 45 ++++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 5 deletions(-) diff --git a/lib/simpletest/testtextlib.php b/lib/simpletest/testtextlib.php index a0d007d6841..e093db38054 100644 --- a/lib/simpletest/testtextlib.php +++ b/lib/simpletest/testtextlib.php @@ -57,6 +57,7 @@ class textlib_test extends UnitTestCase { $this->assertIdentical(textlib::convert($iso2, 'iso-8859-2', 'iso-8859-2'), $iso2); $this->assertIdentical(textlib::convert($win, 'win-1250', 'cp1250'), $win); + $utf8 = '言語設定'; $str = pack("H*", "b8c0b8ecc0dfc4ea"); //EUC-JP $this->assertIdentical(textlib::convert($utf8, 'utf-8', 'EUC-JP'), $str); @@ -78,7 +79,6 @@ class textlib_test extends UnitTestCase { $str = pack("H*", "bcf2cce5d6d0cec4"); //GB18030 $this->assertIdentical(textlib::convert($utf8, 'utf-8', 'GB18030'), $str); $this->assertIdentical(textlib::convert($str, 'GB18030', 'utf-8'), $utf8); - } public function test_substr() { @@ -97,7 +97,7 @@ class textlib_test extends UnitTestCase { $this->assertIdentical(textlib::substr($win, 0, 100, 'cp1250'), textlib::convert($str, 'utf-8', 'cp1250')); $this->assertIdentical(textlib::substr($win, -3, 2, 'cp1250'), textlib::convert('če', 'utf-8', 'cp1250')); - + $str = pack("H*", "b8c0b8ecc0dfc4ea"); //EUC-JP $s = pack("H*", "b8ec"); //EUC-JP $this->assertIdentical(textlib::substr($str, 1, 1, 'EUC-JP'), $s); @@ -135,7 +135,6 @@ class textlib_test extends UnitTestCase { $str = pack("H*", "b8c0b8ecc0dfc4ea"); //EUC-JP $this->assertIdentical(textlib::strlen($str, 'EUC-JP'), 4); - $str = pack("H*", "1b2442386c1b2842"); //ISO-2022-JP $this->assertIdentical(textlib::strlen($str, 'ISO-2022-JP'), 1); $str = pack("H*", "1b24423840386c405f446a1b2842"); //ISO-2022-JP @@ -155,7 +154,6 @@ class textlib_test extends UnitTestCase { $this->assertIdentical(textlib::strlen($str, 'GB18030'), 1); $str = pack("H*", "bcf2cce5d6d0cec4"); //GB18030 $this->assertIdentical(textlib::strlen($str, 'GB18030'), 4); - } public function test_strtolower() { @@ -168,6 +166,25 @@ class textlib_test extends UnitTestCase { $win = pack("H*", "8e6c759d6f75e86bfd206b6f6eede8656b"); $this->assertIdentical(textlib::strtolower($win, 'cp1250'), textlib::convert($low, 'utf-8', 'cp1250')); + + + $str = '言語設定'; + $this->assertIdentical(textlib::strtolower($str), $str); + + $str = '简体中文'; + $this->assertIdentical(textlib::strtolower($str), $str); + + $str = pack("H*", "1b24423840386c405f446a1b2842"); //ISO-2022-JP + $this->assertIdentical(textlib::strtolower($str, 'ISO-2022-JP'), $str); + + $str = pack("H*", "8cbe8cea90dd92e8"); //SHIFT-JIS + $this->assertIdentical(textlib::strtolower($str, 'SHIFT-JIS'), $str); + + $str = pack("H*", "bcf2cce5d6d0cec4"); //GB2312 + $this->assertIdentical(textlib::strtolower($str, 'GB2312'), $str); + + $str = pack("H*", "bcf2cce5d6d0cec4"); //GB18030 + $this->assertIdentical(textlib::strtolower($str, 'GB18030'), $str); } public function test_strtoupper() { @@ -180,6 +197,25 @@ class textlib_test extends UnitTestCase { $win = pack("H*", "8e6c759d6f75e86bfd206b6f6eede8656b"); $this->assertIdentical(textlib::strtoupper($win, 'cp1250'), textlib::convert($up, 'utf-8', 'cp1250')); + + + $str = '言語設定'; + $this->assertIdentical(textlib::strtoupper($str), $str); + + $str = '简体中文'; + $this->assertIdentical(textlib::strtoupper($str), $str); + + $str = pack("H*", "1b24423840386c405f446a1b2842"); //ISO-2022-JP + $this->assertIdentical(textlib::strtoupper($str, 'ISO-2022-JP'), $str); + + $str = pack("H*", "8cbe8cea90dd92e8"); //SHIFT-JIS + $this->assertIdentical(textlib::strtoupper($str, 'SHIFT-JIS'), $str); + + $str = pack("H*", "bcf2cce5d6d0cec4"); //GB2312 + $this->assertIdentical(textlib::strtoupper($str, 'GB2312'), $str); + + $str = pack("H*", "bcf2cce5d6d0cec4"); //GB18030 + $this->assertIdentical(textlib::strtoupper($str, 'GB18030'), $str); } public function test_strpos() { @@ -205,7 +241,6 @@ class textlib_test extends UnitTestCase { public function test_entities_to_utf8() { $str = "Žluťoučký koníček"; $this->assertIdentical(textlib::entities_to_utf8($str), "Žluťoučký koníček"); - } public function test_utf8_to_entities() {