|
|
|
@ -56,6 +56,7 @@ using proto3::TestEnumValue; |
|
|
|
|
using proto3::TestMap; |
|
|
|
|
using proto3::TestMessage; |
|
|
|
|
using proto3::TestOneof; |
|
|
|
|
using proto3::TestAny; |
|
|
|
|
|
|
|
|
|
static const char kTypeUrlPrefix[] = "type.googleapis.com"; |
|
|
|
|
|
|
|
|
@ -357,6 +358,23 @@ TEST_F(JsonUtilTest, TestDynamicMessage) { |
|
|
|
|
EXPECT_EQ(ToJson(generated, options), ToJson(*message, options)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
TEST_F(JsonUtilTest, TestParsingUnknownAnyFields) { |
|
|
|
|
string input = |
|
|
|
|
"{\n" |
|
|
|
|
" \"value\": {\n" |
|
|
|
|
" \"@type\": \"type.googleapis.com/proto3.TestMessage\",\n" |
|
|
|
|
" \"unknown_field\": \"UNKOWN_VALUE\"\n" |
|
|
|
|
" }\n" |
|
|
|
|
"}"; |
|
|
|
|
|
|
|
|
|
TestAny m; |
|
|
|
|
JsonParseOptions options; |
|
|
|
|
EXPECT_FALSE(FromJson(input, &m, options)); |
|
|
|
|
|
|
|
|
|
options.ignore_unknown_fields = true; |
|
|
|
|
EXPECT_TRUE(FromJson(input, &m, options)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
TEST_F(JsonUtilTest, TestParsingUnknownEnumsProto2) { |
|
|
|
|
string input = |
|
|
|
|
"{\n" |
|
|
|
|