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,12 +1632,10 @@ SrsAmf0Any* SrsJsonAny::to_amf0()
|
|||
srs_assert(false);
|
||||
}
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return SrsAmf0Any::null();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SrsJsonAny* SrsJsonAny::str(const char* value)
|
||||
{
|
||||
|
@ -1729,8 +1727,6 @@ SrsJsonAny* srs_json_parse_tree(json_value* node)
|
|||
default:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
SrsJsonAny* SrsJsonAny::loads(const string& str)
|
||||
|
|
|
@ -2499,6 +2499,11 @@ VOID TEST(ProtocolJSONTest, Interfaces)
|
|||
SrsJsonAny* p = SrsJsonAny::str();
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_TRUE(p->to_str().empty());
|
||||
|
||||
SrsAmf0Any* a = p->to_amf0();
|
||||
EXPECT_TRUE(a->is_string());
|
||||
|
||||
srs_freep(a);
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
|
@ -2506,6 +2511,11 @@ VOID TEST(ProtocolJSONTest, Interfaces)
|
|||
SrsJsonAny* p = SrsJsonAny::str("hello");
|
||||
EXPECT_TRUE(p->is_string());
|
||||
EXPECT_TRUE(string("hello") == p->to_str());
|
||||
|
||||
SrsAmf0Any* a = p->to_amf0();
|
||||
EXPECT_TRUE(a->is_string());
|
||||
|
||||
srs_freep(a);
|
||||
srs_freep(p);
|
||||
}
|
||||
|
||||
|
@ -2513,6 +2523,44 @@ VOID TEST(ProtocolJSONTest, Interfaces)
|
|||
SrsJsonAny* p = SrsJsonAny::str("hello", 2);
|
||||
EXPECT_TRUE(p->is_string());
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
@ -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