package com.example.barokahstore.ui.main import com.example.barokahstore.data.DataRepository import junit.framework.TestCase.assertEquals import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.flow import kotlinx.coroutines.test.runTest import org.junit.Test class MainScreenViewModelTest { @Test fun uiState_initiallyLoading() = runTest { val viewModel = MainScreenViewModel(FakeMyModelRepository()) assertEquals(viewModel.uiState.first(), MainScreenUiState.Loading) } @Test fun uiState_onItemSaved_isDisplayed() = runTest { val viewModel = MainScreenViewModel(FakeMyModelRepository()) assertEquals(viewModel.uiState.first(), MainScreenUiState.Loading) } } private class FakeMyModelRepository : DataRepository { override val data: Flow> = flow { emit(listOf("Sample")) } }