@@ -8,6 +8,7 @@ import com.mapbox.navigation.core.directions.session.RoutesObserver
88import com.mapbox.navigation.core.replay.history.ReplayHistorySession
99import com.mapbox.navigation.core.replay.history.ReplayHistorySessionOptions
1010import com.mapbox.navigation.core.replay.route.ReplayRouteSession
11+ import com.mapbox.navigation.core.replay.route.ReplayRouteSessionOptions
1112import com.mapbox.navigation.core.trip.session.TripSessionState
1213import com.mapbox.navigation.testing.LoggingFrontendTestRule
1314import com.mapbox.navigation.testing.MainCoroutineRule
@@ -44,12 +45,19 @@ class MapboxTripStarterTest {
4445 @get:Rule
4546 val coroutineRule = MainCoroutineRule ()
4647
47- private val replayRouteSession = mockk<ReplayRouteSession >(relaxed = true )
48- private var historyOptions = MutableStateFlow (ReplayHistorySessionOptions .Builder ().build())
48+ private var replayRouteOptions = MutableStateFlow (ReplayRouteSessionOptions .Builder ().build())
49+ private val replayRouteSession = mockk<ReplayRouteSession >(relaxed = true ) {
50+ every { getOptions() } returns replayRouteOptions
51+ every { setOptions(any()) } answers {
52+ replayRouteOptions.value = firstArg()
53+ this @mockk
54+ }
55+ }
56+ private var replayHistoryOptions = MutableStateFlow (ReplayHistorySessionOptions .Builder ().build())
4957 private val replayHistorySession = mockk<ReplayHistorySession >(relaxed = true ) {
50- every { getOptions() } returns historyOptions
58+ every { getOptions() } returns replayHistoryOptions
5159 every { setOptions(any()) } answers {
52- historyOptions .value = firstArg()
60+ replayHistoryOptions .value = firstArg()
5361 }
5462 }
5563
@@ -192,20 +200,20 @@ class MapboxTripStarterTest {
192200
193201 val mapboxNavigation = mockMapboxNavigation()
194202 sut.enableReplayRoute()
195- sut.onAttached(mapboxNavigation)
196- val nextOptions = sut.getReplayRouteSessionOptions().toBuilder()
203+ val customOptions = sut.getReplayRouteSessionOptions().toBuilder()
197204 .decodeMinDistance(Double .MAX_VALUE )
198205 .build()
199- sut.enableReplayRoute(nextOptions)
206+ sut.enableReplayRoute(customOptions)
207+ sut.onAttached(mapboxNavigation)
200208
201209 verifyOrder {
202- replayRouteSession.setOptions(any() )
210+ replayRouteSession.setOptions(customOptions )
203211 replayRouteSession.onAttached(mapboxNavigation)
212+ }
213+ verify(exactly = 0 ) {
214+ mapboxNavigation.stopTripSession()
204215 replayRouteSession.onDetached(mapboxNavigation)
205- replayRouteSession.setOptions(nextOptions)
206- replayRouteSession.onAttached(mapboxNavigation)
207216 }
208- verify(exactly = 0 ) { mapboxNavigation.stopTripSession() }
209217 }
210218
211219 @Test
@@ -219,7 +227,6 @@ class MapboxTripStarterTest {
219227 sut.onDetached(mapboxNavigation)
220228
221229 verifyOrder {
222- replayRouteSession.onDetached(mapboxNavigation)
223230 replayHistorySession.onDetached(mapboxNavigation)
224231 replayRouteSession.onAttached(mapboxNavigation)
225232 replayRouteSession.onDetached(mapboxNavigation)
@@ -283,17 +290,15 @@ class MapboxTripStarterTest {
283290 every { PermissionsManager .areLocationPermissionsGranted(any()) } returns false
284291
285292 val mapboxNavigation = mockMapboxNavigation()
286- sut.enableReplayHistory()
287- sut.onAttached(mapboxNavigation)
288293 val nextOptions = sut.getReplayHistorySessionOptions().toBuilder()
289294 .enableSetRoute(false )
290295 .build()
291296 sut.enableReplayHistory(nextOptions)
297+ sut.onAttached(mapboxNavigation)
292298
293299 verifyOrder {
294- replayHistorySession.setOptions(any())
295- replayHistorySession.onAttached(mapboxNavigation)
296300 replayHistorySession.setOptions(nextOptions)
301+ replayHistorySession.onAttached(mapboxNavigation)
297302 }
298303 verify(exactly = 0 ) {
299304 mapboxNavigation.stopTripSession()
0 commit comments