mirror of
https://github.com/php/php-src.git
synced 2026-03-27 01:32:22 +01:00
Due to incorrect string termination and length handling, several HTML entities missed the trailing semicolon. We also fix the obviously wrong expectations in two already existing tests.
250 lines
5.1 KiB
PHP
250 lines
5.1 KiB
PHP
--TEST--
|
||
Test get_html_translation_table() function : basic functionality - HTML 5/Windows-1251
|
||
--FILE--
|
||
<?php
|
||
|
||
function so($a,$b) { return ord($a) - ord($b); }
|
||
|
||
echo "*** Testing get_html_translation_table() : basic functionality - HTML 5/Windows-1251 ***\n";
|
||
|
||
echo "-- with table = HTML_ENTITIES, ENT_COMPAT --\n";
|
||
$table = HTML_ENTITIES;
|
||
$tt = get_html_translation_table($table, ENT_COMPAT | ENT_HTML5, "Windows-1251");
|
||
uksort( $tt, 'so' );
|
||
var_dump( count($tt) );
|
||
print_r( $tt );
|
||
|
||
echo "-- with table = HTML_ENTITIES, ENT_QUOTES --\n";
|
||
$table = HTML_ENTITIES;
|
||
$tt = get_html_translation_table($table, ENT_QUOTES | ENT_HTML5, "Windows-1251");
|
||
var_dump( count($tt) );
|
||
|
||
echo "-- with table = HTML_ENTITIES, ENT_NOQUOTES --\n";
|
||
$table = HTML_ENTITIES;
|
||
$tt = get_html_translation_table($table, ENT_NOQUOTES | ENT_HTML5, "Windows-1251");
|
||
var_dump( count($tt) );
|
||
|
||
echo "-- with table = HTML_SPECIALCHARS, ENT_COMPAT --\n";
|
||
$table = HTML_SPECIALCHARS;
|
||
$tt = get_html_translation_table($table, ENT_COMPAT, "Windows-1251");
|
||
uksort( $tt, 'so' );
|
||
var_dump( count($tt) );
|
||
print_r( $tt );
|
||
|
||
echo "-- with table = HTML_SPECIALCHARS, ENT_QUOTES --\n";
|
||
$table = HTML_SPECIALCHARS;
|
||
$tt = get_html_translation_table($table, ENT_QUOTES | ENT_HTML5, "Windows-1251");
|
||
uksort( $tt, 'so' );
|
||
var_dump( $tt );
|
||
|
||
echo "-- with table = HTML_SPECIALCHARS, ENT_NOQUOTES --\n";
|
||
$table = HTML_SPECIALCHARS;
|
||
$tt = get_html_translation_table($table, ENT_NOQUOTES | ENT_HTML5, "Windows-1251");
|
||
uasort( $tt, 'so' );
|
||
var_dump( $tt );
|
||
|
||
|
||
echo "Done\n";
|
||
?>
|
||
--EXPECT--
|
||
*** Testing get_html_translation_table() : basic functionality - HTML 5/Windows-1251 ***
|
||
-- with table = HTML_ENTITIES, ENT_COMPAT --
|
||
int(157)
|
||
Array
|
||
(
|
||
[ ] => 	
|
||
[
|
||
] => 

|
||
[!] => !
|
||
["] => "
|
||
[#] => #
|
||
[$] => $
|
||
[%] => %
|
||
[&] => &
|
||
[(] => (
|
||
[)] => )
|
||
[*] => *
|
||
[+] => +
|
||
[,] => ,
|
||
[.] => .
|
||
[/] => /
|
||
[:] => :
|
||
[;] => ;
|
||
[<] => <
|
||
[=] => =
|
||
[>] => >
|
||
[?] => ?
|
||
[@] => @
|
||
[[] => [
|
||
[\] => \
|
||
[]] => ]
|
||
[^] => ^
|
||
[_] => _
|
||
[`] => `
|
||
[fj] => fj
|
||
[{] => {
|
||
[|] => |
|
||
[}] => }
|
||
[€] => Ђ
|
||
[<5B>] => Ѓ
|
||
[‚] => ‚
|
||
[ƒ] => ѓ
|
||
[„] => „
|
||
[…] => …
|
||
[†] => †
|
||
[‡] => ‡
|
||
[ˆ] => €
|
||
[‰] => ‰
|
||
[Š] => Љ
|
||
[‹] => ‹
|
||
[Œ] => Њ
|
||
[<5B>] => Ќ
|
||
[Ž] => Ћ
|
||
[<5B>] => Џ
|
||
[<5B>] => ђ
|
||
[‘] => ‘
|
||
[’] => ’
|
||
[“] => “
|
||
[”] => ”
|
||
[•] => •
|
||
[–] => –
|
||
[—] => —
|
||
[™] => ™
|
||
[š] => љ
|
||
[›] => ›
|
||
[œ] => њ
|
||
[<5B>] => ќ
|
||
[ž] => ћ
|
||
[Ÿ] => џ
|
||
[ ] =>
|
||
[¡] => Ў
|
||
[¢] => ў
|
||
[£] => Ј
|
||
[¤] => ¤
|
||
[¦] => ¦
|
||
[§] => §
|
||
[¨] => Ё
|
||
[©] => ©
|
||
[ª] => Є
|
||
[«] => «
|
||
[¬] => ¬
|
||
[] => ­
|
||
[®] => ®
|
||
[¯] => Ї
|
||
[°] => °
|
||
[±] => ±
|
||
[²] => І
|
||
[³] => і
|
||
[µ] => µ
|
||
[¶] => ¶
|
||
[·] => ·
|
||
[¸] => ё
|
||
[¹] => №
|
||
[º] => є
|
||
[»] => »
|
||
[¼] => ј
|
||
[½] => Ѕ
|
||
[¾] => ѕ
|
||
[¿] => ї
|
||
[À] => А
|
||
[Á] => Б
|
||
[Â] => В
|
||
[Ã] => Г
|
||
[Ä] => Д
|
||
[Å] => Е
|
||
[Æ] => Ж
|
||
[Ç] => З
|
||
[È] => И
|
||
[É] => Й
|
||
[Ê] => К
|
||
[Ë] => Л
|
||
[Ì] => М
|
||
[Í] => Н
|
||
[Î] => О
|
||
[Ï] => П
|
||
[Ð] => Р
|
||
[Ñ] => С
|
||
[Ò] => Т
|
||
[Ó] => У
|
||
[Ô] => Ф
|
||
[Õ] => Х
|
||
[Ö] => Ц
|
||
[×] => Ч
|
||
[Ø] => Ш
|
||
[Ù] => Щ
|
||
[Ú] => Ъ
|
||
[Û] => Ы
|
||
[Ü] => Ь
|
||
[Ý] => Э
|
||
[Þ] => Ю
|
||
[ß] => Я
|
||
[à] => а
|
||
[á] => б
|
||
[â] => в
|
||
[ã] => г
|
||
[ä] => д
|
||
[å] => е
|
||
[æ] => ж
|
||
[ç] => з
|
||
[è] => и
|
||
[é] => й
|
||
[ê] => к
|
||
[ë] => л
|
||
[ì] => м
|
||
[í] => н
|
||
[î] => о
|
||
[ï] => п
|
||
[ð] => р
|
||
[ñ] => с
|
||
[ò] => т
|
||
[ó] => у
|
||
[ô] => ф
|
||
[õ] => х
|
||
[ö] => ц
|
||
[÷] => ч
|
||
[ø] => ш
|
||
[ù] => щ
|
||
[ú] => ъ
|
||
[û] => ы
|
||
[ü] => ь
|
||
[ý] => э
|
||
[þ] => ю
|
||
[ÿ] => я
|
||
)
|
||
-- with table = HTML_ENTITIES, ENT_QUOTES --
|
||
int(158)
|
||
-- with table = HTML_ENTITIES, ENT_NOQUOTES --
|
||
int(156)
|
||
-- with table = HTML_SPECIALCHARS, ENT_COMPAT --
|
||
int(4)
|
||
Array
|
||
(
|
||
["] => "
|
||
[&] => &
|
||
[<] => <
|
||
[>] => >
|
||
)
|
||
-- with table = HTML_SPECIALCHARS, ENT_QUOTES --
|
||
array(5) {
|
||
["""]=>
|
||
string(6) """
|
||
["&"]=>
|
||
string(5) "&"
|
||
["'"]=>
|
||
string(6) "'"
|
||
["<"]=>
|
||
string(4) "<"
|
||
[">"]=>
|
||
string(4) ">"
|
||
}
|
||
-- with table = HTML_SPECIALCHARS, ENT_NOQUOTES --
|
||
array(3) {
|
||
["&"]=>
|
||
string(5) "&"
|
||
["<"]=>
|
||
string(4) "<"
|
||
[">"]=>
|
||
string(4) ">"
|
||
}
|
||
Done
|