Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3528f212 authored by Alejandro Nijamkin's avatar Alejandro Nijamkin Committed by Ale Nijamkin
Browse files

Fixes failing CustomizationProviderTest.

The issue was the recent introduction of runBlocking { } calls in
ag/21396218. These block the logic on the current thread, causing unit
test runners to choke. Instead, we should use
runBlocking(CoroutineDispatcher) { } to make sure that the suspend
function yields back to the running test.

In addition to that change, we also needed to move the test onto an
UnconfinedTestDispatcher.

Fix: 269679515
Test: tests pass locally with atest
Change-Id: Iff661303af8791df7751fac7788681a105d47a75
parent 788f62ae
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -131,7 +131,7 @@ class CustomizationProvider :
            throw UnsupportedOperationException()
        }

        return runBlocking { insertSelection(values) }
        return runBlocking(mainDispatcher) { insertSelection(values) }
    }

    override fun query(
@@ -171,7 +171,7 @@ class CustomizationProvider :
            throw UnsupportedOperationException()
        }

        return runBlocking { deleteSelection(uri, selectionArgs) }
        return runBlocking(mainDispatcher) { deleteSelection(uri, selectionArgs) }
    }

    override fun call(method: String, arg: String?, extras: Bundle?): Bundle? {
+1 −2
Original line number Diff line number Diff line
@@ -62,7 +62,6 @@ import com.android.systemui.util.mockito.whenever
import com.android.systemui.util.settings.FakeSettings
import com.google.common.truth.Truth.assertThat
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.test.StandardTestDispatcher
import kotlinx.coroutines.test.TestScope
import kotlinx.coroutines.test.UnconfinedTestDispatcher
import kotlinx.coroutines.test.runTest
@@ -104,7 +103,7 @@ class CustomizationProviderTest : SysuiTestCase() {
        whenever(backgroundHandler.looper).thenReturn(TestableLooper.get(this).looper)

        underTest = CustomizationProvider()
        val testDispatcher = StandardTestDispatcher()
        val testDispatcher = UnconfinedTestDispatcher()
        testScope = TestScope(testDispatcher)
        val localUserSelectionManager =
            KeyguardQuickAffordanceLocalUserSelectionManager(