Add ByteString.isNotEmpty Kotlin extension function.
PiperOrigin-RevId: 552833973
diff --git a/java/kotlin/src/main/kotlin/com/google/protobuf/ByteStrings.kt b/java/kotlin/src/main/kotlin/com/google/protobuf/ByteStrings.kt
index 3befb3b..8211d89 100644
--- a/java/kotlin/src/main/kotlin/com/google/protobuf/ByteStrings.kt
+++ b/java/kotlin/src/main/kotlin/com/google/protobuf/ByteStrings.kt
@@ -34,8 +34,8 @@
import java.nio.ByteBuffer
/** Encodes this String into a sequence of UTF-8 bytes and returns the result as a [ByteString]. */
-fun String.toByteStringUtf8(): ByteString = ByteString.copyFromUtf8(this)
-// symmetric from ByteString.toStringUtf8()
+fun String.toByteStringUtf8(): ByteString =
+ ByteString.copyFromUtf8(this) // symmetric from ByteString.toStringUtf8()
/** Concatenates the given [ByteString] to this one. */
operator fun ByteString.plus(other: ByteString): ByteString = concat(other)
@@ -43,6 +43,9 @@
/** Gets the byte at [index]. */
operator fun ByteString.get(index: Int): Byte = byteAt(index)
+/** Checks if this is not empty. */
+fun ByteString.isNotEmpty(): Boolean = !isEmpty()
+
/** Returns a copy of this [ByteArray] as an immutable [ByteString]. */
fun ByteArray.toByteString(): ByteString = ByteString.copyFrom(this)
diff --git a/java/kotlin/src/test/kotlin/com/google/protobuf/ByteStringsTest.kt b/java/kotlin/src/test/kotlin/com/google/protobuf/ByteStringsTest.kt
index e944d38..9b8dbf5 100644
--- a/java/kotlin/src/test/kotlin/com/google/protobuf/ByteStringsTest.kt
+++ b/java/kotlin/src/test/kotlin/com/google/protobuf/ByteStringsTest.kt
@@ -63,6 +63,16 @@
}
@Test
+ fun isNotEmpty_returnsTrue_whenNotEmpty() {
+ assertThat("abc".toByteStringUtf8().isNotEmpty()).isTrue()
+ }
+
+ @Test
+ fun isNotEmpty_returnsFalse_whenEmpty() {
+ assertThat(ByteString.EMPTY.isNotEmpty()).isFalse()
+ }
+
+ @Test
fun byteAtBelowZero() {
val str = "abc".toByteStringUtf8()
assertFailsWith<IndexOutOfBoundsException> { str[-1] }