Annotation of embedaddon/php/ext/json/tests/bug46944.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #46944 (json_encode() doesn't handle 3 byte utf8 correctly)
                      3: --SKIPIF--
                      4: <?php if (!extension_loaded('json')) print 'skip'; ?>
                      5: --FILE--
                      6: <?php
                      7: 
                      8: for ($i = 1; $i <= 16; $i++) {
                      9:        $first = 0xf0|($i >> 2);
                     10:        $second = 0x8f|($i & 3) << 4;
                     11:        $string = sprintf("aa%c%c\xbf\xbdzz", $first, $second);
                     12:        echo json_encode($string) . "\n";
                     13: }
                     14: 
                     15: 
                     16: echo "Done\n";
                     17: ?>
                     18: --EXPECT--
                     19: "aa\ud83f\udffdzz"
                     20: "aa\ud87f\udffdzz"
                     21: "aa\ud8bf\udffdzz"
                     22: "aa\ud8ff\udffdzz"
                     23: "aa\ud93f\udffdzz"
                     24: "aa\ud97f\udffdzz"
                     25: "aa\ud9bf\udffdzz"
                     26: "aa\ud9ff\udffdzz"
                     27: "aa\uda3f\udffdzz"
                     28: "aa\uda7f\udffdzz"
                     29: "aa\udabf\udffdzz"
                     30: "aa\udaff\udffdzz"
                     31: "aa\udb3f\udffdzz"
                     32: "aa\udb7f\udffdzz"
                     33: "aa\udbbf\udffdzz"
                     34: "aa\udbff\udffdzz"
                     35: Done

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