Skip to content

Commit a278e83

Browse files
author
Ali Rezaei
committed
Fix unit tests
1 parent 925c5ef commit a278e83

File tree

2 files changed

+18
-5
lines changed

2 files changed

+18
-5
lines changed

app/src/test/java/com/android/sample/app/DashboardViewModelTest.kt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,8 @@ import org.junit.Test
2222
import org.junit.rules.TestRule
2323
import org.mockito.ArgumentMatchers.anyInt
2424
import org.mockito.Mock
25-
import org.mockito.Mockito
2625
import org.mockito.Mockito.`when`
2726
import org.mockito.MockitoAnnotations
28-
import java.lang.RuntimeException
2927

3028
@ExperimentalCoroutinesApi
3129
class DashboardViewModelTest {

app/src/test/java/com/android/sample/app/SectionViewModelTest.kt

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,18 @@ package com.android.sample.app
22

33
import android.content.Context
44
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
5+
import androidx.lifecycle.SavedStateHandle
56
import com.android.sample.app.database.section.SectionDao
67
import com.android.sample.app.domain.Link
78
import com.android.sample.app.domain.Section
89
import com.android.sample.app.network.ApiService
910
import com.android.sample.app.repository.SectionRepository
11+
import com.android.sample.app.ui.Screens
1012
import com.android.sample.app.util.ViewState
1113
import com.android.sample.app.util.isNetworkAvailable
1214
import com.android.sample.app.viewmodel.SectionViewModel
1315
import io.mockk.every
16+
import io.mockk.mockk
1417
import io.mockk.mockkStatic
1518
import kotlinx.coroutines.Dispatchers
1619
import kotlinx.coroutines.ExperimentalCoroutinesApi
@@ -63,7 +66,11 @@ class SectionViewModelTest {
6366
}
6467
val repository = SectionRepository(dao, api, context, Dispatchers.Main)
6568
testCoroutineRule.pauseDispatcher()
66-
val viewModel = SectionViewModel(repository, Link("id", "title", "href"))
69+
val savedStateHandle = mockk<SavedStateHandle>(relaxed = true)
70+
every {
71+
savedStateHandle.get<Link>(Screens.LINK)
72+
} returns Link("id", "title", "href")
73+
val viewModel = SectionViewModel(repository, savedStateHandle)
6774
assertThat(viewModel.stateFlow.value, `is`(ViewState.Loading))
6875

6976
testCoroutineRule.resumeDispatcher()
@@ -83,7 +90,11 @@ class SectionViewModelTest {
8390
}
8491
val repository = SectionRepository(dao, api, context, Dispatchers.Main)
8592
testCoroutineRule.pauseDispatcher()
86-
val viewModel = SectionViewModel(repository, Link("id", "string", "href"))
93+
val savedStateHandle = mockk<SavedStateHandle>(relaxed = true)
94+
every {
95+
savedStateHandle.get<Link>(Screens.LINK)
96+
} returns Link("id", "title", "href")
97+
val viewModel = SectionViewModel(repository, savedStateHandle)
8798
assertThat(viewModel.stateFlow.value, `is`(ViewState.Loading))
8899

89100
testCoroutineRule.resumeDispatcher()
@@ -106,7 +117,11 @@ class SectionViewModelTest {
106117
}
107118
val repository = SectionRepository(dao, api, context, Dispatchers.Main)
108119
testCoroutineRule.pauseDispatcher()
109-
val viewModel = SectionViewModel(repository, Link("id", "title", "href"))
120+
val savedStateHandle = mockk<SavedStateHandle>(relaxed = true)
121+
every {
122+
savedStateHandle.get<Link>(Screens.LINK)
123+
} returns Link("id", "title", "href")
124+
val viewModel = SectionViewModel(repository, savedStateHandle)
110125
assertThat(viewModel.stateFlow.value, `is`(ViewState.Loading))
111126

112127
testCoroutineRule.resumeDispatcher()

0 commit comments

Comments
 (0)