From cc770d8bb4d53cc1cace6c0f258908a1e6d68357 Mon Sep 17 00:00:00 2001 From: Dennis Guse Date: Thu, 5 Sep 2019 07:29:48 +0200 Subject: [PATCH] Fixed (some) AnnoucementPeriodicTask[Factory] tests. --- .../services/TrackRecordingServiceTest.java | 13 ++++++------- .../AnnouncementPeriodicTaskFactoryTest.java | 14 ++++++++++++++ .../tasks/AnnouncementPeriodicTaskTest.java | 16 +++++++++++++--- 3 files changed, 33 insertions(+), 10 deletions(-) diff --git a/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTest.java b/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTest.java index 08428640e..52f8b91b3 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/services/TrackRecordingServiceTest.java @@ -351,8 +351,7 @@ public class TrackRecordingServiceTest { Assert.assertFalse(service.isRecording()); /* - * Ending the current track when there is no recording should not result in - * any error. + * Ending the current track when there is no recording should not result in any error. */ service.endCurrentTrack(); @@ -381,12 +380,12 @@ public class TrackRecordingServiceTest { @MediumTest @Test public void testInsertStatisticsMarker_validLocation() throws Exception { - Track track = createDummyTrack(trackId, -1L, true); + createDummyTrack(trackId, -1L, true); ITrackRecordingService service = ((ITrackRecordingService) mServiceRule.bindService(createStartIntent())); Assert.assertTrue(service.isRecording()); Assert.assertFalse(service.isPaused()); - insertLocation(track, service); + insertLocation(service); long waypointId1 = service.insertWaypoint(WaypointCreationRequest.DEFAULT_STATISTICS); Assert.assertNotEquals(-1L, waypointId1); @@ -419,11 +418,11 @@ public class TrackRecordingServiceTest { @MediumTest @Test public void testInsertWaypointMarker_validWaypoint() throws Exception { - Track track = createDummyTrack(trackId, -1L, true); + createDummyTrack(trackId, -1L, true); ITrackRecordingService service = ((ITrackRecordingService) mServiceRule.bindService(createStartIntent())); Assert.assertTrue(service.isRecording()); - insertLocation(track, service); + insertLocation(service); long waypointId = service.insertWaypoint(WaypointCreationRequest.DEFAULT_WAYPOINT); Assert.assertNotEquals(-1L, waypointId); @@ -628,7 +627,7 @@ public class TrackRecordingServiceTest { /** * Inserts a location and waits for 100ms. */ - private void insertLocation(Track track, ITrackRecordingService trackRecordingService) throws InterruptedException { + private void insertLocation(ITrackRecordingService trackRecordingService) throws InterruptedException { Location location = new Location("gps"); location.setLongitude(35.0f); location.setLatitude(45.0f); diff --git a/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskFactoryTest.java b/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskFactoryTest.java index 60618f806..98063baeb 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskFactoryTest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskFactoryTest.java @@ -17,11 +17,14 @@ package de.dennisguse.opentracks.services.tasks; import android.content.Context; +import android.os.Looper; import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; +import org.junit.AfterClass; import org.junit.Assert; +import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; @@ -36,6 +39,17 @@ public class AnnouncementPeriodicTaskFactoryTest { private Context context = ApplicationProvider.getApplicationContext(); + @BeforeClass + public static void preSetUp() { + // Prepare looper for Android's message queue + Looper.prepare(); + } + + @AfterClass + public static void finalTearDown() { + if (Looper.myLooper() != null) Looper.myLooper().quit(); + } + @Test public void testCreate() { PeriodicTaskFactory factory = new AnnouncementPeriodicTaskFactory(); diff --git a/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskTest.java b/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskTest.java index f39652e1b..ac9ae027c 100644 --- a/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskTest.java +++ b/src/androidTest/java/de/dennisguse/opentracks/services/tasks/AnnouncementPeriodicTaskTest.java @@ -16,6 +16,7 @@ package de.dennisguse.opentracks.services.tasks; import android.content.Context; +import android.os.Looper; import android.speech.tts.TextToSpeech; import android.speech.tts.TextToSpeech.OnInitListener; import android.speech.tts.TextToSpeech.OnUtteranceCompletedListener; @@ -25,8 +26,10 @@ import android.telephony.TelephonyManager; import androidx.test.core.app.ApplicationProvider; import org.junit.After; +import org.junit.AfterClass; import org.junit.Assert; import org.junit.Before; +import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.ArgumentCaptor; @@ -73,9 +76,16 @@ public class AnnouncementPeriodicTaskTest { @Mock private TextToSpeechInterface tts; -// @UsesMocks({ -// StringUtils.class, -// }) + @BeforeClass + public static void preSetUp() { + // Prepare looper for Android's message queue + Looper.prepare(); + } + + @AfterClass + public static void finalTearDown() { + if (Looper.myLooper() != null) Looper.myLooper().quit(); + } @Before public void setUp() throws Exception {