parent
80bd660a61
commit
112fa94402
|
@ -1181,14 +1181,6 @@ absl::Status ParseField(JsonLexer& lex, const Desc<Traits>& desc,
|
|||
if (absl::StartsWith(name, "[") && absl::EndsWith(name, "]")) {
|
||||
absl::string_view extn_name = name.substr(1, name.size() - 2);
|
||||
field = Traits::ExtensionByName(desc, extn_name);
|
||||
|
||||
auto correct_type_name = Traits::TypeName(desc);
|
||||
if (Traits::TypeName(Traits::ContainingType(*field)) != correct_type_name) {
|
||||
return lex.Invalid(absl::StrFormat(
|
||||
"'%s' is a known extension name, but is not an extenion "
|
||||
"of '%s' as expected",
|
||||
extn_name, correct_type_name));
|
||||
}
|
||||
} else {
|
||||
field = Traits::FieldByName(desc, name);
|
||||
}
|
||||
|
|
|
@ -1042,11 +1042,6 @@ TEST_P(JsonTest, Extensions) {
|
|||
R"("[protobuf_unittest.TestMixedFieldsAndExtensions.c]":42,)"
|
||||
R"("b":[1,2,3],)"
|
||||
R"("[protobuf_unittest.TestMixedFieldsAndExtensions.d]":[1,1,2,3,5,8,13]})"));
|
||||
|
||||
auto m2 = ToProto<protobuf_unittest::TestAllTypes>(R"json({
|
||||
"[protobuf_unittest.TestMixedFieldsAndExtensions.c]": 42
|
||||
})json");
|
||||
EXPECT_THAT(m2, StatusIs(absl::StatusCode::kInvalidArgument));
|
||||
}
|
||||
|
||||
// Parsing does NOT work like MergeFrom: existing repeated field values are
|
||||
|
|
Loading…
Reference in New Issue