Added test for CustomTimer when app isn't visible
This commit is contained in:
parent
f46063eba1
commit
04f61c7516
1 changed files with 22 additions and 0 deletions
|
@ -2,6 +2,7 @@ package be.ugent.sel.studeez.timer_functional
|
||||||
|
|
||||||
import android.media.MediaPlayer
|
import android.media.MediaPlayer
|
||||||
import be.ugent.sel.studeez.data.SelectedTimerState
|
import be.ugent.sel.studeez.data.SelectedTimerState
|
||||||
|
import be.ugent.sel.studeez.data.local.models.timer_functional.FunctionalCustomTimer
|
||||||
import be.ugent.sel.studeez.data.local.models.timer_functional.FunctionalEndlessTimer
|
import be.ugent.sel.studeez.data.local.models.timer_functional.FunctionalEndlessTimer
|
||||||
import be.ugent.sel.studeez.data.local.models.timer_functional.FunctionalPomodoroTimer
|
import be.ugent.sel.studeez.data.local.models.timer_functional.FunctionalPomodoroTimer
|
||||||
import be.ugent.sel.studeez.data.local.models.timer_functional.FunctionalTimer
|
import be.ugent.sel.studeez.data.local.models.timer_functional.FunctionalTimer
|
||||||
|
@ -80,4 +81,25 @@ class InvisibleSessionManagerTest {
|
||||||
test.cancel()
|
test.cancel()
|
||||||
return@runTest
|
return@runTest
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun InvisibleCustomTimerTest() = runTest {
|
||||||
|
timerState.selectedTimer = FunctionalCustomTimer(5)
|
||||||
|
viewModel = SessionViewModel(timerState, mock())
|
||||||
|
InvisibleSessionManager.setParameters(viewModel, mediaPlayer)
|
||||||
|
|
||||||
|
val test = launch {
|
||||||
|
InvisibleSessionManager.updateTimer()
|
||||||
|
}
|
||||||
|
|
||||||
|
Assert.assertEquals(viewModel.getTimer().time.time, 5)
|
||||||
|
advanceTimeBy(1_000) // Start tikker
|
||||||
|
advanceTimeBy(4_000)
|
||||||
|
Assert.assertEquals(viewModel.getTimer().time.time, 1)
|
||||||
|
advanceTimeBy(1_000)
|
||||||
|
Assert.assertEquals(viewModel.getTimer().time.time, 0)
|
||||||
|
|
||||||
|
test.cancel()
|
||||||
|
return@runTest
|
||||||
|
}
|
||||||
}
|
}
|
Reference in a new issue