diff --git a/app/src/robolectricTest/java/org/fnives/test/showcase/ui/RobolectricAuthActivityInstrumentedTest.kt b/app/src/robolectricTest/java/org/fnives/test/showcase/ui/RobolectricAuthActivityInstrumentedTest.kt index 01e6399..f66736f 100644 --- a/app/src/robolectricTest/java/org/fnives/test/showcase/ui/RobolectricAuthActivityInstrumentedTest.kt +++ b/app/src/robolectricTest/java/org/fnives/test/showcase/ui/RobolectricAuthActivityInstrumentedTest.kt @@ -19,7 +19,7 @@ import org.fnives.test.showcase.testutils.idling.Disposable import org.fnives.test.showcase.testutils.idling.IdlingResourceDisposable import org.fnives.test.showcase.testutils.idling.MainDispatcherTestRule.Companion.advanceUntilIdleWithIdlingResources import org.fnives.test.showcase.testutils.idling.OkHttp3IdlingResource -import org.fnives.test.showcase.testutils.safeClose +import org.fnives.test.showcase.android.testutil.activity.safeClose import org.fnives.test.showcase.testutils.storage.TestDatabaseInitialization import org.fnives.test.showcase.ui.auth.AuthActivity import org.junit.After diff --git a/app/src/sharedTest/java/org/fnives/test/showcase/testutils/statesetup/SetupAuthenticationState.kt b/app/src/sharedTest/java/org/fnives/test/showcase/testutils/statesetup/SetupAuthenticationState.kt index 7ffc9dd..4e4369b 100644 --- a/app/src/sharedTest/java/org/fnives/test/showcase/testutils/statesetup/SetupAuthenticationState.kt +++ b/app/src/sharedTest/java/org/fnives/test/showcase/testutils/statesetup/SetupAuthenticationState.kt @@ -7,7 +7,7 @@ import androidx.test.runner.intent.IntentStubberRegistry import org.fnives.test.showcase.network.mockserver.MockServerScenarioSetup import org.fnives.test.showcase.network.mockserver.scenario.auth.AuthScenario import org.fnives.test.showcase.testutils.idling.MainDispatcherTestRule -import org.fnives.test.showcase.testutils.safeClose +import org.fnives.test.showcase.android.testutil.activity.safeClose import org.fnives.test.showcase.ui.auth.AuthActivity import org.fnives.test.showcase.ui.home.HomeRobot import org.fnives.test.showcase.ui.home.MainActivity diff --git a/app/src/sharedTest/java/org/fnives/test/showcase/ui/home/MainActivityInstrumentedTest.kt b/app/src/sharedTest/java/org/fnives/test/showcase/ui/home/MainActivityInstrumentedTest.kt index bc412e8..f1434d0 100644 --- a/app/src/sharedTest/java/org/fnives/test/showcase/ui/home/MainActivityInstrumentedTest.kt +++ b/app/src/sharedTest/java/org/fnives/test/showcase/ui/home/MainActivityInstrumentedTest.kt @@ -12,7 +12,7 @@ import org.fnives.test.showcase.testutils.idling.AsyncDiffUtilInstantTestRule import org.fnives.test.showcase.testutils.idling.MainDispatcherTestRule import org.fnives.test.showcase.testutils.idling.loopMainThreadFor import org.fnives.test.showcase.testutils.idling.loopMainThreadUntilIdleWithIdlingResources -import org.fnives.test.showcase.testutils.safeClose +import org.fnives.test.showcase.android.testutil.activity.safeClose import org.fnives.test.showcase.testutils.statesetup.SetupAuthenticationState.setupLogin import org.junit.After import org.junit.Before diff --git a/app/src/sharedTest/java/org/fnives/test/showcase/ui/login/AuthActivityInstrumentedTest.kt b/app/src/sharedTest/java/org/fnives/test/showcase/ui/login/AuthActivityInstrumentedTest.kt index a54e6f1..fa03d45 100644 --- a/app/src/sharedTest/java/org/fnives/test/showcase/ui/login/AuthActivityInstrumentedTest.kt +++ b/app/src/sharedTest/java/org/fnives/test/showcase/ui/login/AuthActivityInstrumentedTest.kt @@ -7,7 +7,7 @@ import org.fnives.test.showcase.R import org.fnives.test.showcase.network.mockserver.scenario.auth.AuthScenario import org.fnives.test.showcase.testutils.MockServerScenarioSetupResetingTestRule import org.fnives.test.showcase.testutils.idling.MainDispatcherTestRule -import org.fnives.test.showcase.testutils.safeClose +import org.fnives.test.showcase.android.testutil.activity.safeClose import org.fnives.test.showcase.ui.auth.AuthActivity import org.junit.After import org.junit.Before diff --git a/app/src/sharedTest/java/org/fnives/test/showcase/ui/splash/SplashActivityInstrumentedTest.kt b/app/src/sharedTest/java/org/fnives/test/showcase/ui/splash/SplashActivityInstrumentedTest.kt index cb12061..34317da 100644 --- a/app/src/sharedTest/java/org/fnives/test/showcase/ui/splash/SplashActivityInstrumentedTest.kt +++ b/app/src/sharedTest/java/org/fnives/test/showcase/ui/splash/SplashActivityInstrumentedTest.kt @@ -6,7 +6,7 @@ import androidx.test.espresso.intent.Intents import androidx.test.ext.junit.runners.AndroidJUnit4 import org.fnives.test.showcase.testutils.MockServerScenarioSetupResetingTestRule import org.fnives.test.showcase.testutils.idling.MainDispatcherTestRule -import org.fnives.test.showcase.testutils.safeClose +import org.fnives.test.showcase.android.testutil.activity.safeClose import org.fnives.test.showcase.testutils.statesetup.SetupAuthenticationState.setupLogin import org.fnives.test.showcase.testutils.statesetup.SetupAuthenticationState.setupLogout import org.junit.After diff --git a/gradlescripts/versions.gradle b/gradlescripts/versions.gradle index a75af32..ddf578c 100644 --- a/gradlescripts/versions.gradle +++ b/gradlescripts/versions.gradle @@ -21,7 +21,7 @@ project.ext { okhttp_version = "4.9.3" moshi_version = "1.13.0" - testing_androidx_code_version = "1.4.0" + androidx_test_version = "1.4.0" testing_androidx_junit_version = "1.1.3" arch_core_version = "2.1.0" testing_livedata_version = "1.2.0" diff --git a/test-util-android/build.gradle b/test-util-android/build.gradle index 83ea82d..2a8a148 100644 --- a/test-util-android/build.gradle +++ b/test-util-android/build.gradle @@ -31,4 +31,5 @@ android { dependencies { implementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version" + implementation "androidx.test:core:$androidx_test_version" } \ No newline at end of file diff --git a/app/src/sharedTest/java/org/fnives/test/showcase/testutils/ActivityScenarioExtensions.kt b/test-util-android/src/main/java/org/fnives/test/showcase/android/testutil/activity/ActivityScenarioExtensions.kt similarity index 61% rename from app/src/sharedTest/java/org/fnives/test/showcase/testutils/ActivityScenarioExtensions.kt rename to test-util-android/src/main/java/org/fnives/test/showcase/android/testutil/activity/ActivityScenarioExtensions.kt index 1bf914c..3016b96 100644 --- a/app/src/sharedTest/java/org/fnives/test/showcase/testutils/ActivityScenarioExtensions.kt +++ b/test-util-android/src/main/java/org/fnives/test/showcase/android/testutil/activity/ActivityScenarioExtensions.kt @@ -1,19 +1,24 @@ -package org.fnives.test.showcase.testutils +package org.fnives.test.showcase.android.testutil.activity import android.app.Activity import androidx.test.core.app.ActivityScenario +/** + * Workaround for issue: https://github.com/android/android-test/issues/676. + * + * Call this instead of ActivityScenario.close(). + */ fun ActivityScenario.safeClose() { workaroundForActivityScenarioCLoseLockingUp() close() } /** - * This should not be needed, we shouldn't use sleep ever. + * This should not be needed, we shouldn't use sleep basically ever. * However, it seems to be and issue described here: https://github.com/android/android-test/issues/676 * * If an activity is finished in code, the ActivityScenario.close() can hang 30 to 45 seconds. - * This sleeps let's the Activity finish it state change and unlocks the ActivityScenario. + * This sleep let's the Activity finish it's state change and unlocks the ActivityScenario. * * As soon as that issue is closed, this should be removed as well. */