From 5efd53f1064b4b6f0d8b156034b0c21c0b6a5713 Mon Sep 17 00:00:00 2001 From: Martin Kretzschmar Date: Tue, 20 Feb 2024 07:03:39 -0800 Subject: [PATCH] Change `assertThat(array)` to allow arrays of non-nullable elements Though array types are covariant in Java, in Kotlin they are not and this change makes it easier to translate Java callers to Kotlin with J2KT. RELNOTES=n/a PiperOrigin-RevId: 608590844 --- .../java/com/google/common/truth/ObjectArraySubject.java | 5 ++--- .../java/com/google/common/truth/StandardSubjectBuilder.java | 2 +- core/src/main/java/com/google/common/truth/Truth.java | 3 ++- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/core/src/main/java/com/google/common/truth/ObjectArraySubject.java b/core/src/main/java/com/google/common/truth/ObjectArraySubject.java index daa287d26..bfba31476 100644 --- a/core/src/main/java/com/google/common/truth/ObjectArraySubject.java +++ b/core/src/main/java/com/google/common/truth/ObjectArraySubject.java @@ -26,10 +26,9 @@ * @author Christian Gruber */ public final class ObjectArraySubject extends AbstractArraySubject { - private final @Nullable T @Nullable [] actual; + private final T @Nullable [] actual; - ObjectArraySubject( - FailureMetadata metadata, @Nullable T @Nullable [] o, @Nullable String typeDescription) { + ObjectArraySubject(FailureMetadata metadata, T @Nullable [] o, @Nullable String typeDescription) { super(metadata, o, typeDescription); this.actual = o; } diff --git a/core/src/main/java/com/google/common/truth/StandardSubjectBuilder.java b/core/src/main/java/com/google/common/truth/StandardSubjectBuilder.java index 2babc9d0c..5413182f7 100644 --- a/core/src/main/java/com/google/common/truth/StandardSubjectBuilder.java +++ b/core/src/main/java/com/google/common/truth/StandardSubjectBuilder.java @@ -121,7 +121,7 @@ public final IterableSubject that(@Nullable Iterable actual) { } @SuppressWarnings("AvoidObjectArrays") - public final ObjectArraySubject that(@Nullable T @Nullable [] actual) { + public final ObjectArraySubject that(T @Nullable [] actual) { return new ObjectArraySubject<>(metadata(), actual, "array"); } diff --git a/core/src/main/java/com/google/common/truth/Truth.java b/core/src/main/java/com/google/common/truth/Truth.java index 5754b8df6..aa0775852 100644 --- a/core/src/main/java/com/google/common/truth/Truth.java +++ b/core/src/main/java/com/google/common/truth/Truth.java @@ -201,7 +201,8 @@ public static IterableSubject assertThat(@Nullable Iterable actual) { } @SuppressWarnings("AvoidObjectArrays") - public static ObjectArraySubject assertThat(@Nullable T @Nullable [] actual) { + public static ObjectArraySubject assertThat( + T @Nullable [] actual) { return assert_().that(actual); }