Annotation of embedaddon/php/ext/mbstring/tests/bug65045.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Bug #65045: mb_convert_encoding breaks well-formed character
        !             3: --SKIPIF--
        !             4: <?php extension_loaded('mbstring') or die('skip mbstring not available'); ?>
        !             5: --FILE--
        !             6: <?php
        !             7: 
        !             8: //declare(encoding = 'UTF-8');
        !             9: mb_internal_encoding('UTF-8');
        !            10: 
        !            11: $str = "\xF0\xA4\xAD".  "\xF0\xA4\xAD\xA2"."\xF0\xA4\xAD\xA2";
        !            12: $expected = "\xEF\xBF\xBD"."\xF0\xA4\xAD\xA2"."\xF0\xA4\xAD\xA2";
        !            13: 
        !            14: $str2 = "\xF0\xA4\xAD\xA2"."\xF0\xA4\xAD\xA2"."\xF0\xA4\xAD";
        !            15: $expected2 = "\xF0\xA4\xAD\xA2"."\xF0\xA4\xAD\xA2"."\xEF\xBF\xBD";
        !            16: 
        !            17: mb_substitute_character(0xFFFD);
        !            18: var_dump(
        !            19:     $expected === htmlspecialchars_decode(htmlspecialchars($str, ENT_SUBSTITUTE, 'UTF-8')),
        !            20:     $expected2 === htmlspecialchars_decode(htmlspecialchars($str2, ENT_SUBSTITUTE, 'UTF-8')), 
        !            21:     $expected === mb_convert_encoding($str, 'UTF-8', 'UTF-8'),
        !            22:     $expected2 === mb_convert_encoding($str2, 'UTF-8', 'UTF-8')
        !            23: );
        !            24: 
        !            25: --EXPECT--
        !            26: bool(true)
        !            27: bool(true)
        !            28: bool(true)
        !            29: bool(true)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>