1
1
package com.allsoftdroid.feature.book_details.presentation.viewModel
2
2
3
+ import android.app.Application
3
4
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
4
5
import androidx.lifecycle.SavedStateHandle
5
6
import com.allsoftdroid.audiobook.feature.feature_audiobook_enhance_details.domain.usecase.FetchAdditionalBookDetailsUsecase
6
7
import com.allsoftdroid.audiobook.feature.feature_audiobook_enhance_details.domain.usecase.SearchBookDetailsUsecase
7
8
import com.allsoftdroid.common.base.store.downloader.DownloaderEventBus
8
9
import com.allsoftdroid.common.base.store.userAction.UserActionEventBus
9
10
import com.allsoftdroid.common.base.usecase.UseCaseHandler
11
+ import com.allsoftdroid.common.base.utils.LocalFilesForBook
10
12
import com.allsoftdroid.common.test.MainCoroutineRule
11
13
import com.allsoftdroid.common.test.getOrAwaitValue
12
14
import com.allsoftdroid.feature.book_details.domain.repository.BookDetailsSharedPreferenceRepository
@@ -21,6 +23,8 @@ import org.junit.Assert.assertThat
21
23
import org.junit.Before
22
24
import org.junit.Rule
23
25
import org.junit.Test
26
+ import org.mockito.Mock
27
+ import org.mockito.Mockito.mock
24
28
25
29
26
30
class BookDetailsViewModelTest {
@@ -45,6 +49,9 @@ class BookDetailsViewModelTest{
45
49
private lateinit var listenLaterUsecase: ListenLaterUsecase
46
50
private val bookId = " bookId"
47
51
52
+ @Mock
53
+ private val app: Application = mock(Application ::class .java)
54
+
48
55
@Before
49
56
fun setup (){
50
57
sharedPref = FakeBookDetailsSharedPref ()
@@ -74,7 +81,8 @@ class BookDetailsViewModelTest{
74
81
getFetchAdditionalBookDetailsUseCase = fetchAdditionBookDetailsUsecase,
75
82
getTrackListUsecase = trackListUsecase,
76
83
listenLaterUsecase = listenLaterUsecase,
77
- userActionEventStore = UserActionEventBus .getEventBusInstance()
84
+ userActionEventStore = UserActionEventBus .getEventBusInstance(),
85
+ localFilesForBook = LocalFilesForBook (app)
78
86
)
79
87
80
88
assertThat(bookDetailsViewModel.networkResponse.getOrAwaitValue().peekContent(),`is `(NetworkState .LOADING ))
0 commit comments