This test suite has been in use for a long time now, in place of the obsolete and unmanageable testparser.py and testfuncs.py. It verifies the complete optimizer output to stdout and stderr, to ensure that the output matches the expectations. See unit_tests/README.txt for more info.
105 lines
4.0 KiB
Plaintext
105 lines
4.0 KiB
Plaintext
[ llStringToBase64("𝄞Áañ# +")
|
|
, llStringToBase64("")
|
|
, llBase64ToString("8J2EnsOBYcOxIyAr")
|
|
, llBase64ToString("")
|
|
, llBase64ToString("1")
|
|
, llBase64ToString("12")
|
|
, llBase64ToString("14A")
|
|
// Embedded and trailing NUL tests
|
|
, llBase64ToString("QUJDAERFRg") // 'ABC\x00DEF'
|
|
, llBase64ToString("AEEAQgBD") // '\x00A\x00B\x00C'
|
|
, llBase64ToString("AEEAQgBDAA") // '\x00A\x00B\x00C\x00'
|
|
, llBase64ToString("AEEAQgBDAAA=") // '\x00A\x00B\x00C\x00\x00'
|
|
// Miscellaneous tests
|
|
, llBase64ToString("gIAA")
|
|
, llBase64ToString("gAA")
|
|
, llBase64ToString("44AA")
|
|
, llBase64ToString("4IAh")
|
|
, llBase64ToString("gICAgGE")
|
|
, llBase64ToString("QQA")
|
|
, llBase64ToString("AEE=")
|
|
, llBase64ToString("wKE")
|
|
, llBase64ToString("9ICA")
|
|
, llBase64ToString("94CAgICA")
|
|
, llBase64ToString("4ICA")
|
|
, llBase64ToString("4IA")
|
|
, llUnescapeURL("%E0%80") // compare the result with the above's (extra "?")
|
|
|
|
// Invalid characters tests
|
|
, llBase64ToString("w4GA44HDgEFCQ9M") // C3 81 80 E3 81 C3 80 41 42 43 D3
|
|
, llBase64ToString("w4GA44HDgEFCQwDT") // C3 81 80 E3 81 C3 80 41 42 43 00 D3
|
|
, llBase64ToString("4ICAgICAgOOBw4BBQkMA0w") // E0 80 80 80 80 80 80 E3 81 C3 80 41 42 43 00 D3
|
|
|
|
// Test all UTF-8 ranges
|
|
// Normal ASCII range
|
|
, llBase64ToString("AHg") // 00 78
|
|
, llBase64ToString("AXg") // 01 78
|
|
, llBase64ToString("f3g") // 7F 78
|
|
, llBase64ToString("AQIDBAUGBwgJCgsMDQ4P") // 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
|
|
, llBase64ToString("EBESExQVFhcYGRobHB0eHw") // 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
|
|
|
|
// Invalid range (characters used for 2nd position and on)
|
|
, llBase64ToString("gIB4") // 80 80 78
|
|
, llBase64ToString("v794") // BF BF 78
|
|
// Aliased range U+0000 - U+007F
|
|
, llBase64ToString("wIB4") // C0 80 78
|
|
, llBase64ToString("wb94") // C1 BF 78
|
|
// Valid U+0080 - U+07FF
|
|
, llBase64ToString("woB4") // C2 80 78
|
|
, llBase64ToString("3794") // DF BF 78
|
|
// Aliased range U+0000 - U+07FF
|
|
, llBase64ToString("4ICAeA") // E0 80 80 78
|
|
, llBase64ToString("4J+/eA") // E0 9F BF 78
|
|
// Valid U+0800 - U+D7FF
|
|
, llBase64ToString("4KCAeA") // E0 A0 80 78
|
|
, llBase64ToString("7Z+/eA") // ED 9F BF 78
|
|
// UTF-16 surrogates area
|
|
// High surrogates U+D800 - U+DBFF
|
|
, llBase64ToString("7aCAeA") // ED A0 80 78
|
|
, llBase64ToString("7a+/eA") // ED AF BF 78
|
|
// Low surrogates U+DC00 - U+DFFF
|
|
, llBase64ToString("7bCAeA") // ED B0 80 78
|
|
, llBase64ToString("7b+/eA") // ED BF BF 78
|
|
// Valid U+E000 - U+FFFF
|
|
, llBase64ToString("7oCAeA") // EE 80 80 78
|
|
, llBase64ToString("77+/eA") // EF BF BF 78
|
|
// Aliased range U+0000 - U+FFFF
|
|
, llBase64ToString("8ICAgHg") // F0 80 80 80 78
|
|
, llBase64ToString("8I+/v3g") // F0 8F BF BF 78
|
|
// Valid range U+10000 - U+10FFFF
|
|
, llBase64ToString("8JCAgHg") // F0 90 80 80 78
|
|
, llBase64ToString("9I+/v3g") // F4 8F BF BF 78
|
|
// Out of range U+110000 - U + 1FFFFF
|
|
, llBase64ToString("9JCAgHg") // F4 90 80 80 78
|
|
, llBase64ToString("97+/v3g") // F7 BF BF BF 78
|
|
// Aliased range U+0000 - U+1FFFFF
|
|
, llBase64ToString("+ICAgIB4") // F8 80 80 80 80 78
|
|
, llBase64ToString("+Ie/v794") // F8 87 BF BF BF 78
|
|
// Out of range U+200000 - U+3FFFFFF
|
|
, llBase64ToString("+IiAgIB4") // F8 88 80 80 80 78
|
|
, llBase64ToString("+7+/v794") // FB BF BF BF BF 78
|
|
// Aliased range U+0000 - U+3FFFFFF
|
|
, llBase64ToString("/ICAgICAeA") // FC 80 80 80 80 80 78
|
|
, llBase64ToString("/IO/v7+/eA") // FC 83 BF BF BF BF 78
|
|
// Out of range U+4000000 - U+7FFFFFFF
|
|
, llBase64ToString("/ISAgICAeA") // FC 84 80 80 80 80 78
|
|
, llBase64ToString("/b+/v7+/eA") // FD BF BF BF BF BF 78
|
|
// Invalid in UTF-8 (used for UTF-16 BOM)
|
|
, llBase64ToString("/rCAgICAgIB4") // FE B0 80 80 80 80 80 80 78
|
|
, llBase64ToString("/7+/v7+/v794") // FF BF BF BF BF BF BF BF 78
|
|
// Short or invalid sequences
|
|
, llBase64ToString("gA") // 80
|
|
, llBase64ToString("vw") // BF
|
|
, llBase64ToString("wg") // C2
|
|
, llBase64ToString("4Q") // E1
|
|
, llBase64ToString("4YA") // E1 80
|
|
, llBase64ToString("8Q") // F1
|
|
, llBase64ToString("8YA") // F1 80
|
|
, llBase64ToString("8YCA") // F1 80 80
|
|
, llBase64ToString("+ICAgA") // F8 80 80 80
|
|
, llBase64ToString("+IiAgA") // F8 88 80 80
|
|
, llBase64ToString("/ICAgIA") // FC 80 80 80 80
|
|
, llBase64ToString("/ISAgIA") // FC 84 80 80 80
|
|
, llBase64ToString("77+9kA") // EF BF BD 90
|
|
]
|