@@ -68,13 +68,21 @@ public function testInternalEncodingWithInvalidEncoding()
6868 */
6969 public function testConvertEncoding ()
7070 {
71- $ this ->assertSame (utf8_decode ('déjà ' ), mb_convert_encoding ('déjà ' , 'Windows-1252 ' ));
71+ $ this ->assertSame (iconv ('UTF-8 ' , 'ISO-8859-1 ' , 'déjà ' ), mb_convert_encoding ('déjà ' , 'Windows-1252 ' ));
72+ $ this ->assertSame ('déjà ' , mb_convert_encoding (mb_convert_encoding ('déjà ' , 'ISO-8859-1 ' , 'UTF-8 ' ), 'Utf-8 ' , 'ASCII,ISO-2022-JP,UTF-8,ISO-8859-1 ' ));
73+ $ this ->assertSame ('déjà ' , mb_convert_encoding (mb_convert_encoding ('déjà ' , 'ISO-8859-1 ' , 'UTF-8 ' ), 'Utf-8 ' , ['ASCII ' , 'ISO-2022-JP ' , 'UTF-8 ' , 'ISO-8859-1 ' ]));
74+ }
75+
76+ /**
77+ * @group legacy
78+ */
79+ public function testConvertLegacyEncoding ()
80+ {
81+ // handling base64 and html entities with mb_convert_encoding is deprecated in PHP 8.2
7282 $ this ->assertSame (base64_encode ('déjà ' ), mb_convert_encoding ('déjà ' , 'Base64 ' ));
7383 $ this ->assertSame ('実<&>déjà ' , mb_convert_encoding ('実<&>déjà ' , 'Html-entities ' ));
7484 $ this ->assertSame ('déjà ' , mb_convert_encoding (base64_encode ('déjà ' ), 'Utf-8 ' , 'Base64 ' ));
7585 $ this ->assertSame ('déjà ' , mb_convert_encoding ('déjà ' , 'Utf-8 ' , 'Html-entities ' ));
76- $ this ->assertSame ('déjà ' , mb_convert_encoding (utf8_decode ('déjà ' ), 'Utf-8 ' , 'ASCII,ISO-2022-JP,UTF-8,ISO-8859-1 ' ));
77- $ this ->assertSame ('déjà ' , mb_convert_encoding (utf8_decode ('déjà ' ), 'Utf-8 ' , ['ASCII ' , 'ISO-2022-JP ' , 'UTF-8 ' , 'ISO-8859-1 ' ]));
7886 }
7987
8088 /**
@@ -567,7 +575,7 @@ public function testStrwidth()
567575 {
568576 $ this ->assertSame (3 , mb_strwidth ("\000実 " , 'UTF-8 ' ));
569577 $ this ->assertSame (4 , mb_strwidth ('déjà ' , 'UTF-8 ' ));
570- $ this ->assertSame (4 , mb_strwidth (utf8_decode ('déjà ' ), 'CP1252 ' ));
578+ $ this ->assertSame (4 , mb_strwidth (mb_convert_encoding ('déjà ' , ' ISO-8859-1 ' , ' UTF-8 ' ), 'CP1252 ' ));
571579 }
572580
573581 /**
0 commit comments