mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Squash: JSON: Support escape special chars. (#1758)
This commit is contained in:
parent
9a017f4037
commit
665b5f48f7
4 changed files with 91 additions and 7 deletions
|
@ -2626,6 +2626,72 @@ VOID TEST(ProtocolJSONTest, Dumps)
|
|||
}
|
||||
}
|
||||
|
||||
VOID TEST(ProtocolJSONTest, DumpsSpecialChars)
|
||||
{
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("hello");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"hello\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("he\"llo");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"he\\\"llo\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("he\\llo");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"he\\\\llo\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("he\nllo");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"he\\nllo\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("he\tllo");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"he\\tllo\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("he\bllo");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"he\\bllo\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("he\fllo");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"he\\fllo\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("he\rllo");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"he\\rllo\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsJsonAny* p = SrsJsonAny::str("hello视频");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_STREQ("\"hello\xE8\xA7\x86\xE9\xA2\x91\"", p->dumps().c_str());
|
||||
srs_freep(p);
|
||||
}
|
||||
}
|
||||
|
||||
VOID TEST(ProtocolJSONTest, Parse)
|
||||
{
|
||||
if (true) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue