Fix nullability issues in testutils-runtime
Test: ./gradlew internal-testutils-runtime:lintDebug -PcheckUnknownNullness
Change-Id: I0f3128b7b8533cabd3643e3daa1540ff626ac62b
diff --git a/testutils/testutils-runtime/lint-baseline.xml b/testutils/testutils-runtime/lint-baseline.xml
index a8ec864..a548f21 100644
--- a/testutils/testutils-runtime/lint-baseline.xml
+++ b/testutils/testutils-runtime/lint-baseline.xml
@@ -23,158 +23,4 @@
column="13"/>
</issue>
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final ActivityTestRule<T> activityRule,"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="54"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final ActivityTestRule<T> activityRule,"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="54"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final Lifecycle.State state) throws Throwable {"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="55"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final Lifecycle.State state) throws Throwable {"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="55"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" public static void waitUntilState(final LifecycleOwner owner,"
- errorLine2=" ~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="64"
- column="45"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" public static void waitUntilState(final LifecycleOwner owner,"
- errorLine2=" ~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="64"
- column="45"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final ActivityTestRule<?> activityRule,"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="65"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final ActivityTestRule<?> activityRule,"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="65"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final Lifecycle.State state) throws Throwable {"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="66"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" final Lifecycle.State state) throws Throwable {"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/LifecycleOwnerUtils.java"
- line="66"
- column="19"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" public static void waitFor(final PollingCheckCondition condition) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/PollingCheck.java"
- line="75"
- column="38"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" public static void waitFor(final PollingCheckCondition condition) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/PollingCheck.java"
- line="75"
- column="38"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" public static void waitFor(long timeout, final PollingCheckCondition condition) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/PollingCheck.java"
- line="89"
- column="52"/>
- </issue>
-
- <issue
- id="UnknownNullness"
- message="Unknown nullability; explicitly declare as `@Nullable` or `@NonNull` to improve Kotlin interoperability; see https://android.github.io/kotlin-guides/interop.html#nullability-annotations"
- errorLine1=" public static void waitFor(long timeout, final PollingCheckCondition condition) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/testutils/PollingCheck.java"
- line="89"
- column="52"/>
- </issue>
-
</issues>
diff --git a/testutils/testutils-runtime/src/main/java/androidx/testutils/LifecycleOwnerUtils.java b/testutils/testutils-runtime/src/main/java/androidx/testutils/LifecycleOwnerUtils.java
index a5e524b..4acd19e 100644
--- a/testutils/testutils-runtime/src/main/java/androidx/testutils/LifecycleOwnerUtils.java
+++ b/testutils/testutils-runtime/src/main/java/androidx/testutils/LifecycleOwnerUtils.java
@@ -51,8 +51,8 @@
* suitable time period, it asserts that the current state equals the given state.
*/
public static <T extends Activity & LifecycleOwner> void waitUntilState(
- final ActivityTestRule<T> activityRule,
- final Lifecycle.State state) throws Throwable {
+ final @NonNull ActivityTestRule<T> activityRule,
+ final @NonNull Lifecycle.State state) throws Throwable {
waitUntilState(activityRule.getActivity(), activityRule, state);
}
@@ -61,9 +61,9 @@
* {@link androidx.lifecycle.Lifecycle.State}. If the owner has not hit that state within a
* suitable time period, it asserts that the current state equals the given state.
*/
- public static void waitUntilState(final LifecycleOwner owner,
- final ActivityTestRule<?> activityRule,
- final Lifecycle.State state) throws Throwable {
+ public static void waitUntilState(final @NonNull LifecycleOwner owner,
+ final @NonNull ActivityTestRule<?> activityRule,
+ final @NonNull Lifecycle.State state) throws Throwable {
final CountDownLatch latch = new CountDownLatch(1);
activityRule.runOnUiThread(new Runnable() {
@Override
diff --git a/testutils/testutils-runtime/src/main/java/androidx/testutils/PollingCheck.java b/testutils/testutils-runtime/src/main/java/androidx/testutils/PollingCheck.java
index 5e7e386..ac794b5 100644
--- a/testutils/testutils-runtime/src/main/java/androidx/testutils/PollingCheck.java
+++ b/testutils/testutils-runtime/src/main/java/androidx/testutils/PollingCheck.java
@@ -16,6 +16,8 @@
package androidx.testutils;
+import androidx.annotation.NonNull;
+
import org.junit.Assert;
/**
@@ -72,7 +74,7 @@
* Instantiate and start polling for a given condition with a default 3000ms timeout.
* @param condition The condition to check for success.
*/
- public static void waitFor(final PollingCheckCondition condition) {
+ public static void waitFor(final @NonNull PollingCheckCondition condition) {
new PollingCheck(DEFAULT_TIMEOUT) {
@Override
protected boolean check() {
@@ -86,7 +88,7 @@
* @param timeout Time out in ms
* @param condition The condition to check for success.
*/
- public static void waitFor(long timeout, final PollingCheckCondition condition) {
+ public static void waitFor(long timeout, final @NonNull PollingCheckCondition condition) {
new PollingCheck(timeout) {
@Override
protected boolean check() {