diff options
| author | Ondřej Surý <ondrej@sury.org> | 2011-02-16 10:13:02 +0100 |
|---|---|---|
| committer | Ondřej Surý <ondrej@sury.org> | 2011-02-16 10:13:02 +0100 |
| commit | fd5a0b31640419ca63d1ddeaffd6d3cf2a741814 (patch) | |
| tree | bfd17d84c5181d7b98d7d66f56573f4fc897e31c /ext/mbstring/tests | |
| parent | 01fcdff3849c3691d9aaeaab735846ab6d8895ca (diff) | |
| download | php-upstream/5.3.5.tar.gz | |
Imported Upstream version 5.3.5upstream/5.3.5
Diffstat (limited to 'ext/mbstring/tests')
| -rw-r--r-- | ext/mbstring/tests/bug43301.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/bug52861.phpt | 26 | ||||
| -rw-r--r-- | ext/mbstring/tests/bug52931.phpt | 22 | ||||
| -rw-r--r-- | ext/mbstring/tests/bug52981.phpt | 23 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt | 9 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_send_mail01.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_send_mail02.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_send_mail03.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_send_mail04.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_send_mail05.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_send_mail06.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_send_mail07.phpt | 4 | ||||
| -rw-r--r-- | ext/mbstring/tests/mb_strcut_missing_boundary_check.phpt | 31 |
13 files changed, 121 insertions, 22 deletions
diff --git a/ext/mbstring/tests/bug43301.phpt b/ext/mbstring/tests/bug43301.phpt index 71b169c12..310426a14 100644 --- a/ext/mbstring/tests/bug43301.phpt +++ b/ext/mbstring/tests/bug43301.phpt @@ -15,7 +15,7 @@ echo mb_ereg_replace($ptr,'$1',$txt,'e'); ?> --EXPECTF-- -Parse error: syntax error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in %s/bug43301.php(%d) : mbregex replace on line 1 +Parse error: syntax error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in %sbug43301.php(%d) : mbregex replace on line 1 Fatal error: mb_ereg_replace(): Failed evaluating code: -$1 in %s/bug43301.php on line %d +$1 in %sbug43301.php on line %d diff --git a/ext/mbstring/tests/bug52861.phpt b/ext/mbstring/tests/bug52861.phpt new file mode 100644 index 000000000..085f3ba29 --- /dev/null +++ b/ext/mbstring/tests/bug52861.phpt @@ -0,0 +1,26 @@ +--TEST-- +Bug #52681 (mb_send_mail() appends an extra MIME-Version header) +--SKIPIF-- +<?php +if (!function_exists("mb_send_mail") || !mb_language("neutral")) { + die("skip mb_send_mail() not available"); +} +?> +--INI-- +sendmail_path=/bin/cat +mail.add_x_header=off +--FILE-- +<?php +$to = 'example@example.com'; +$headers = 'MIME-Version: 2.0'; + +mb_send_mail($to, mb_language(), "test", $headers); +?> +--EXPECTF-- +To: example@example.com +Subject: %s +MIME-Version: 2.0 +Content-Type: text/plain; charset=%s +Content-Transfer-Encoding: %s + +%s diff --git a/ext/mbstring/tests/bug52931.phpt b/ext/mbstring/tests/bug52931.phpt new file mode 100644 index 000000000..9669d884c --- /dev/null +++ b/ext/mbstring/tests/bug52931.phpt @@ -0,0 +1,22 @@ +--TEST-- +Bug #52931 (strripos not overloaded with function overloading enabled) +--INI-- +mbstring.func_overload = 7 +mbstring.internal_encoding = utf-8 +--FILE-- +<?php + +$string = '<body>Umlauttest öüä</body>'; + +var_dump(strlen($string)); +var_dump(mb_strlen($string)); + +var_dump(strripos($string, '</body>')); +var_dump(mb_strripos($string, '</body>')); + +?> +--EXPECTF-- +int(27) +int(27) +int(20) +int(20) diff --git a/ext/mbstring/tests/bug52981.phpt b/ext/mbstring/tests/bug52981.phpt new file mode 100644 index 000000000..fe96a56f0 --- /dev/null +++ b/ext/mbstring/tests/bug52981.phpt @@ -0,0 +1,23 @@ +--TEST--
+Bug #52981 (Unicode properties are outdated (from Unicode 3.2))
+--SKIPIF--
+<?php extension_loaded('mbstring') or die('skip mbstring not available'); ?>
+--FILE--
+<?php
+function test($str)
+{
+ $upper = mb_strtoupper($str, 'UTF-8');
+ $len = strlen($upper);
+ for ($i = 0; $i < $len; ++$i) echo dechex(ord($upper[$i])) . ' ';
+ echo "\n";
+}
+
+// OK
+test("\xF0\x90\x90\xB8");// U+10438 DESERET SMALL LETTER H (added in 3.1.0, March 2001)
+// not OK
+test("\xE2\xB0\xB0"); // U+2C30 GLAGOLITIC SMALL LETTER AZU (added in 4.1.0, March 2005)
+test("\xD4\xA5"); // U+0525 CYRILLIC SMALL LETTER PE WITH DESCENDER (added in 5.2.0, October 2009)
+--EXPECTF--
+f0 90 90 90
+e2 b0 80
+d4 a4
diff --git a/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt b/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt index 7a1c8868c..e07ccad99 100644 --- a/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt +++ b/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt @@ -1,10 +1,7 @@ --TEST-- -p8_only -Title: Test mb_decode_mimeheader() function : usage variation -Internal Reason: we output an extra warning message -P8 only feature: Yes -Author: D. Kelsey -Date: 01/09/2008 +Test mb_decode_mimeheader() function : usage variation +--CREDITS-- +D. Kesley --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); diff --git a/ext/mbstring/tests/mb_send_mail01.phpt b/ext/mbstring/tests/mb_send_mail01.phpt index 90cc3aa9c..28a401e31 100644 --- a/ext/mbstring/tests/mb_send_mail01.phpt +++ b/ext/mbstring/tests/mb_send_mail01.phpt @@ -25,14 +25,14 @@ if (mb_language("neutral")) { --EXPECTF-- To: example@example.com Subject: %s -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s Content-Transfer-Encoding: %s %s To: example@example.com Subject: test neutral -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: BASE64 diff --git a/ext/mbstring/tests/mb_send_mail02.phpt b/ext/mbstring/tests/mb_send_mail02.phpt index 81f2464d5..af335ccc5 100644 --- a/ext/mbstring/tests/mb_send_mail02.phpt +++ b/ext/mbstring/tests/mb_send_mail02.phpt @@ -25,14 +25,14 @@ if (mb_language("japanese")) { --EXPECTF-- To: example@example.com Subject: %s -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s Content-Transfer-Encoding: %s %s To: example@example.com Subject: =?ISO-2022-JP?B?GyRCJUYlOSVIGyhCIEphcGFuZXNl?= -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit diff --git a/ext/mbstring/tests/mb_send_mail03.phpt b/ext/mbstring/tests/mb_send_mail03.phpt index 1334fadd7..23a988ffe 100644 --- a/ext/mbstring/tests/mb_send_mail03.phpt +++ b/ext/mbstring/tests/mb_send_mail03.phpt @@ -25,14 +25,14 @@ if (mb_language("english")) { --EXPECTF-- To: example@example.com Subject: %s -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s Content-Transfer-Encoding: %s %s To: example@example.com Subject: test English -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s-8859-1 Content-Transfer-Encoding: 8bit diff --git a/ext/mbstring/tests/mb_send_mail04.phpt b/ext/mbstring/tests/mb_send_mail04.phpt index 0dcc318cc..49bda090f 100644 --- a/ext/mbstring/tests/mb_send_mail04.phpt +++ b/ext/mbstring/tests/mb_send_mail04.phpt @@ -25,14 +25,14 @@ if (mb_language("german")) { --EXPECTF-- To: example@example.com Subject: %s -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s Content-Transfer-Encoding: %s %s To: example@example.com Subject: =?ISO-8859-15?Q?Pr=FCfung=20German?= -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s-8859-15 Content-Transfer-Encoding: 8bit diff --git a/ext/mbstring/tests/mb_send_mail05.phpt b/ext/mbstring/tests/mb_send_mail05.phpt index a93fa791a..1bbaaadcd 100644 --- a/ext/mbstring/tests/mb_send_mail05.phpt +++ b/ext/mbstring/tests/mb_send_mail05.phpt @@ -28,7 +28,7 @@ if (mb_language("simplified chinese")) { --EXPECTF-- To: example@example.com Subject: %s -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s Content-Transfer-Encoding: %s @@ -36,7 +36,7 @@ Content-Transfer-Encoding: %s To: example@example.com Subject: =?HZ-GB-2312?B?fnsyYlFpfn0gU2ltcGxpZmllZCBD?= =?HZ-GB-2312?B?aGluZXNl?= -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=HZ-GB-2312 Content-Transfer-Encoding: 7bit diff --git a/ext/mbstring/tests/mb_send_mail06.phpt b/ext/mbstring/tests/mb_send_mail06.phpt index 9970340d5..4eb5492bc 100644 --- a/ext/mbstring/tests/mb_send_mail06.phpt +++ b/ext/mbstring/tests/mb_send_mail06.phpt @@ -28,14 +28,14 @@ if (mb_language("traditional chinese")) { --EXPECTF-- To: example@example.com Subject: %s -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s Content-Transfer-Encoding: %s %s To: example@example.com Subject: =?BIG5?B?tPrF5yBUcmFkaXRpb25hbCBDaGluZXNl?= -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=BIG5 Content-Transfer-Encoding: 8bit diff --git a/ext/mbstring/tests/mb_send_mail07.phpt b/ext/mbstring/tests/mb_send_mail07.phpt index afd9a0b15..42b91fa68 100644 --- a/ext/mbstring/tests/mb_send_mail07.phpt +++ b/ext/mbstring/tests/mb_send_mail07.phpt @@ -28,14 +28,14 @@ if (mb_language("korean")) { --EXPECTF-- To: example@example.com Subject: %s -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=%s Content-Transfer-Encoding: %s %s To: example@example.com Subject: =?ISO-2022-KR?B?GyQpQw5FVz06Ri4PIEtvcmVhbg8=?= -Mime-Version: 1.0 +MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-KR Content-Transfer-Encoding: 7bit diff --git a/ext/mbstring/tests/mb_strcut_missing_boundary_check.phpt b/ext/mbstring/tests/mb_strcut_missing_boundary_check.phpt new file mode 100644 index 000000000..a67b99e7d --- /dev/null +++ b/ext/mbstring/tests/mb_strcut_missing_boundary_check.phpt @@ -0,0 +1,31 @@ +--TEST-- +mb_strcut() missing boundary check. +--SKIPIF-- +<?php +extension_loaded('mbstring') or die('skip'); +function_exists('mb_convert_encoding') or die("skip mb_convert_encoding() is not available in this build"); +?> +--FILE-- +<?php +mb_internal_encoding("UCS-4LE"); +var_dump(bin2hex(mb_strcut("\x61\x00\x00\x00\x62\x00\x00\x00\x63\x00\x00\x00", 0, 32))); +mb_internal_encoding("UCS-4BE"); +var_dump(bin2hex(mb_strcut("\x00\x00\x00\x61\x00\x00\x00\x62\x00\x00\x00\x63", 0, 32))); +mb_internal_encoding("UCS-2LE"); +var_dump(bin2hex(mb_strcut("\x61\x00\x62\x00\x63\x00", 0, 32))); +mb_internal_encoding("UCS-2BE"); +var_dump(bin2hex(mb_strcut("\x00\x61\x00\x62\x00\x63", 0, 32))); +mb_internal_encoding("UTF-16"); +var_dump(bin2hex(mb_strcut("\x00\x61\x00\x62\x00\x63", 0, 32))); +mb_internal_encoding("UTF-8"); +var_dump(bin2hex(mb_strcut("abc", 0, 32))); +mb_internal_encoding("ISO-8859-1"); +var_dump(bin2hex(mb_strcut("abc", 0, 32))); +--EXPECT-- +string(24) "610000006200000063000000" +string(24) "000000610000006200000063" +string(12) "610062006300" +string(12) "006100620063" +string(12) "006100620063" +string(6) "616263" +string(6) "616263" |
