diff options
Diffstat (limited to 'ext/iconv/tests')
| -rw-r--r-- | ext/iconv/tests/bug16069.phpt | 22 | ||||
| -rw-r--r-- | ext/iconv/tests/iconv_get_encoding_basic.phpt | 76 | ||||
| -rwxr-xr-x | ext/iconv/tests/ob_iconv_handler-charset-length-cve-2007-4840.phpt | 2 |
3 files changed, 78 insertions, 22 deletions
diff --git a/ext/iconv/tests/bug16069.phpt b/ext/iconv/tests/bug16069.phpt deleted file mode 100644 index 81fc235e2..000000000 --- a/ext/iconv/tests/bug16069.phpt +++ /dev/null @@ -1,22 +0,0 @@ ---TEST-- -Bug #16069 (ICONV transliteration failure) ---SKIPIF-- -<?php -include( 'skipif.inc' ); -if (@iconv('CP932', 'EUC-JP//TRANSLIT', "\x87\x6d")=='') { - die("skip CP932 to EUC-JP translit not available\n"); -} -?> ---INI-- -error_reporting=2039 ---FILE-- -<?php -/* include('test.inc'); */ -/* charset=CP932, KOI8-R */ -$str = "\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d\x87\x6d"; -print iconv( "CP932", "EUC-JP//TRANSLIT", $str ); -$str = "(\x9c\xe4\x9c)"; -print iconv( "KOI8-R", "EUC-JP//TRANSLIT", $str ); -?> ---EXPECT-- -ミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバールミリバール(°Д°) diff --git a/ext/iconv/tests/iconv_get_encoding_basic.phpt b/ext/iconv/tests/iconv_get_encoding_basic.phpt new file mode 100644 index 000000000..83efd1586 --- /dev/null +++ b/ext/iconv/tests/iconv_get_encoding_basic.phpt @@ -0,0 +1,76 @@ +--TEST-- +iconv_get_encoding() parameter tests +--CREDITS-- +Oystein Rose <orose@redpill-linpro.com> +#PHPTestFest2009 Norway 2009-06-09 \o/ +--SKIPIF-- +<?php if (!extension_loaded("iconv")) { echo 'skip extension not available'; } ?> +--FILE-- +<?php + +iconv_set_encoding("internal_encoding", "UTF-8"); +iconv_set_encoding("output_encoding", "UTF-8"); +iconv_set_encoding("input_encoding", "UTF-8"); + +var_dump( iconv_get_encoding('internal_encoding') ); +var_dump( iconv_get_encoding('output_encoding') ); +var_dump( iconv_get_encoding('input_encoding') ); +var_dump( iconv_get_encoding('all') ); +var_dump( iconv_get_encoding('foo') ); +var_dump( iconv_get_encoding() ); + + + +iconv_set_encoding("internal_encoding", "ISO-8859-1"); +iconv_set_encoding("output_encoding", "ISO-8859-1"); +iconv_set_encoding("input_encoding", "ISO-8859-1"); + +var_dump( iconv_get_encoding('internal_encoding') ); +var_dump( iconv_get_encoding('output_encoding') ); +var_dump( iconv_get_encoding('input_encoding') ); +var_dump( iconv_get_encoding('all') ); +var_dump( iconv_get_encoding('foo') ); +var_dump( iconv_get_encoding() ); + +?> +--EXPECT-- +string(5) "UTF-8" +string(5) "UTF-8" +string(5) "UTF-8" +array(3) { + ["input_encoding"]=> + string(5) "UTF-8" + ["output_encoding"]=> + string(5) "UTF-8" + ["internal_encoding"]=> + string(5) "UTF-8" +} +bool(false) +array(3) { + ["input_encoding"]=> + string(5) "UTF-8" + ["output_encoding"]=> + string(5) "UTF-8" + ["internal_encoding"]=> + string(5) "UTF-8" +} +string(10) "ISO-8859-1" +string(10) "ISO-8859-1" +string(10) "ISO-8859-1" +array(3) { + ["input_encoding"]=> + string(10) "ISO-8859-1" + ["output_encoding"]=> + string(10) "ISO-8859-1" + ["internal_encoding"]=> + string(10) "ISO-8859-1" +} +bool(false) +array(3) { + ["input_encoding"]=> + string(10) "ISO-8859-1" + ["output_encoding"]=> + string(10) "ISO-8859-1" + ["internal_encoding"]=> + string(10) "ISO-8859-1" +} diff --git a/ext/iconv/tests/ob_iconv_handler-charset-length-cve-2007-4840.phpt b/ext/iconv/tests/ob_iconv_handler-charset-length-cve-2007-4840.phpt index 8cf54b732..fd01d83ca 100755 --- a/ext/iconv/tests/ob_iconv_handler-charset-length-cve-2007-4840.phpt +++ b/ext/iconv/tests/ob_iconv_handler-charset-length-cve-2007-4840.phpt @@ -2,6 +2,8 @@ ob_iconv_handler() charset parameter length checks (CVE-2007-4840) --SKIPIF-- <?php extension_loaded('iconv') or die('skip iconv extension is not available'); ?> +--INI-- +memory_limit=256M --FILE-- <?php ini_set("iconv.output_encoding", str_repeat("a", 9000000)); |
