mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Cover JSON codec. 3.0.62
This commit is contained in:
parent
e683f07715
commit
1ebec34d5b
2 changed files with 94 additions and 5 deletions
|
@ -1632,11 +1632,9 @@ SrsAmf0Any* SrsJsonAny::to_amf0()
|
||||||
srs_assert(false);
|
srs_assert(false);
|
||||||
}
|
}
|
||||||
default: {
|
default: {
|
||||||
break;
|
return SrsAmf0Any::null();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return SrsAmf0Any::null();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
SrsJsonAny* SrsJsonAny::str(const char* value)
|
SrsJsonAny* SrsJsonAny::str(const char* value)
|
||||||
|
@ -1729,8 +1727,6 @@ SrsJsonAny* srs_json_parse_tree(json_value* node)
|
||||||
default:
|
default:
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return NULL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
SrsJsonAny* SrsJsonAny::loads(const string& str)
|
SrsJsonAny* SrsJsonAny::loads(const string& str)
|
||||||
|
|
|
@ -2499,6 +2499,11 @@ VOID TEST(ProtocolJSONTest, Interfaces)
|
||||||
SrsJsonAny* p = SrsJsonAny::str();
|
SrsJsonAny* p = SrsJsonAny::str();
|
||||||
EXPECT_TRUE(p->is_string());
|
EXPECT_TRUE(p->is_string());
|
||||||
EXPECT_TRUE(p->to_str().empty());
|
EXPECT_TRUE(p->to_str().empty());
|
||||||
|
|
||||||
|
SrsAmf0Any* a = p->to_amf0();
|
||||||
|
EXPECT_TRUE(a->is_string());
|
||||||
|
|
||||||
|
srs_freep(a);
|
||||||
srs_freep(p);
|
srs_freep(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2506,6 +2511,11 @@ VOID TEST(ProtocolJSONTest, Interfaces)
|
||||||
SrsJsonAny* p = SrsJsonAny::str("hello");
|
SrsJsonAny* p = SrsJsonAny::str("hello");
|
||||||
EXPECT_TRUE(p->is_string());
|
EXPECT_TRUE(p->is_string());
|
||||||
EXPECT_TRUE(string("hello") == p->to_str());
|
EXPECT_TRUE(string("hello") == p->to_str());
|
||||||
|
|
||||||
|
SrsAmf0Any* a = p->to_amf0();
|
||||||
|
EXPECT_TRUE(a->is_string());
|
||||||
|
|
||||||
|
srs_freep(a);
|
||||||
srs_freep(p);
|
srs_freep(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2513,6 +2523,44 @@ VOID TEST(ProtocolJSONTest, Interfaces)
|
||||||
SrsJsonAny* p = SrsJsonAny::str("hello", 2);
|
SrsJsonAny* p = SrsJsonAny::str("hello", 2);
|
||||||
EXPECT_TRUE(p->is_string());
|
EXPECT_TRUE(p->is_string());
|
||||||
EXPECT_TRUE(string("he") == p->to_str());
|
EXPECT_TRUE(string("he") == p->to_str());
|
||||||
|
|
||||||
|
SrsAmf0Any* a = p->to_amf0();
|
||||||
|
EXPECT_TRUE(a->is_string());
|
||||||
|
|
||||||
|
srs_freep(a);
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::boolean(true);
|
||||||
|
EXPECT_TRUE(p->is_boolean());
|
||||||
|
|
||||||
|
SrsAmf0Any* a = p->to_amf0();
|
||||||
|
EXPECT_TRUE(a->is_boolean());
|
||||||
|
|
||||||
|
srs_freep(a);
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::integer();
|
||||||
|
EXPECT_TRUE(p->is_integer());
|
||||||
|
|
||||||
|
SrsAmf0Any* a = p->to_amf0();
|
||||||
|
EXPECT_TRUE(a->is_number());
|
||||||
|
|
||||||
|
srs_freep(a);
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::number();
|
||||||
|
EXPECT_TRUE(p->is_number());
|
||||||
|
|
||||||
|
SrsAmf0Any* a = p->to_amf0();
|
||||||
|
EXPECT_TRUE(a->is_number());
|
||||||
|
|
||||||
|
srs_freep(a);
|
||||||
srs_freep(p);
|
srs_freep(p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2575,3 +2623,48 @@ VOID TEST(ProtocolJSONTest, Dumps)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VOID TEST(ProtocolJSONTest, Parse)
|
||||||
|
{
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::loads("\"hello\"");
|
||||||
|
EXPECT_TRUE(p->is_string());
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::loads("true");
|
||||||
|
EXPECT_TRUE(p->is_boolean());
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::loads("3");
|
||||||
|
EXPECT_TRUE(p->is_integer());
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::loads("3.0");
|
||||||
|
EXPECT_TRUE(p->is_number());
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::loads("null");
|
||||||
|
EXPECT_TRUE(p->is_null());
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::loads("{}}");
|
||||||
|
EXPECT_TRUE(p->is_object());
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (true) {
|
||||||
|
SrsJsonAny* p = SrsJsonAny::loads("[]]");
|
||||||
|
EXPECT_TRUE(p->is_array());
|
||||||
|
srs_freep(p);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue