Skip to content

Commit dd0b16c

Browse files
committed
1 parent 84ea94b commit dd0b16c

File tree

1 file changed

+63
-0
lines changed

1 file changed

+63
-0
lines changed

Tests/FoundationEssentialsTests/StringTests.swift

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1360,6 +1360,69 @@ final class StringTests : XCTestCase {
13601360
"abcd🎺efgh"
13611361
])
13621362
}
1363+
1364+
func test_Encoding_names() {
1365+
// Encoding to Name
1366+
XCTAssertEqual(String._Encoding.ascii.ianaName, "US-ASCII")
1367+
XCTAssertEqual(String._Encoding.nextstep.ianaName, nil)
1368+
XCTAssertEqual(String._Encoding.japaneseEUC.ianaName, "EUC-JP")
1369+
XCTAssertEqual(String._Encoding.utf8.ianaName, "UTF-8")
1370+
XCTAssertEqual(String._Encoding.isoLatin1.ianaName, "ISO-8859-1")
1371+
XCTAssertEqual(String._Encoding.symbol.ianaName, nil)
1372+
XCTAssertEqual(String._Encoding.nonLossyASCII.ianaName, nil)
1373+
XCTAssertEqual(String._Encoding.shiftJIS.ianaName, "Shift_JIS")
1374+
XCTAssertEqual(String._Encoding.isoLatin2.ianaName, "ISO-8859-2")
1375+
XCTAssertEqual(String._Encoding.unicode.ianaName, "UTF-16")
1376+
XCTAssertEqual(String._Encoding.windowsCP1251.ianaName, "windows-1251")
1377+
XCTAssertEqual(String._Encoding.windowsCP1252.ianaName, "windows-1252")
1378+
XCTAssertEqual(String._Encoding.windowsCP1253.ianaName, "windows-1253")
1379+
XCTAssertEqual(String._Encoding.windowsCP1254.ianaName, "windows-1254")
1380+
XCTAssertEqual(String._Encoding.windowsCP1250.ianaName, "windows-1250")
1381+
XCTAssertEqual(String._Encoding.iso2022JP.ianaName, "ISO-2022-JP")
1382+
XCTAssertEqual(String._Encoding.macOSRoman.ianaName, "macintosh")
1383+
XCTAssertEqual(String._Encoding.utf16BigEndian.ianaName, "UTF-16BE")
1384+
XCTAssertEqual(String._Encoding.utf16LittleEndian.ianaName, "UTF-16LE")
1385+
XCTAssertEqual(String._Encoding.utf32.ianaName, "UTF-32")
1386+
XCTAssertEqual(String._Encoding.utf32BigEndian.ianaName, "UTF-32BE")
1387+
XCTAssertEqual(String._Encoding.utf32LittleEndian.ianaName, "UTF-32LE")
1388+
XCTAssertEqual(String._Encoding(rawValue: .max).ianaName, nil)
1389+
1390+
// Name to Encoding
1391+
XCTAssertEqual(String._Encoding(ianaName: "us-ascii"), .ascii)
1392+
XCTAssertEqual(String._Encoding(ianaName: "iso-ir-2"), nil)
1393+
XCTAssertEqual(String._Encoding(ianaName: "x-nextstep"), nil)
1394+
XCTAssertEqual(String._Encoding(ianaName: "euc-jp"), .japaneseEUC)
1395+
XCTAssertEqual(String._Encoding(ianaName: "CP51932"), nil)
1396+
XCTAssertEqual(String._Encoding(ianaName: "utf-8"), .utf8)
1397+
XCTAssertEqual(String._Encoding(ianaName: "iso_8859-1"), .isoLatin1)
1398+
XCTAssertEqual(String._Encoding(ianaName: "x-mac-symbol"), nil)
1399+
XCTAssertEqual(String._Encoding(ianaName: "Adobe-symbol-encoding"), nil)
1400+
XCTAssertEqual(String._Encoding(ianaName: "cp932"), nil)
1401+
XCTAssertEqual(String._Encoding(ianaName: "shift_jis"), .shiftJIS)
1402+
XCTAssertEqual(String._Encoding(ianaName: "windows-31j"), nil)
1403+
XCTAssertEqual(String._Encoding(ianaName: "iso_8859-2"), .isoLatin2)
1404+
XCTAssertEqual(String._Encoding(ianaName: "utf-16"), .utf16)
1405+
XCTAssertEqual(String._Encoding(ianaName: "iso-10646-ucs-2"), nil)
1406+
XCTAssertEqual(String._Encoding(ianaName: "unicode-1-1"), nil)
1407+
XCTAssertEqual(String._Encoding(ianaName: "windows-1251"), .windowsCP1251)
1408+
XCTAssertEqual(String._Encoding(ianaName: "windows-1252"), .windowsCP1252)
1409+
XCTAssertEqual(String._Encoding(ianaName: "ISO-8859-1-Windows-3.0-Latin-1"), nil)
1410+
XCTAssertEqual(String._Encoding(ianaName: "ISO-8859-1-Windows-3.1-Latin-1"), nil)
1411+
XCTAssertEqual(String._Encoding(ianaName: "windows-1253"), .windowsCP1253)
1412+
XCTAssertEqual(String._Encoding(ianaName: "windows-1254"), .windowsCP1254)
1413+
XCTAssertEqual(String._Encoding(ianaName: "iso-8859-9-windows-Latin-5"), nil)
1414+
XCTAssertEqual(String._Encoding(ianaName: "windows-1250"), .windowsCP1250)
1415+
XCTAssertEqual(String._Encoding(ianaName: "iso-8859-2-windows-Latin-2"), nil)
1416+
XCTAssertEqual(String._Encoding(ianaName: "iso-2022-jp"), .iso2022JP)
1417+
XCTAssertEqual(String._Encoding(ianaName: "macintosh"), .macOSRoman)
1418+
XCTAssertEqual(String._Encoding(ianaName: "utf-16be"), .utf16BigEndian)
1419+
XCTAssertEqual(String._Encoding(ianaName: "utf-16le"), .utf16LittleEndian)
1420+
XCTAssertEqual(String._Encoding(ianaName: "utf-32"), .utf32)
1421+
XCTAssertEqual(String._Encoding(ianaName: "iso-10646-ucs-4"), nil)
1422+
XCTAssertEqual(String._Encoding(ianaName: "utf-32be"), .utf32BigEndian)
1423+
XCTAssertEqual(String._Encoding(ianaName: "utf-32le"), .utf32LittleEndian)
1424+
XCTAssertEqual(String._Encoding(ianaName: "foo-bar-baz"), nil)
1425+
}
13631426
}
13641427

13651428
// MARK: - Helper functions

0 commit comments

Comments
 (0)