File tree Expand file tree Collapse file tree 1 file changed +35
-0
lines changed
app/src/test/kotlin/com/github/corentinc/httpcodescats/ui/screens/httpcodedetails Expand file tree Collapse file tree 1 file changed +35
-0
lines changed Original file line number Diff line number Diff line change
1
+ package com.github.corentinc.httpcodescats.ui.screens.httpcodedetails
2
+
3
+ import com.github.corentinc.httpcodescats.model.HttpCode
4
+ import com.github.corentinc.httpcodescats.unconfinedTestDispatcherProvider
5
+ import com.github.corentinc.httpcodescats.usecase.IHttpCodesUseCase
6
+ import io.mockk.coEvery
7
+ import io.mockk.mockk
8
+ import kotlinx.coroutines.test.runTest
9
+ import org.assertj.core.api.Assertions
10
+ import org.junit.jupiter.api.Test
11
+
12
+ class HttpCodeDetailViewModelTest {
13
+ private val dispatcherProvider = unconfinedTestDispatcherProvider()
14
+ private val httpCodesUseCase: IHttpCodesUseCase = mockk()
15
+
16
+ private val systemUnderTest = HttpCodeDetailViewModel (dispatcherProvider, httpCodesUseCase)
17
+
18
+ @Test
19
+ fun `test getHttpCodeDetails should return the result from the useCase and set loading to false` () = runTest {
20
+ // Given
21
+ val httpCode = 404
22
+ val expectedResult = mockk<HttpCode >()
23
+ coEvery {
24
+ httpCodesUseCase.getHttpCode(httpCode)
25
+ } returns expectedResult
26
+
27
+ // When
28
+ systemUnderTest.getHttpCodeDetails(httpCode)
29
+ val result = systemUnderTest.uiState.value
30
+
31
+ // Then
32
+ Assertions .assertThat(result.httpCode).isEqualTo(expectedResult)
33
+ Assertions .assertThat(result.isLoading).isFalse()
34
+ }
35
+ }
You can’t perform that action at this time.
0 commit comments