From 257e1645622710a911243bc6872deacf350a9ca4 Mon Sep 17 00:00:00 2001 From: Kangping Dong Date: Fri, 10 May 2024 17:02:49 +0800 Subject: [PATCH] [Thread] fix Thread unit test failures It looks like SettingsUnitTests is not in presubmit and the existing Thread settings unit tests are failing in postsubmit. This commit fixes two small issues: 1. The default Thread enabled state in FakeThreadNetworkController and ThreadNetworkToggleController is not consistent 2. The executor in ThreadNetworkToggleControllerTest is reusing the main thread which could result in flaky as the callbacks are not guaranteed to be invoked before the API returns Bug: 339767488 Bug: 339145155 Test: atest SettingsUnitTests:com.android.settings.connecteddevice.threadnetwork.ThreadNetworkToggleControllerTest Change-Id: Id8b453cf6d7bef698d08dbf106e48250369d0832 --- .../threadnetwork/FakeThreadNetworkController.kt | 2 +- .../threadnetwork/ThreadNetworkToggleControllerTest.kt | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/FakeThreadNetworkController.kt b/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/FakeThreadNetworkController.kt index 8cb717dbb9b..e30226e25fb 100644 --- a/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/FakeThreadNetworkController.kt +++ b/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/FakeThreadNetworkController.kt @@ -22,7 +22,7 @@ import java.util.concurrent.Executor /** A fake implementation of [BaseThreadNetworkController] for unit tests. */ class FakeThreadNetworkController : BaseThreadNetworkController { - var isEnabled = true + var isEnabled = false private set var registeredStateCallback: ThreadNetworkController.StateCallback? = null private set diff --git a/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkToggleControllerTest.kt b/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkToggleControllerTest.kt index 329e7416d44..04ebc9252ef 100644 --- a/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkToggleControllerTest.kt +++ b/tests/unit/src/com/android/settings/connecteddevice/threadnetwork/ThreadNetworkToggleControllerTest.kt @@ -17,7 +17,6 @@ package com.android.settings.connecteddevice.threadnetwork import android.content.Context import android.platform.test.flag.junit.SetFlagsRule -import androidx.core.content.ContextCompat import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleOwner import androidx.preference.PreferenceManager @@ -51,7 +50,7 @@ class ThreadNetworkToggleControllerTest { fun setUp() { mSetFlagsRule.enableFlags(Flags.FLAG_THREAD_SETTINGS_ENABLED) context = spy(ApplicationProvider.getApplicationContext()) - executor = ContextCompat.getMainExecutor(context) + executor = Executor { runnable: Runnable -> runnable.run() } fakeThreadNetworkController = FakeThreadNetworkController() controller = newControllerWithThreadFeatureSupported(true) val preferenceManager = PreferenceManager(context)