From 7ce7a73095b03201797959891d63f99b078931f1 Mon Sep 17 00:00:00 2001 From: Yasuo Ohgaki Date: Sat, 2 Mar 2002 10:44:57 +0000 Subject: Add mbstring tests --- ext/mbstring/tests/001.phpt | 34 +++++++++++ ext/mbstring/tests/002.inc | 44 +++++++++++++++ ext/mbstring/tests/002.phpt | 28 ++++++++++ ext/mbstring/tests/003.inc | 32 +++++++++++ ext/mbstring/tests/003.phpt | 15 +++++ ext/mbstring/tests/004.inc | 56 +++++++++++++++++++ ext/mbstring/tests/004.phpt | 32 +++++++++++ ext/mbstring/tests/005.inc | 40 +++++++++++++ ext/mbstring/tests/005.phpt | 21 +++++++ ext/mbstring/tests/006.inc | 33 +++++++++++ ext/mbstring/tests/006.phpt | 19 +++++++ ext/mbstring/tests/007.inc | 11 ++++ ext/mbstring/tests/007.phpt | 11 ++++ ext/mbstring/tests/008.inc | 41 ++++++++++++++ ext/mbstring/tests/008.phpt | 22 ++++++++ ext/mbstring/tests/009.inc | 68 ++++++++++++++++++++++ ext/mbstring/tests/009.phpt | 33 +++++++++++ ext/mbstring/tests/010.inc | 102 +++++++++++++++++++++++++++++++++ ext/mbstring/tests/010.phpt | 59 ++++++++++++++++++++ ext/mbstring/tests/011.inc | 57 +++++++++++++++++++ ext/mbstring/tests/011.phpt | 31 +++++++++++ ext/mbstring/tests/012.inc | 19 +++++++ ext/mbstring/tests/012.phpt | 15 +++++ ext/mbstring/tests/013.inc | 19 +++++++ ext/mbstring/tests/013.phpt | 15 +++++ ext/mbstring/tests/014.inc | 22 ++++++++ ext/mbstring/tests/014.phpt | 17 ++++++ ext/mbstring/tests/015.inc | 127 ++++++++++++++++++++++++++++++++++++++++++ ext/mbstring/tests/015.phpt | 36 ++++++++++++ ext/mbstring/tests/016.inc | 90 ++++++++++++++++++++++++++++++ ext/mbstring/tests/016.phpt | 31 +++++++++++ ext/mbstring/tests/017.inc | 91 ++++++++++++++++++++++++++++++ ext/mbstring/tests/017.phpt | 30 ++++++++++ ext/mbstring/tests/018.inc | 24 ++++++++ ext/mbstring/tests/018.phpt | 10 ++++ ext/mbstring/tests/019.inc | 68 ++++++++++++++++++++++ ext/mbstring/tests/019.phpt | 38 +++++++++++++ ext/mbstring/tests/common.php | 53 ++++++++++++++++++ ext/mbstring/tests/skipif.inc | 11 ++++ 39 files changed, 1505 insertions(+) create mode 100644 ext/mbstring/tests/001.phpt create mode 100644 ext/mbstring/tests/002.inc create mode 100644 ext/mbstring/tests/002.phpt create mode 100644 ext/mbstring/tests/003.inc create mode 100644 ext/mbstring/tests/003.phpt create mode 100644 ext/mbstring/tests/004.inc create mode 100644 ext/mbstring/tests/004.phpt create mode 100644 ext/mbstring/tests/005.inc create mode 100644 ext/mbstring/tests/005.phpt create mode 100644 ext/mbstring/tests/006.inc create mode 100644 ext/mbstring/tests/006.phpt create mode 100644 ext/mbstring/tests/007.inc create mode 100644 ext/mbstring/tests/007.phpt create mode 100644 ext/mbstring/tests/008.inc create mode 100644 ext/mbstring/tests/008.phpt create mode 100644 ext/mbstring/tests/009.inc create mode 100644 ext/mbstring/tests/009.phpt create mode 100644 ext/mbstring/tests/010.inc create mode 100644 ext/mbstring/tests/010.phpt create mode 100644 ext/mbstring/tests/011.inc create mode 100644 ext/mbstring/tests/011.phpt create mode 100644 ext/mbstring/tests/012.inc create mode 100644 ext/mbstring/tests/012.phpt create mode 100644 ext/mbstring/tests/013.inc create mode 100644 ext/mbstring/tests/013.phpt create mode 100644 ext/mbstring/tests/014.inc create mode 100644 ext/mbstring/tests/014.phpt create mode 100644 ext/mbstring/tests/015.inc create mode 100644 ext/mbstring/tests/015.phpt create mode 100644 ext/mbstring/tests/016.inc create mode 100644 ext/mbstring/tests/016.phpt create mode 100644 ext/mbstring/tests/017.inc create mode 100644 ext/mbstring/tests/017.phpt create mode 100644 ext/mbstring/tests/018.inc create mode 100644 ext/mbstring/tests/018.phpt create mode 100644 ext/mbstring/tests/019.inc create mode 100644 ext/mbstring/tests/019.phpt create mode 100644 ext/mbstring/tests/common.php create mode 100644 ext/mbstring/tests/skipif.inc (limited to 'ext/mbstring/tests') diff --git a/ext/mbstring/tests/001.phpt b/ext/mbstring/tests/001.phpt new file mode 100644 index 0000000000..1eb68a3d4d --- /dev/null +++ b/ext/mbstring/tests/001.phpt @@ -0,0 +1,34 @@ +--TEST-- +Simple multi-byte print test (EUC-JP) +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +echo: マルチバイト関数が使えます。この文字が連結されているはず。 +print: マルチバイト関数が使えます。この文字が連結されているはず。 +printf: マルチバイト関数が使えます。この文字が連結されているはず。 +sprintf: マルチバイト関数が使えます。この文字が連結されているはず。 +echo: マルチバイト関数が使えます。この文字が連結されているはず。 + diff --git a/ext/mbstring/tests/002.inc b/ext/mbstring/tests/002.inc new file mode 100644 index 0000000000..241b78393e --- /dev/null +++ b/ext/mbstring/tests/002.inc @@ -0,0 +1,44 @@ + diff --git a/ext/mbstring/tests/002.phpt b/ext/mbstring/tests/002.phpt new file mode 100644 index 0000000000..a0c8c2555c --- /dev/null +++ b/ext/mbstring/tests/002.phpt @@ -0,0 +1,28 @@ +--TEST-- +mb_internal_encoding() test +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +OK_EUC-JP_SET +EUC-JP +OK_UTF-8_SET +UTF-8 +OK_ASCII_SET +ASCII +== INVALID PARAMETER == +ERR: Warning +OK_BAD_SET +ASCII +ERR: Notice +ERR: Warning +OK_BAD_ARY_SET +ASCII +ERR: Notice +ERR: Warning +OK_BAD_OBJ_SET +ASCII + diff --git a/ext/mbstring/tests/003.inc b/ext/mbstring/tests/003.inc new file mode 100644 index 0000000000..944058cae3 --- /dev/null +++ b/ext/mbstring/tests/003.inc @@ -0,0 +1,32 @@ + diff --git a/ext/mbstring/tests/003.phpt b/ext/mbstring/tests/003.phpt new file mode 100644 index 0000000000..7073be688f --- /dev/null +++ b/ext/mbstring/tests/003.phpt @@ -0,0 +1,15 @@ +--TEST-- +mb_http_input() +--SKIPIF-- + +--POST-- +a=日本語0123456789日本語カタカナひらがな +--GET-- +b=日本語0123456789日本語カタカナひらがな +--FILE-- + +--EXPECT-- +日本語0123456789日本語カタカナひらがな +日本語0123456789日本語カタカナひらがな +OK + diff --git a/ext/mbstring/tests/004.inc b/ext/mbstring/tests/004.inc new file mode 100644 index 0000000000..271a348b58 --- /dev/null +++ b/ext/mbstring/tests/004.inc @@ -0,0 +1,56 @@ + diff --git a/ext/mbstring/tests/004.phpt b/ext/mbstring/tests/004.phpt new file mode 100644 index 0000000000..31ccd4a1e9 --- /dev/null +++ b/ext/mbstring/tests/004.phpt @@ -0,0 +1,32 @@ +--TEST-- +mb_http_output() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +OK_ASCII_SET +ASCII +OK_SJIS_SET +SJIS +OK_JIS_SET +JIS +OK_UTF-8_SET +UTF-8 +OK_EUC-JP_SET +EUC-JP +== INVALID PARAMETER == +ERR: Warning +OK_BAD_SET +EUC-JP +ERR: Notice +ERR: Warning +OK_BAD_ARY_SET +EUC-JP +ERR: Notice +ERR: Warning +OK_BAD_OBJ_SET +EUC-JP + diff --git a/ext/mbstring/tests/005.inc b/ext/mbstring/tests/005.inc new file mode 100644 index 0000000000..2aaaf8866d --- /dev/null +++ b/ext/mbstring/tests/005.inc @@ -0,0 +1,40 @@ + diff --git a/ext/mbstring/tests/005.phpt b/ext/mbstring/tests/005.phpt new file mode 100644 index 0000000000..7c0dd7ab66 --- /dev/null +++ b/ext/mbstring/tests/005.phpt @@ -0,0 +1,21 @@ +--TEST-- +mb_detect_order() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +OK_AUTO +ASCII, JIS, UTF-8, EUC-JP, SJIS +OK_STR +SJIS, EUC-JP, JIS, UTF-8 +OK_ARRAY +ASCII, JIS, EUC-JP, UTF-8 +== INVALID PARAMETER == +OK_BAD_STR +ASCII, JIS, EUC-JP, UTF-8 +OK_BAD_ARRAY +ASCII, JIS, EUC-JP, UTF-8 + diff --git a/ext/mbstring/tests/006.inc b/ext/mbstring/tests/006.inc new file mode 100644 index 0000000000..7da2af0708 --- /dev/null +++ b/ext/mbstring/tests/006.inc @@ -0,0 +1,33 @@ + diff --git a/ext/mbstring/tests/006.phpt b/ext/mbstring/tests/006.phpt new file mode 100644 index 0000000000..da4f543f21 --- /dev/null +++ b/ext/mbstring/tests/006.phpt @@ -0,0 +1,19 @@ +--TEST-- +mb_substitute_character() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +OK_UTF +12307 +OK_LONG +long +OK_NONE +none +== INVALID PARAMETER == +ERR: +OK_BAD_NAME + diff --git a/ext/mbstring/tests/007.inc b/ext/mbstring/tests/007.inc new file mode 100644 index 0000000000..87e46da920 --- /dev/null +++ b/ext/mbstring/tests/007.inc @@ -0,0 +1,11 @@ + diff --git a/ext/mbstring/tests/007.phpt b/ext/mbstring/tests/007.phpt new file mode 100644 index 0000000000..447243ab15 --- /dev/null +++ b/ext/mbstring/tests/007.phpt @@ -0,0 +1,11 @@ +--TEST-- +mb_output_handler() (EUC-JP) +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +テスト用日本語文字列。このモジュールはPHPにマルチバイト関数を提供します。 + diff --git a/ext/mbstring/tests/008.inc b/ext/mbstring/tests/008.inc new file mode 100644 index 0000000000..5a52473dd4 --- /dev/null +++ b/ext/mbstring/tests/008.inc @@ -0,0 +1,41 @@ + diff --git a/ext/mbstring/tests/008.phpt b/ext/mbstring/tests/008.phpt new file mode 100644 index 0000000000..b84a027b0a --- /dev/null +++ b/ext/mbstring/tests/008.phpt @@ -0,0 +1,22 @@ +--TEST-- +mb_preferred_mime_name() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +Shift_JIS +Shift_JIS +EUC-JP +UTF-8 +ISO-2022-JP +ISO-2022-JP +ISO-8859-1 +UCS-2 +UCS-4 +== INVALID PARAMETER == +ERR: Warning +OK_BAD_NAME + diff --git a/ext/mbstring/tests/009.inc b/ext/mbstring/tests/009.inc new file mode 100644 index 0000000000..aabc8daed0 --- /dev/null +++ b/ext/mbstring/tests/009.inc @@ -0,0 +1,68 @@ + diff --git a/ext/mbstring/tests/009.phpt b/ext/mbstring/tests/009.phpt new file mode 100644 index 0000000000..5e1ae42330 --- /dev/null +++ b/ext/mbstring/tests/009.phpt @@ -0,0 +1,33 @@ +--TEST-- +mb_strlen() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +== ASCII == +40 +40 +== EUC-JP == +43 +43 +== SJIS == +43 +43 +== JIS == +43 +43 +== UTF-8 == +43 +43 +== WRONG PARAMETERS == +ERR: Notice + +ERR: Notice + +ERR: Warning + + + diff --git a/ext/mbstring/tests/010.inc b/ext/mbstring/tests/010.inc new file mode 100644 index 0000000000..f4493a5482 --- /dev/null +++ b/ext/mbstring/tests/010.inc @@ -0,0 +1,102 @@ + diff --git a/ext/mbstring/tests/010.phpt b/ext/mbstring/tests/010.phpt new file mode 100644 index 0000000000..880176dfa3 --- /dev/null +++ b/ext/mbstring/tests/010.phpt @@ -0,0 +1,59 @@ +--TEST-- +mb_strpos() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +== POSITIVE OFFSET == +10 +0 +3 +0 +34 +30 +33 +30 +== NEGATIVE OFFSET == +34 +30 +33 +30 +10 +0 +3 +0 +== OUT OF RANGE == +OK_OUT_RANGE +OK_OUT_RANGE +OK_OUT_RANGE +OK_OUT_RANGE +== NON-EXISTENT == +OK_STR +OK_NEWLINE +== NO ENCODING PARAMETER == +10 +0 +3 +0 +OK_STR +OK_NEWLINE +== NO OFFSET AND ENCODING PARAMETER == +10 +0 +3 +0 +OK_STR +OK_NEWLINE +== INVALID PARAMETER TEST == +ERR: Warning +OK_NULL +ERR: Notice +OK_ARRAY +ERR: Notice +OK_OBJECT +ERR: Notice +OK_BAD_ENCODING + diff --git a/ext/mbstring/tests/011.inc b/ext/mbstring/tests/011.inc new file mode 100644 index 0000000000..ae8b75d5da --- /dev/null +++ b/ext/mbstring/tests/011.inc @@ -0,0 +1,57 @@ + diff --git a/ext/mbstring/tests/011.phpt b/ext/mbstring/tests/011.phpt new file mode 100644 index 0000000000..e6ef9c68bf --- /dev/null +++ b/ext/mbstring/tests/011.phpt @@ -0,0 +1,31 @@ +--TEST-- +mb_strrpos() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +== WITH ENCODING PARAMETER == +34 +30 +33 +30 +OK_STR +OK_NEWLINE +== NO ENCODING PARAMETER == +34 +30 +33 +30 +OK_STR +OK_NEWLINE +== INVALID PARAMETER TEST == +ERR: Warning +OK_NULL +ERR: Notice +OK_ARRAY +ERR: Notice +OK_OBJECT + diff --git a/ext/mbstring/tests/012.inc b/ext/mbstring/tests/012.inc new file mode 100644 index 0000000000..18a9b6d91f --- /dev/null +++ b/ext/mbstring/tests/012.inc @@ -0,0 +1,19 @@ + diff --git a/ext/mbstring/tests/012.phpt b/ext/mbstring/tests/012.phpt new file mode 100644 index 0000000000..250e4a0ec4 --- /dev/null +++ b/ext/mbstring/tests/012.phpt @@ -0,0 +1,15 @@ +--TEST-- +mb_substr() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +1: 日本語です。EUC- +2: 0123この文字列は日本語です。EUC-JPを使っています。日本語は面倒臭い。 +3 OK +4 OK: 0123この文字列は + + diff --git a/ext/mbstring/tests/013.inc b/ext/mbstring/tests/013.inc new file mode 100644 index 0000000000..ed6406687e --- /dev/null +++ b/ext/mbstring/tests/013.inc @@ -0,0 +1,19 @@ + diff --git a/ext/mbstring/tests/013.phpt b/ext/mbstring/tests/013.phpt new file mode 100644 index 0000000000..6c3624ee1b --- /dev/null +++ b/ext/mbstring/tests/013.phpt @@ -0,0 +1,15 @@ +--TEST-- +mb_strcut() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +の文 +0123この文字列は日本語です。EUC-JPを使っています。日本語は面倒臭い。 +OK +OK: 0123この文 + + diff --git a/ext/mbstring/tests/014.inc b/ext/mbstring/tests/014.inc new file mode 100644 index 0000000000..14e61633a3 --- /dev/null +++ b/ext/mbstring/tests/014.inc @@ -0,0 +1,22 @@ + diff --git a/ext/mbstring/tests/014.phpt b/ext/mbstring/tests/014.phpt new file mode 100644 index 0000000000..bc27326b32 --- /dev/null +++ b/ext/mbstring/tests/014.phpt @@ -0,0 +1,17 @@ +--TEST-- +mb_strimwidth() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +1: 0123この文字... +2: 0123この文字列は日本語です。EUC-JPを使っています。日本語は面倒臭い。 +3: 。EUC-JPを使っています。日本語は面倒臭い。 +4: EUC-JPを使っています。日本語は面倒臭い。 +5 OK +6 OK: 0123こ... + + diff --git a/ext/mbstring/tests/015.inc b/ext/mbstring/tests/015.inc new file mode 100644 index 0000000000..ac497edef3 --- /dev/null +++ b/ext/mbstring/tests/015.inc @@ -0,0 +1,127 @@ +s1 = $euc_jp; + $this->s2 = $euc_jp; + $this->s3 = $euc_jp; + } +} + +class bar +{ + var $s1; + var $s2; + var $s3; + + function bar() + { + global $sjis, $jis, $euc_jp; + + $this->s1 = $euc_jp; + $this->s2 = $euc_jp; + $this->s3 = $euc_jp; + } +} + + +$o = new foo; +$oo = $o; +$encoding = mb_convert_variables('EUC-JP', 'auto', $oo); +print("$encoding\n"); // EUC-JP +print("{$oo->s1}{$oo->s2}{$oo->s3}\n"); // Converted to EUC-JP + +$o = new bar; +$oo = $o; +$encoding = mb_convert_variables('EUC-JP', 'auto', $oo); +print("$encoding\n"); // EUC-JP +print("{$oo->s1}{$oo->s2}{$oo->s3}\n"); // Converted to EUC-JP + + +// Test for scaler, array and object +echo "== SCALER, ARRAY AND OBJECT TEST ==\n"; + +$s1 = $euc_jp; +$s2 = $euc_jp; +$s3 = $euc_jp; +$aa = $a; +$oo = $o; + +$encoding = mb_convert_variables('EUC-JP', 'auto', $s1, $s2, $s3, $aa, $oo); +print("$encoding\n"); // EUC-JP +print("$s1$s2$s3\n"); // Converted to EUC-JP +print("{$aa[0]}{$aa[1]}{$aa[2]}\n"); // Converted to EUC-JP +print("{$oo->s1}{$oo->s2}{$oo->s3}\n"); // Converted to EUC-JP + + +?> diff --git a/ext/mbstring/tests/015.phpt b/ext/mbstring/tests/015.phpt new file mode 100644 index 0000000000..cc7b228688 --- /dev/null +++ b/ext/mbstring/tests/015.phpt @@ -0,0 +1,36 @@ +--TEST-- +mb_convert_variables() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +== SCALER TEST == +SJIS +日本語テキストです。0123456789。 +JIS +日本語テキストです。0123456789。 +EUC-JP +k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg== +EUC-JP +GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg== +EUC-JP +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 +== ARRAY TEST == +EUC-JP +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 +EUC-JP +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 +== OBJECT TEST == +EUC-JP +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 +EUC-JP +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 +== SCALER, ARRAY AND OBJECT TEST == +EUC-JP +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 +日本語テキストです。0123456789。日本語テキストです。0123456789。日本語テキストです。0123456789。 + diff --git a/ext/mbstring/tests/016.inc b/ext/mbstring/tests/016.inc new file mode 100644 index 0000000000..321bbeba83 --- /dev/null +++ b/ext/mbstring/tests/016.inc @@ -0,0 +1,90 @@ +'UTF-8',1=>'EUC-JP', 2=>'SJIS', 3=>'JIS'); + +$s = $jis; +$s = mb_convert_encoding($s, 'EUC-JP', $a); +print("EUC-JP: $s\n"); // EUC-JP + +$s = $euc_jp; +$s = mb_convert_encoding($s, 'SJIS', $a); +print("SJIS: ".base64_encode($s)."\n"); // SJIS + +$s = $euc_jp; +$s = mb_convert_encoding($s, 'JIS', $a); +print("JIS: ".base64_encode($s)."\n"); // JIS + + +// Using Detect Order +echo "== DETECT ORDER ==\n"; + +mb_detect_order('auto'); + + +$s = $jis; +$s = mb_convert_encoding($s, 'EUC-JP'); +print("EUC-JP: $s\n"); // EUC-JP + +$s = $euc_jp; +$s = mb_convert_encoding($s, 'SJIS'); +print("SJIS: ".base64_encode($s)."\n"); // SJIS + +$s = $euc_jp; +$s = mb_convert_encoding($s, 'JIS'); +print("JIS: ".base64_encode($s)."\n"); // JIS + + +// Invalid(?) Parameters +echo "== INVALID PARAMETER ==\n"; + +$s = mb_convert_encoding(1234, 'EUC-JP'); +print("INT: $s\n"); // EUC-JP + +$s = mb_convert_encoding('', 'EUC-JP'); +print("EUC-JP: $s\n"); // SJIS + +$s = $euc_jp; +$s = mb_convert_encoding($s, 'BAD'); +print("BAD: $s\n"); // BAD + +$s = $euc_jp; +$s = mb_convert_encoding($s); +print("MP: $s\n"); // Missing parameter + + +?> diff --git a/ext/mbstring/tests/016.phpt b/ext/mbstring/tests/016.phpt new file mode 100644 index 0000000000..21baa3ce7c --- /dev/null +++ b/ext/mbstring/tests/016.phpt @@ -0,0 +1,31 @@ +--TEST-- +mb_convert_encoding() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +== BASIC TEST == +EUC-JP: 日本語テキストです。0123456789。 +EUC-JP: 日本語テキストです。0123456789。 +SJIS: k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg== +JIS: GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg== +== ARRAY ENCODING LIST == +EUC-JP: 日本語テキストです。0123456789。 +SJIS: k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg== +JIS: GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg== +== DETECT ORDER == +EUC-JP: 日本語テキストです。0123456789。 +SJIS: k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg== +JIS: GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg== +== INVALID PARAMETER == +INT: 1234 +EUC-JP: +ERR: Warning +BAD: +ERR: Warning +MP: + + diff --git a/ext/mbstring/tests/017.inc b/ext/mbstring/tests/017.inc new file mode 100644 index 0000000000..c897c93b39 --- /dev/null +++ b/ext/mbstring/tests/017.inc @@ -0,0 +1,91 @@ +'UTF-8',1=>'EUC-JP', 2=>'SJIS', 3=>'JIS'); + +// Note: Due to detect order, detected as UTF-8 +$s = $jis; +$s = mb_detect_encoding($s, $a); +print("JIS: $s\n"); + +$s = $euc_jp; +$s = mb_detect_encoding($s, $a); +print("EUC-JP: $s\n"); + +$s = $sjis; +$s = mb_detect_encoding($s, $a); +print("SJIS: $s\n"); + + +// Using Detect Order +echo "== DETECT ORDER ==\n"; + +mb_detect_order('auto'); + + +$s = $jis; +$s = mb_detect_encoding($s); +print("JIS: $s\n"); + +$s = $euc_jp; +$s = mb_detect_encoding($s); +print("EUC-JP: $s\n"); + +$s = $sjis; +$s = mb_detect_encoding($s); +print("SJIS: $s\n"); + + +// Invalid(?) Parameters +echo "== INVALID PARAMETER ==\n"; + +$s = mb_detect_encoding(1234, 'EUC-JP'); +print("INT: $s\n"); // EUC-JP + +$s = mb_detect_encoding('', 'EUC-JP'); +print("EUC-JP: $s\n"); // SJIS + +$s = $euc_jp; +$s = mb_detect_encoding($s, 'BAD'); +print("BAD: $s\n"); // BAD + +$s = $euc_jp; +$s = mb_detect_encoding(); +print("MP: $s\n"); // Missing parameter + + +?> diff --git a/ext/mbstring/tests/017.phpt b/ext/mbstring/tests/017.phpt new file mode 100644 index 0000000000..5f8528e5f7 --- /dev/null +++ b/ext/mbstring/tests/017.phpt @@ -0,0 +1,30 @@ +--TEST-- +mb_detect_encoding() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +== BASIC TEST == +SJIS: SJIS +JIS: JIS +EUC-JP: EUC-JP +EUC-JP: EUC-JP +== ARRAY ENCODING LIST == +JIS: UTF-8 +EUC-JP: EUC-JP +SJIS: SJIS +== DETECT ORDER == +JIS: JIS +EUC-JP: EUC-JP +SJIS: SJIS +== INVALID PARAMETER == +INT: EUC-JP +EUC-JP: EUC-JP +ERR: Warning +BAD: EUC-JP +ERR: Warning +MP: + diff --git a/ext/mbstring/tests/018.inc b/ext/mbstring/tests/018.inc new file mode 100644 index 0000000000..b328a71ea1 --- /dev/null +++ b/ext/mbstring/tests/018.inc @@ -0,0 +1,24 @@ + diff --git a/ext/mbstring/tests/018.phpt b/ext/mbstring/tests/018.phpt new file mode 100644 index 0000000000..b212b84934 --- /dev/null +++ b/ext/mbstring/tests/018.phpt @@ -0,0 +1,10 @@ +--TEST-- +mb_strwidth() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +1: 68 diff --git a/ext/mbstring/tests/019.inc b/ext/mbstring/tests/019.inc new file mode 100644 index 0000000000..556d02d6aa --- /dev/null +++ b/ext/mbstring/tests/019.inc @@ -0,0 +1,68 @@ + diff --git a/ext/mbstring/tests/019.phpt b/ext/mbstring/tests/019.phpt new file mode 100644 index 0000000000..3c23431595 --- /dev/null +++ b/ext/mbstring/tests/019.phpt @@ -0,0 +1,38 @@ +--TEST-- +strlen() +--SKIPIF-- + +--POST-- +--GET-- +--FILE-- + +--EXPECT-- +== ASCII == +ERR: Warning + +40 +== EUC-JP == +ERR: Warning + +72 +== SJIS == +ERR: Warning + +72 +== JIS == +ERR: Warning + +121 +== UTF-8 == +ERR: Warning + +174 +== WRONG PARAMETERS == +ERR: Notice +5 +ERR: Notice +6 +ERR: Warning + + + diff --git a/ext/mbstring/tests/common.php b/ext/mbstring/tests/common.php new file mode 100644 index 0000000000..d4d1d9a495 --- /dev/null +++ b/ext/mbstring/tests/common.php @@ -0,0 +1,53 @@ + "Error", // E_ERROR + 2 => "Warning", // E_WARINING + 4 => "Parsing Error", // E_PARSE + 8 => "Notice", // E_NOTICE + 16 => "Core Error", // E_CORE_ERROR + 32 => "Core Warning", // E_CORE_WARNING + 64 => "Compile Error", // E_COMPILE_ERROR + 128 => "Compile Warning", // E_COMPILE_WARNING + 256 => "User Error", // E_USER_ERROR + 512 => "User Warning", // E_USER_WARMING + 1024=> "User Notice" // E_USER_NOTICE + ); + + if (!empty($debug)) { + printf("%s: %s (%d)\n", $err_type[$err_no], $err_msg, $linenum); + } + else { + printf("ERR: %s\n",$err_type[$err_no]); + } +} + +set_error_handler('test_error_handler'); + + +// Var def for testing +$t_ary = array( + 's1' => '日本語EUC-JPの文字列', + 's2' => 'English Text' + ); + +class tc +{ + var $s1 = '日本語EUC-JPの文字列'; + var $s2 = 'English Text'; + + function tc() + { + } +} + +$t_obj = new tc; + +?> \ No newline at end of file diff --git a/ext/mbstring/tests/skipif.inc b/ext/mbstring/tests/skipif.inc new file mode 100644 index 0000000000..5ce1bbb537 --- /dev/null +++ b/ext/mbstring/tests/skipif.inc @@ -0,0 +1,11 @@ + -- cgit v1.2.1