Correct type_resolver_util to set syntax=proto3 instead of syntax=proto2 on proto3 files.

PiperOrigin-RevId: 600473754
pull/15400/head
Protobuf Team Bot 1 year ago committed by Copybara-Service
parent 71b0b4e0a9
commit 040dde7e37
  1. 11
      src/google/protobuf/util/type_resolver_util.cc
  2. 3
      src/google/protobuf/util/type_resolver_util_test.cc

@ -252,11 +252,14 @@ void ConvertFieldDescriptor(absl::string_view url_prefix,
}
Syntax ConvertSyntax(Edition edition) {
if (edition >= Edition::EDITION_2023) {
return Syntax::SYNTAX_EDITIONS;
switch (edition) {
case Edition::EDITION_PROTO2:
return Syntax::SYNTAX_PROTO2;
case Edition::EDITION_PROTO3:
return Syntax::SYNTAX_PROTO3;
default:
return Syntax::SYNTAX_EDITIONS;
}
// TODO This should propagate proto3 as expected.
return Syntax::SYNTAX_PROTO2;
}
void ConvertEnumDescriptor(const EnumDescriptor& descriptor, Enum* enum_type) {

@ -460,8 +460,7 @@ TEST_F(DescriptorPoolTypeResolverSyntaxTest, SyntaxProto3) {
Type type;
ASSERT_TRUE(
resolver_->ResolveMessageType(GetTypeUrl("test.MyMessage"), &type).ok());
// TODO This should be proto3.
EXPECT_EQ(type.syntax(), Syntax::SYNTAX_PROTO2);
EXPECT_EQ(type.syntax(), Syntax::SYNTAX_PROTO3);
EXPECT_EQ(type.edition(), "");
}

Loading…
Cancel
Save