From 0d5e3307b0f5ffe7623158aefbfabb034fdd88af Mon Sep 17 00:00:00 2001 From: ByteHamster Date: Mon, 2 Dec 2019 09:29:43 +0100 Subject: Making sure that activity is finished when deleting feed data --- .../java/de/test/antennapod/playback/PlaybackTest.java | 7 ++++--- .../java/de/test/antennapod/storage/AutoDownloadTest.java | 12 +++++++----- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/app/src/androidTest/java/de/test/antennapod/playback/PlaybackTest.java b/app/src/androidTest/java/de/test/antennapod/playback/PlaybackTest.java index 6ea8a1833..9732ac215 100644 --- a/app/src/androidTest/java/de/test/antennapod/playback/PlaybackTest.java +++ b/app/src/androidTest/java/de/test/antennapod/playback/PlaybackTest.java @@ -67,10 +67,11 @@ public abstract class PlaybackTest { @After public void tearDown() throws Exception { activityTestRule.finishActivity(); + Context context = InstrumentationRegistry.getInstrumentation().getTargetContext(); + context.stopService(new Intent(context, PlaybackService.class)); + Awaitility.await().atMost(5, TimeUnit.SECONDS).until(() -> !PlaybackService.isRunning); + InstrumentationRegistry.getInstrumentation().waitForIdleSync(); uiTestUtils.tearDown(); - // shut down playback service - context.sendBroadcast(new Intent(PlaybackService.ACTION_SHUTDOWN_PLAYBACK_SERVICE)); - Awaitility.await().until(() -> !PlaybackService.isRunning); } @Test diff --git a/app/src/androidTest/java/de/test/antennapod/storage/AutoDownloadTest.java b/app/src/androidTest/java/de/test/antennapod/storage/AutoDownloadTest.java index 471717393..3a4858e98 100644 --- a/app/src/androidTest/java/de/test/antennapod/storage/AutoDownloadTest.java +++ b/app/src/androidTest/java/de/test/antennapod/storage/AutoDownloadTest.java @@ -7,6 +7,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.test.core.app.ApplicationProvider; +import androidx.test.platform.app.InstrumentationRegistry; import de.test.antennapod.EspressoTestUtils; import org.awaitility.Awaitility; import org.awaitility.core.ConditionTimeoutException; @@ -15,6 +16,7 @@ import org.junit.Before; import org.junit.Test; import java.util.List; +import java.util.concurrent.TimeUnit; import de.danoeh.antennapod.core.ClientConfig; import de.danoeh.antennapod.core.DBTasksCallbacks; @@ -56,11 +58,11 @@ public class AutoDownloadTest { @After public void tearDown() throws Exception { - stubFeedsServer.tearDown(); ClientConfig.dbTasksCallbacks = dbTasksCallbacksOrig; - - context.sendBroadcast(new Intent(PlaybackService.ACTION_SHUTDOWN_PLAYBACK_SERVICE)); - Awaitility.await().until(() -> !PlaybackService.isRunning); + context.stopService(new Intent(context, PlaybackService.class)); + Awaitility.await().atMost(5, TimeUnit.SECONDS).until(() -> !PlaybackService.isRunning); + InstrumentationRegistry.getInstrumentation().waitForIdleSync(); + stubFeedsServer.tearDown(); } /** @@ -114,7 +116,7 @@ public class AutoDownloadTest { FeedMedia media = item.getMedia(); DBTasks.playMedia(context, media, false, true, true); Awaitility.await("episode is playing") - .atMost(1000, MILLISECONDS) + .atMost(2000, MILLISECONDS) .until(() -> item.equals(getCurrentlyPlaying())); } -- cgit v1.2.3