Fixing java and protoc builds

pull/9461/head
Deanna Garcia 3 years ago
parent b7fe12e367
commit 349738dde5
  1. 4
      BUILD
  2. 2
      java/core/BUILD
  3. 15
      java/core/src/test/proto/com/google/protobuf/dynamic_message_test.proto
  4. 913
      java/kotlin-lite/src/test/kotlin/com/google/protobuf/Proto2LiteTest.kt
  5. 15
      java/kotlin-lite/src/test/proto/com/google/protobuf/multiple_files_proto3.proto
  6. 13
      java/kotlin/src/test/kotlin/com/google/protobuf/Proto2Test.kt
  7. 284
      java/kotlin/src/test/kotlin/com/google/protobuf/Proto3Test.kt
  8. 1
      java/lite/generate-test-sources-build.xml
  9. 2
      java/lite/pom.xml

@ -163,7 +163,6 @@ cc_library(
"src/google/protobuf/arenastring.cc", "src/google/protobuf/arenastring.cc",
"src/google/protobuf/extension_set.cc", "src/google/protobuf/extension_set.cc",
"src/google/protobuf/generated_enum_util.cc", "src/google/protobuf/generated_enum_util.cc",
"src/google/protobuf/generated_message_table_driven_lite.cc",
"src/google/protobuf/generated_message_tctable_lite.cc", "src/google/protobuf/generated_message_tctable_lite.cc",
"src/google/protobuf/generated_message_util.cc", "src/google/protobuf/generated_message_util.cc",
"src/google/protobuf/implicit_weak_message.cc", "src/google/protobuf/implicit_weak_message.cc",
@ -225,7 +224,6 @@ cc_library(
"src/google/protobuf/field_mask.pb.cc", "src/google/protobuf/field_mask.pb.cc",
"src/google/protobuf/generated_message_bases.cc", "src/google/protobuf/generated_message_bases.cc",
"src/google/protobuf/generated_message_reflection.cc", "src/google/protobuf/generated_message_reflection.cc",
"src/google/protobuf/generated_message_table_driven.cc",
"src/google/protobuf/generated_message_tctable_full.cc", "src/google/protobuf/generated_message_tctable_full.cc",
"src/google/protobuf/io/gzip_stream.cc", "src/google/protobuf/io/gzip_stream.cc",
"src/google/protobuf/io/printer.cc", "src/google/protobuf/io/printer.cc",
@ -501,6 +499,8 @@ cc_library(
"src/google/protobuf/compiler/plugin.cc", "src/google/protobuf/compiler/plugin.cc",
"src/google/protobuf/compiler/plugin.pb.cc", "src/google/protobuf/compiler/plugin.pb.cc",
"src/google/protobuf/compiler/python/python_generator.cc", "src/google/protobuf/compiler/python/python_generator.cc",
"src/google/protobuf/compiler/python/python_helpers.cc",
"src/google/protobuf/compiler/python/python_pyi_generator.cc",
"src/google/protobuf/compiler/ruby/ruby_generator.cc", "src/google/protobuf/compiler/ruby/ruby_generator.cc",
"src/google/protobuf/compiler/subprocess.cc", "src/google/protobuf/compiler/subprocess.cc",
"src/google/protobuf/compiler/zip_writer.cc", "src/google/protobuf/compiler/zip_writer.cc",

@ -27,6 +27,7 @@ LITE_SRCS = [
"src/main/java/com/google/protobuf/CodedInputStreamReader.java", "src/main/java/com/google/protobuf/CodedInputStreamReader.java",
"src/main/java/com/google/protobuf/CodedOutputStream.java", "src/main/java/com/google/protobuf/CodedOutputStream.java",
"src/main/java/com/google/protobuf/CodedOutputStreamWriter.java", "src/main/java/com/google/protobuf/CodedOutputStreamWriter.java",
"src/main/java/com/google/protobuf/CompileTimeConstant.java",
"src/main/java/com/google/protobuf/DoubleArrayList.java", "src/main/java/com/google/protobuf/DoubleArrayList.java",
"src/main/java/com/google/protobuf/ExperimentalApi.java", "src/main/java/com/google/protobuf/ExperimentalApi.java",
"src/main/java/com/google/protobuf/ExtensionLite.java", "src/main/java/com/google/protobuf/ExtensionLite.java",
@ -41,6 +42,7 @@ LITE_SRCS = [
"src/main/java/com/google/protobuf/FloatArrayList.java", "src/main/java/com/google/protobuf/FloatArrayList.java",
"src/main/java/com/google/protobuf/GeneratedMessageInfoFactory.java", "src/main/java/com/google/protobuf/GeneratedMessageInfoFactory.java",
"src/main/java/com/google/protobuf/GeneratedMessageLite.java", "src/main/java/com/google/protobuf/GeneratedMessageLite.java",
"src/main/java/com/google/protobuf/InlineMe.java",
"src/main/java/com/google/protobuf/IntArrayList.java", "src/main/java/com/google/protobuf/IntArrayList.java",
"src/main/java/com/google/protobuf/Internal.java", "src/main/java/com/google/protobuf/Internal.java",
"src/main/java/com/google/protobuf/InvalidProtocolBufferException.java", "src/main/java/com/google/protobuf/InvalidProtocolBufferException.java",

@ -28,20 +28,6 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
<<<<<<<< HEAD:java/kotlin-lite/src/test/proto/com/google/protobuf/multiple_files_proto3.proto
syntax = "proto3";
package protobuf.kotlin.generator;
option java_package = "com.google.protobuf.kotlin.generator";
option java_multiple_files = true;
enum NestedEnum { FOO = 0; }
message MultipleFilesMessageA {}
message MultipleFilesMessageB {}
========
syntax = "proto2"; syntax = "proto2";
package dynamic_message_test; package dynamic_message_test;
@ -54,4 +40,3 @@ message EmptyMessage {}
message MessageWithMapFields { message MessageWithMapFields {
map<string, EmptyMessage> string_message_map = 1; map<string, EmptyMessage> string_message_map = 1;
} }
>>>>>>>> refs/tags/sync-piper:java/core/src/test/proto/com/google/protobuf/dynamic_message_test.proto

@ -28,7 +28,6 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
<<<<<<<< HEAD:java/kotlin-lite/src/test/proto/com/google/protobuf/multiple_files_proto3.proto
syntax = "proto3"; syntax = "proto3";
package protobuf.kotlin.generator; package protobuf.kotlin.generator;
@ -41,17 +40,3 @@ enum NestedEnum { FOO = 0; }
message MultipleFilesMessageA {} message MultipleFilesMessageA {}
message MultipleFilesMessageB {} message MultipleFilesMessageB {}
========
syntax = "proto2";
package dynamic_message_test;
option java_package = "dynamicmessagetest";
option java_outer_classname = "DynamicMessageTestProto";
message EmptyMessage {}
message MessageWithMapFields {
map<string, EmptyMessage> string_message_map = 1;
}
>>>>>>>> refs/tags/sync-piper:java/core/src/test/proto/com/google/protobuf/dynamic_message_test.proto

@ -58,7 +58,6 @@ import protobuf_unittest.UnittestProto.TestEmptyMessageWithExtensions
import protobuf_unittest.copy import protobuf_unittest.copy
import protobuf_unittest.foreignMessage import protobuf_unittest.foreignMessage
import protobuf_unittest.optionalGroupExtension import protobuf_unittest.optionalGroupExtension
import protobuf_unittest.optionalNestedMessageOrNull
import protobuf_unittest.repeatedGroupExtension import protobuf_unittest.repeatedGroupExtension
import protobuf_unittest.testAllExtensions import protobuf_unittest.testAllExtensions
import protobuf_unittest.testAllTypes import protobuf_unittest.testAllTypes
@ -954,16 +953,4 @@ class Proto2Test {
assertThat(hasDo_()).isFalse() assertThat(hasDo_()).isFalse()
} }
} }
@Test
fun testGetOrNull() {
val noNestedMessage = testAllTypes {}
assertThat(noNestedMessage.optionalNestedMessageOrNull).isEqualTo(null)
val someNestedMessage = testAllTypes {
optionalNestedMessage = TestAllTypesKt.nestedMessage { bb = 118 }
}
assertThat(someNestedMessage.optionalNestedMessageOrNull)
.isEqualTo(TestAllTypesKt.nestedMessage { bb = 118 })
}
} }

@ -44,7 +44,6 @@ import proto3_unittest.UnittestProto3.TestAllTypes
import proto3_unittest.UnittestProto3.TestAllTypes.NestedEnum import proto3_unittest.UnittestProto3.TestAllTypes.NestedEnum
import proto3_unittest.UnittestProto3.TestEmptyMessage import proto3_unittest.UnittestProto3.TestEmptyMessage
import proto3_unittest.copy import proto3_unittest.copy
import proto3_unittest.optionalNestedMessageOrNull
import proto3_unittest.testAllTypes import proto3_unittest.testAllTypes
import proto3_unittest.testEmptyMessage import proto3_unittest.testEmptyMessage
import org.junit.Test import org.junit.Test
@ -87,61 +86,66 @@ class Proto3Test {
assertThat(repeatedString).isEqualTo(listOf("5", "2", "3", "4")) assertThat(repeatedString).isEqualTo(listOf("5", "2", "3", "4"))
repeatedNestedMessage.addAll(listOf(nestedMessage { bb = 1 }, nestedMessage { bb = 2 })) repeatedNestedMessage.addAll(listOf(nestedMessage { bb = 1 }, nestedMessage { bb = 2 }))
assertThat(repeatedNestedMessage) assertThat(repeatedNestedMessage).isEqualTo(
.isEqualTo(listOf(nestedMessage { bb = 1 }, nestedMessage { bb = 2 })) listOf(
nestedMessage { bb = 1 },
nestedMessage { bb = 2 }
)
)
repeatedNestedMessage += listOf(nestedMessage { bb = 3 }, nestedMessage { bb = 4 }) repeatedNestedMessage += listOf(nestedMessage { bb = 3 }, nestedMessage { bb = 4 })
assertThat(repeatedNestedMessage) assertThat(repeatedNestedMessage).isEqualTo(
.isEqualTo( listOf(
listOf( nestedMessage { bb = 1 },
nestedMessage { bb = 1 }, nestedMessage { bb = 2 },
nestedMessage { bb = 2 }, nestedMessage { bb = 3 },
nestedMessage { bb = 3 }, nestedMessage { bb = 4 }
nestedMessage { bb = 4 }
)
) )
)
repeatedNestedMessage[0] = nestedMessage { bb = 5 } repeatedNestedMessage[0] = nestedMessage { bb = 5 }
assertThat(repeatedNestedMessage) assertThat(repeatedNestedMessage).isEqualTo(
.isEqualTo( listOf(
listOf( nestedMessage { bb = 5 },
nestedMessage { bb = 5 }, nestedMessage { bb = 2 },
nestedMessage { bb = 2 }, nestedMessage { bb = 3 },
nestedMessage { bb = 3 }, nestedMessage { bb = 4 }
nestedMessage { bb = 4 }
)
) )
)
repeatedNestedEnum.addAll(listOf(NestedEnum.FOO, NestedEnum.BAR)) repeatedNestedEnum.addAll(listOf(NestedEnum.FOO, NestedEnum.BAR))
assertThat(repeatedNestedEnum).isEqualTo(listOf(NestedEnum.FOO, NestedEnum.BAR)) assertThat(repeatedNestedEnum).isEqualTo(listOf(NestedEnum.FOO, NestedEnum.BAR))
repeatedNestedEnum += listOf(NestedEnum.BAZ, NestedEnum.FOO) repeatedNestedEnum += listOf(NestedEnum.BAZ, NestedEnum.FOO)
assertThat(repeatedNestedEnum) assertThat(repeatedNestedEnum).isEqualTo(
.isEqualTo(listOf(NestedEnum.FOO, NestedEnum.BAR, NestedEnum.BAZ, NestedEnum.FOO)) listOf(NestedEnum.FOO, NestedEnum.BAR, NestedEnum.BAZ, NestedEnum.FOO)
)
repeatedNestedEnum[0] = NestedEnum.BAR repeatedNestedEnum[0] = NestedEnum.BAR
assertThat(repeatedNestedEnum) assertThat(repeatedNestedEnum).isEqualTo(
.isEqualTo(listOf(NestedEnum.BAR, NestedEnum.BAR, NestedEnum.BAZ, NestedEnum.FOO)) listOf(NestedEnum.BAR, NestedEnum.BAR, NestedEnum.BAZ, NestedEnum.FOO)
)
} }
} }
@Test @Test
fun testClears() { fun testClears() {
assertThat( assertThat(
testAllTypes { testAllTypes {
optionalInt32 = 101 optionalInt32 = 101
clearOptionalInt32() clearOptionalInt32()
optionalString = "115" optionalString = "115"
clearOptionalString() clearOptionalString()
optionalNestedMessage = TestAllTypesKt.nestedMessage { bb = 118 } optionalNestedMessage = TestAllTypesKt.nestedMessage { bb = 118 }
clearOptionalNestedMessage() clearOptionalNestedMessage()
optionalNestedEnum = NestedEnum.BAZ optionalNestedEnum = NestedEnum.BAZ
clearOptionalNestedEnum() clearOptionalNestedEnum()
oneofUint32 = 601 oneofUint32 = 601
clearOneofUint32() clearOneofUint32()
} }
) ).isEqualTo(
.isEqualTo(TestAllTypes.newBuilder().build()) TestAllTypes.newBuilder().build()
)
} }
@Test @Test
@ -150,110 +154,126 @@ class Proto3Test {
optionalInt32 = 101 optionalInt32 = 101
optionalString = "115" optionalString = "115"
} }
val modifiedMessage = message.copy { optionalInt32 = 201 } val modifiedMessage = message.copy {
optionalInt32 = 201
}
assertThat(message) assertThat(message).isEqualTo(
.isEqualTo(TestAllTypes.newBuilder().setOptionalInt32(101).setOptionalString("115").build()) TestAllTypes.newBuilder()
assertThat(modifiedMessage) .setOptionalInt32(101)
.isEqualTo(TestAllTypes.newBuilder().setOptionalInt32(201).setOptionalString("115").build()) .setOptionalString("115")
.build()
)
assertThat(modifiedMessage).isEqualTo(
TestAllTypes.newBuilder()
.setOptionalInt32(201)
.setOptionalString("115")
.build()
)
} }
@Test @Test
fun testOneof() { fun testOneof() {
val message = testAllTypes { val message = testAllTypes {
oneofString = "foo" oneofString = "foo"
assertThat(oneofFieldCase).isEqualTo(TestAllTypes.OneofFieldCase.ONEOF_STRING) assertThat(oneofFieldCase)
.isEqualTo(TestAllTypes.OneofFieldCase.ONEOF_STRING)
assertThat(oneofString).isEqualTo("foo") assertThat(oneofString).isEqualTo("foo")
clearOneofField() clearOneofField()
assertThat(oneofFieldCase).isEqualTo(TestAllTypes.OneofFieldCase.ONEOFFIELD_NOT_SET) assertThat(oneofFieldCase)
.isEqualTo(TestAllTypes.OneofFieldCase.ONEOFFIELD_NOT_SET)
oneofUint32 = 5 oneofUint32 = 5
} }
assertThat(message.getOneofFieldCase()).isEqualTo(TestAllTypes.OneofFieldCase.ONEOF_UINT32) assertThat(message.getOneofFieldCase())
.isEqualTo(TestAllTypes.OneofFieldCase.ONEOF_UINT32)
assertThat(message.getOneofUint32()).isEqualTo(5) assertThat(message.getOneofUint32()).isEqualTo(5)
} }
@Test @Test
fun testEmptyMessages() { fun testEmptyMessages() {
assertThat(testEmptyMessage {}).isEqualTo(TestEmptyMessage.newBuilder().build()) assertThat(
testEmptyMessage {}
).isEqualTo(
TestEmptyMessage.newBuilder().build()
)
} }
@Test @Test
fun testEvilNames() { fun testEvilNames() {
assertThat( assertThat(
evilNamesProto3 { evilNamesProto3 {
initialized = true initialized = true
hasFoo = true hasFoo = true
bar = "foo" bar = "foo"
isInitialized = true isInitialized = true
fooBar = "foo" fooBar = "foo"
aLLCAPS += "foo" aLLCAPS += "foo"
aLLCAPSMAP[1] = true aLLCAPSMAP[1] = true
hasUnderbarPrecedingNumeric1Foo = true hasUnderbarPrecedingNumeric1Foo = true
hasUnderbarPrecedingNumeric42Bar = true hasUnderbarPrecedingNumeric42Bar = true
hasUnderbarPrecedingNumeric123Foo42BarBaz = true hasUnderbarPrecedingNumeric123Foo42BarBaz = true
extension += "foo" extension += "foo"
class_ = "foo" class_ = "foo"
int = 1.0 int = 1.0
long = true long = true
boolean = 1L boolean = 1L
sealed = "foo" sealed = "foo"
interface_ = 1F interface_ = 1F
in_ = 1 in_ = 1
object_ = "foo" object_ = "foo"
cachedSize_ = "foo" cachedSize_ = "foo"
serializedSize_ = true serializedSize_ = true
value = "foo" value = "foo"
index = 1L index = 1L
values += "foo" values += "foo"
newValues += "foo" newValues += "foo"
builder = true builder = true
k[1] = 1 k[1] = 1
v["foo"] = "foo" v["foo"] = "foo"
key["foo"] = 1 key["foo"] = 1
map[1] = "foo" map[1] = "foo"
pairs["foo"] = 1 pairs["foo"] = 1
LeadingUnderscore = "foo" LeadingUnderscore = "foo"
option = 1 option = 1
} }
) ).isEqualTo(
.isEqualTo( EvilNamesProto3.newBuilder()
EvilNamesProto3.newBuilder() .setInitialized(true)
.setInitialized(true) .setHasFoo(true)
.setHasFoo(true) .setBar("foo")
.setBar("foo") .setIsInitialized(true)
.setIsInitialized(true) .setFooBar("foo")
.setFooBar("foo") .addALLCAPS("foo")
.addALLCAPS("foo") .putALLCAPSMAP(1, true)
.putALLCAPSMAP(1, true) .setHasUnderbarPrecedingNumeric1Foo(true)
.setHasUnderbarPrecedingNumeric1Foo(true) .setHasUnderbarPrecedingNumeric42Bar(true)
.setHasUnderbarPrecedingNumeric42Bar(true) .setHasUnderbarPrecedingNumeric123Foo42BarBaz(true)
.setHasUnderbarPrecedingNumeric123Foo42BarBaz(true) .addExtension("foo")
.addExtension("foo") .setClass_("foo")
.setClass_("foo") .setInt(1.0)
.setInt(1.0) .setLong(true)
.setLong(true) .setBoolean(1L)
.setBoolean(1L) .setSealed("foo")
.setSealed("foo") .setInterface(1F)
.setInterface(1F) .setIn(1)
.setIn(1) .setObject("foo")
.setObject("foo") .setCachedSize_("foo")
.setCachedSize_("foo") .setSerializedSize_(true)
.setSerializedSize_(true) .setValue("foo")
.setValue("foo") .setIndex(1L)
.setIndex(1L) .addValues("foo")
.addValues("foo") .addNewValues("foo")
.addNewValues("foo") .setBuilder(true)
.setBuilder(true) .putK(1, 1)
.putK(1, 1) .putV("foo", "foo")
.putV("foo", "foo") .putKey("foo", 1)
.putKey("foo", 1) .putMap(1, "foo")
.putMap(1, "foo") .putPairs("foo", 1)
.putPairs("foo", 1) .setLeadingUnderscore("foo")
.setLeadingUnderscore("foo") .setOption(1)
.setOption(1) .build()
.build() )
)
assertThat(class_ {}).isEqualTo(Class.newBuilder().build()) assertThat(class_ {}).isEqualTo(Class.newBuilder().build())
} }
@ -330,22 +350,16 @@ class Proto3Test {
@Test @Test
fun testMultipleFiles() { fun testMultipleFiles() {
assertThat(com.google.protobuf.kotlin.generator.multipleFilesMessageA {}) assertThat(
.isEqualTo(com.google.protobuf.kotlin.generator.MultipleFilesMessageA.newBuilder().build()) com.google.protobuf.kotlin.generator.multipleFilesMessageA {}
).isEqualTo(
assertThat(com.google.protobuf.kotlin.generator.multipleFilesMessageB {}) com.google.protobuf.kotlin.generator.MultipleFilesMessageA.newBuilder().build()
.isEqualTo(com.google.protobuf.kotlin.generator.MultipleFilesMessageB.newBuilder().build()) )
}
@Test
fun testGetOrNull() {
val noNestedMessage = testAllTypes {}
assertThat(noNestedMessage.optionalNestedMessageOrNull).isEqualTo(null)
val someNestedMessage = testAllTypes { assertThat(
optionalNestedMessage = TestAllTypesKt.nestedMessage { bb = 118 } com.google.protobuf.kotlin.generator.multipleFilesMessageB {}
} ).isEqualTo(
assertThat(someNestedMessage.optionalNestedMessageOrNull) com.google.protobuf.kotlin.generator.MultipleFilesMessageB.newBuilder().build()
.isEqualTo(TestAllTypesKt.nestedMessage { bb = 118 }) )
} }
} }

@ -5,6 +5,7 @@
<arg value="--proto_path=${protobuf.source.dir}"/> <arg value="--proto_path=${protobuf.source.dir}"/>
<arg value="--proto_path=${protobuf.basedir}/java/core/${test.proto.dir}"/> <arg value="--proto_path=${protobuf.basedir}/java/core/${test.proto.dir}"/>
<arg value="${protobuf.source.dir}/google/protobuf/descriptor.proto"/> <arg value="${protobuf.source.dir}/google/protobuf/descriptor.proto"/>
<arg value="${protobuf.source.dir}/google/protobuf/map_lite_unittest.proto"/>
<arg value="${protobuf.source.dir}/google/protobuf/unittest.proto"/> <arg value="${protobuf.source.dir}/google/protobuf/unittest.proto"/>
<arg value="${protobuf.source.dir}/google/protobuf/unittest_import.proto"/> <arg value="${protobuf.source.dir}/google/protobuf/unittest_import.proto"/>
<arg value="${protobuf.source.dir}/google/protobuf/unittest_import_lite.proto"/> <arg value="${protobuf.source.dir}/google/protobuf/unittest_import_lite.proto"/>

@ -105,6 +105,7 @@
<include>CodedInputStreamReader.java</include> <include>CodedInputStreamReader.java</include>
<include>CodedOutputStream.java</include> <include>CodedOutputStream.java</include>
<include>CodedOutputStreamWriter.java</include> <include>CodedOutputStreamWriter.java</include>
<include>CompileTimeConstant.java</include>
<include>DoubleArrayList.java</include> <include>DoubleArrayList.java</include>
<include>ExperimentalApi.java</include> <include>ExperimentalApi.java</include>
<include>ExtensionLite.java</include> <include>ExtensionLite.java</include>
@ -119,6 +120,7 @@
<include>FloatArrayList.java</include> <include>FloatArrayList.java</include>
<include>GeneratedMessageInfoFactory.java</include> <include>GeneratedMessageInfoFactory.java</include>
<include>GeneratedMessageLite.java</include> <include>GeneratedMessageLite.java</include>
<include>InlineMe.java</include>
<include>IntArrayList.java</include> <include>IntArrayList.java</include>
<include>Internal.java</include> <include>Internal.java</include>
<include>InvalidProtocolBufferException.java</include> <include>InvalidProtocolBufferException.java</include>

Loading…
Cancel
Save