add unit test
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
package com.example.hpostesting
|
||||
|
||||
import android.content.Context
|
||||
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
|
||||
import com.example.hpostesting.data.dao.HemoCubeDao
|
||||
import com.example.hpostesting.data.repository.Repository
|
||||
import com.example.hpostesting.presentation.deviceinfo.DeviceViewModel
|
||||
import org.junit.Before
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
import org.mockito.Mock
|
||||
import org.mockito.junit.MockitoJUnitRunner
|
||||
|
||||
@RunWith(MockitoJUnitRunner::class)
|
||||
class DeviceViewModelTest {
|
||||
|
||||
@get:Rule
|
||||
val rule = InstantTaskExecutorRule()
|
||||
|
||||
@Mock
|
||||
private lateinit var hemoCubeDao: HemoCubeDao
|
||||
|
||||
@Mock
|
||||
private lateinit var repository: Repository
|
||||
|
||||
@Mock
|
||||
private lateinit var context: Context
|
||||
|
||||
private lateinit var viewModel: DeviceViewModel
|
||||
|
||||
@Before
|
||||
fun setup() {
|
||||
viewModel = DeviceViewModel(hemoCubeDao, repository)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `test initial state`() {
|
||||
assert(!viewModel.isServiceConnected)
|
||||
assert(!viewModel.progressBar.value!!)
|
||||
assert(viewModel.messages.value == null)
|
||||
// assert(viewModel.allUserData == hemoCubeDao.getAll())
|
||||
// assert(viewModel.deviceData.value == null)
|
||||
// assert(viewModel.networkStatusLiveData.value == false)
|
||||
assert(viewModel.fireBaseUpload.value == null)
|
||||
}
|
||||
|
||||
// Add more tests for other functions and interactions as needed
|
||||
}
|
||||
Reference in New Issue
Block a user