@@ -1397,6 +1397,69 @@ private struct StringTests {
1397
1397
" abcd🎺efgh "
1398
1398
] )
1399
1399
}
1400
+
1401
+ func test_Encoding_names( ) {
1402
+ // Encoding to Name
1403
+ XCTAssertEqual ( String . _Encoding. ascii. ianaName, " US-ASCII " )
1404
+ XCTAssertEqual ( String . _Encoding. nextstep. ianaName, nil )
1405
+ XCTAssertEqual ( String . _Encoding. japaneseEUC. ianaName, " EUC-JP " )
1406
+ XCTAssertEqual ( String . _Encoding. utf8. ianaName, " UTF-8 " )
1407
+ XCTAssertEqual ( String . _Encoding. isoLatin1. ianaName, " ISO-8859-1 " )
1408
+ XCTAssertEqual ( String . _Encoding. symbol. ianaName, nil )
1409
+ XCTAssertEqual ( String . _Encoding. nonLossyASCII. ianaName, nil )
1410
+ XCTAssertEqual ( String . _Encoding. shiftJIS. ianaName, " Shift_JIS " )
1411
+ XCTAssertEqual ( String . _Encoding. isoLatin2. ianaName, " ISO-8859-2 " )
1412
+ XCTAssertEqual ( String . _Encoding. unicode. ianaName, " UTF-16 " )
1413
+ XCTAssertEqual ( String . _Encoding. windowsCP1251. ianaName, " windows-1251 " )
1414
+ XCTAssertEqual ( String . _Encoding. windowsCP1252. ianaName, " windows-1252 " )
1415
+ XCTAssertEqual ( String . _Encoding. windowsCP1253. ianaName, " windows-1253 " )
1416
+ XCTAssertEqual ( String . _Encoding. windowsCP1254. ianaName, " windows-1254 " )
1417
+ XCTAssertEqual ( String . _Encoding. windowsCP1250. ianaName, " windows-1250 " )
1418
+ XCTAssertEqual ( String . _Encoding. iso2022JP. ianaName, " ISO-2022-JP " )
1419
+ XCTAssertEqual ( String . _Encoding. macOSRoman. ianaName, " macintosh " )
1420
+ XCTAssertEqual ( String . _Encoding. utf16BigEndian. ianaName, " UTF-16BE " )
1421
+ XCTAssertEqual ( String . _Encoding. utf16LittleEndian. ianaName, " UTF-16LE " )
1422
+ XCTAssertEqual ( String . _Encoding. utf32. ianaName, " UTF-32 " )
1423
+ XCTAssertEqual ( String . _Encoding. utf32BigEndian. ianaName, " UTF-32BE " )
1424
+ XCTAssertEqual ( String . _Encoding. utf32LittleEndian. ianaName, " UTF-32LE " )
1425
+ XCTAssertEqual ( String . _Encoding ( rawValue: . max) . ianaName, nil )
1426
+
1427
+ // Name to Encoding
1428
+ XCTAssertEqual ( String . _Encoding ( ianaName: " us-ascii " ) , . ascii)
1429
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso-ir-2 " ) , nil )
1430
+ XCTAssertEqual ( String . _Encoding ( ianaName: " x-nextstep " ) , nil )
1431
+ XCTAssertEqual ( String . _Encoding ( ianaName: " euc-jp " ) , . japaneseEUC)
1432
+ XCTAssertEqual ( String . _Encoding ( ianaName: " CP51932 " ) , nil )
1433
+ XCTAssertEqual ( String . _Encoding ( ianaName: " utf-8 " ) , . utf8)
1434
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso_8859-1 " ) , . isoLatin1)
1435
+ XCTAssertEqual ( String . _Encoding ( ianaName: " x-mac-symbol " ) , nil )
1436
+ XCTAssertEqual ( String . _Encoding ( ianaName: " Adobe-symbol-encoding " ) , nil )
1437
+ XCTAssertEqual ( String . _Encoding ( ianaName: " cp932 " ) , nil )
1438
+ XCTAssertEqual ( String . _Encoding ( ianaName: " shift_jis " ) , . shiftJIS)
1439
+ XCTAssertEqual ( String . _Encoding ( ianaName: " windows-31j " ) , nil )
1440
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso_8859-2 " ) , . isoLatin2)
1441
+ XCTAssertEqual ( String . _Encoding ( ianaName: " utf-16 " ) , . utf16)
1442
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso-10646-ucs-2 " ) , nil )
1443
+ XCTAssertEqual ( String . _Encoding ( ianaName: " unicode-1-1 " ) , nil )
1444
+ XCTAssertEqual ( String . _Encoding ( ianaName: " windows-1251 " ) , . windowsCP1251)
1445
+ XCTAssertEqual ( String . _Encoding ( ianaName: " windows-1252 " ) , . windowsCP1252)
1446
+ XCTAssertEqual ( String . _Encoding ( ianaName: " ISO-8859-1-Windows-3.0-Latin-1 " ) , nil )
1447
+ XCTAssertEqual ( String . _Encoding ( ianaName: " ISO-8859-1-Windows-3.1-Latin-1 " ) , nil )
1448
+ XCTAssertEqual ( String . _Encoding ( ianaName: " windows-1253 " ) , . windowsCP1253)
1449
+ XCTAssertEqual ( String . _Encoding ( ianaName: " windows-1254 " ) , . windowsCP1254)
1450
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso-8859-9-windows-Latin-5 " ) , nil )
1451
+ XCTAssertEqual ( String . _Encoding ( ianaName: " windows-1250 " ) , . windowsCP1250)
1452
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso-8859-2-windows-Latin-2 " ) , nil )
1453
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso-2022-jp " ) , . iso2022JP)
1454
+ XCTAssertEqual ( String . _Encoding ( ianaName: " macintosh " ) , . macOSRoman)
1455
+ XCTAssertEqual ( String . _Encoding ( ianaName: " utf-16be " ) , . utf16BigEndian)
1456
+ XCTAssertEqual ( String . _Encoding ( ianaName: " utf-16le " ) , . utf16LittleEndian)
1457
+ XCTAssertEqual ( String . _Encoding ( ianaName: " utf-32 " ) , . utf32)
1458
+ XCTAssertEqual ( String . _Encoding ( ianaName: " iso-10646-ucs-4 " ) , nil )
1459
+ XCTAssertEqual ( String . _Encoding ( ianaName: " utf-32be " ) , . utf32BigEndian)
1460
+ XCTAssertEqual ( String . _Encoding ( ianaName: " utf-32le " ) , . utf32LittleEndian)
1461
+ XCTAssertEqual ( String . _Encoding ( ianaName: " foo-bar-baz " ) , nil )
1462
+ }
1400
1463
}
1401
1464
1402
1465
// MARK: - Helper functions
0 commit comments