Changeset 30534
- Timestamp:
- 11/24/2014 01:55:42 AM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/functions.php
r30533 r30534 544 544 */ 545 545 function test_wp_json_encode_non_utf8() { 546 if ( version_compare( PHP_VERSION, '5.4', '<' ) ) {547 $this->markTestSkipped( 'EUC-JP character set added in PHP 5.4' );548 };549 550 546 $old_charsets = $charsets = mb_detect_order(); 551 547 if ( ! in_array( 'EUC-JP', $charsets ) ) { … … 559 555 $this->assertEquals( 'aあb', $utf8 ); 560 556 561 $this->assertEquals( wp_json_encode( $eucjp ), '"a\u3042b"' ); 557 // json_encode() returns different things in different PHP versions. 558 // See: https://core.trac.wordpress.org/ticket/30471 559 if ( version_compare( PHP_VERSION, '5.5', '>=' ) ) { 560 $expected = '"a\u3042b"'; 561 } else { 562 $expected = 'null'; 563 } 564 565 $this->assertEquals( $expected, wp_json_encode( $eucjp ) ); 566 567 mb_detect_order( $old_charsets ); 568 } 569 570 /** 571 * @ticket 28786 572 */ 573 function test_wp_json_encode_non_utf8_in_array() { 574 $old_charsets = $charsets = mb_detect_order(); 575 if ( ! in_array( 'EUC-JP', $charsets ) ) { 576 $charsets[] = 'EUC-JP'; 577 mb_detect_order( $charsets ); 578 } 579 580 $eucjp = mb_convert_encoding( 'aあb', 'EUC-JP', 'UTF-8' ); 581 $utf8 = mb_convert_encoding( $eucjp, 'UTF-8', 'EUC-JP' ); 582 583 $this->assertEquals( 'aあb', $utf8 ); 584 585 // json_encode() returns different things in different PHP versions. 586 // See: https://core.trac.wordpress.org/ticket/30471 587 if ( version_compare( PHP_VERSION, '5.5', '>=' ) ) { 588 $expected = '["c","a\u3042b"]'; 589 } else { 590 $expected = '["c",null]'; 591 } 592 593 $this->assertEquals( $expected, wp_json_encode( array( 'c', $eucjp ) ) ); 562 594 563 595 mb_detect_order( $old_charsets );
Note: See TracChangeset
for help on using the changeset viewer.