mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-05-21 06:45:39 -06:00
41 lines
724 B
C++
41 lines
724 B
C++
#include <Core/Core.h>
|
|
|
|
using namespace Upp;
|
|
|
|
void CheckError(const char *err)
|
|
{
|
|
try {
|
|
CParser p(err);
|
|
p.ReadString();
|
|
}
|
|
catch(CParser::Error error) {
|
|
DUMP(error);
|
|
return;
|
|
}
|
|
|
|
DUMP(err);
|
|
ASSERT(0);
|
|
}
|
|
|
|
CONSOLE_APP_MAIN
|
|
{
|
|
String utf8 = "\xF0\x9F\x91\x8D";
|
|
|
|
DUMPHEX(ToUtf8(0x1F44D));
|
|
ASSERT(ToUtf8(0x1F44D) == utf8);
|
|
|
|
CParser p("\"\\ud83d\\udc4d\\U0001F44D\"");
|
|
|
|
String h = p.ReadString();
|
|
|
|
DUMPHEX(h);
|
|
|
|
ASSERT(h == utf8 + utf8);
|
|
|
|
CheckError("\"\\ud83d1\\udc4d\\U0001F44D\"");
|
|
CheckError("\"\\ud83d\\u0000\\U0001F44D\"");
|
|
CheckError("\"\\ud83d\\U0001F44D\"");
|
|
CheckError("\"\\ud83d\\udc4d\\U000F44D\"");
|
|
CheckError("\"\\u83d");
|
|
CheckError("\"\\U83d");
|
|
}
|