Skip to content

Commit

Permalink
test
Browse files Browse the repository at this point in the history
  • Loading branch information
MohamadJaara committed Jul 25, 2024
1 parent be9c46f commit fa9591f
Showing 1 changed file with 18 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,19 @@
*/
package com.wire.android.ui.home.messagecomposer.attachments

import com.wire.android.config.CoroutineTestExtension
import com.wire.kalium.logic.configuration.FileSharingStatus
import com.wire.kalium.logic.feature.user.IsFileSharingEnabledUseCase
import io.mockk.MockKAnnotations
import io.mockk.coVerify
import io.mockk.every
import io.mockk.impl.annotations.MockK
import org.junit.jupiter.api.Assertions
import org.junit.jupiter.api.Assertions.assertFalse
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.extension.ExtendWith

@ExtendWith(CoroutineTestExtension::class)
class IsFileSharingEnabledViewModelTest {

@Test
Expand All @@ -33,7 +38,7 @@ class IsFileSharingEnabledViewModelTest {
withFileSharingStatus(FileSharingStatus.Value.EnabledAll)
}

Assertions.assertTrue(viewModel.isFileSharingEnabled())
assertTrue(viewModel.isFileSharingEnabled())
coVerify(exactly = 1) {
arrangement.isFileSharingEnabledUseCase()
}
Expand All @@ -45,7 +50,7 @@ class IsFileSharingEnabledViewModelTest {
withFileSharingStatus(FileSharingStatus.Value.Disabled)
}

Assertions.assertFalse(viewModel.isFileSharingEnabled())
assertFalse(viewModel.isFileSharingEnabled())
coVerify(exactly = 1) {
arrangement.isFileSharingEnabledUseCase()
}
Expand All @@ -57,7 +62,7 @@ class IsFileSharingEnabledViewModelTest {
withFileSharingStatus(FileSharingStatus.Value.EnabledSome(emptyList()))
}

Assertions.assertTrue(viewModel.isFileSharingEnabled())
assertTrue(viewModel.isFileSharingEnabled())
coVerify(exactly = 1) {
arrangement.isFileSharingEnabledUseCase()
}
Expand All @@ -67,9 +72,12 @@ class IsFileSharingEnabledViewModelTest {

@MockK
lateinit var isFileSharingEnabledUseCase: IsFileSharingEnabledUseCase
private val viewModel: IsFileSharingEnabledViewModel = IsFileSharingEnabledViewModelImpl(
isFileSharingEnabledUseCase
)

private lateinit var viewModel: IsFileSharingEnabledViewModel

init {
MockKAnnotations.init(this, relaxUnitFun = true)
}

fun withFileSharingStatus(result: FileSharingStatus.Value) = apply {
every { isFileSharingEnabledUseCase() } returns FileSharingStatus(
Expand All @@ -79,6 +87,9 @@ class IsFileSharingEnabledViewModelTest {
}

fun arrange(block: Arrangement.() -> Unit) = apply(block).let {
viewModel = IsFileSharingEnabledViewModelImpl(
isFileSharingEnabledUseCase
)
this to viewModel
}
}
Expand Down

0 comments on commit fa9591f

Please sign in to comment.