mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 16:10:00 +00:00
Add test on TimelineEvents.ShowShieldDialog and TimelineEvents.HideShieldDialog
This commit is contained in:
+1
-1
@@ -75,4 +75,4 @@ internal fun TimelineItemEventRowShieldPreview() = ElementPreview {
|
|||||||
|
|
||||||
private fun aWarningShield() = MessageShield.AuthenticityNotGuaranteed(isCritical = false)
|
private fun aWarningShield() = MessageShield.AuthenticityNotGuaranteed(isCritical = false)
|
||||||
|
|
||||||
private fun aCriticalShield() = MessageShield.UnverifiedIdentity(isCritical = true)
|
internal fun aCriticalShield() = MessageShield.UnverifiedIdentity(isCritical = true)
|
||||||
|
|||||||
+21
@@ -24,6 +24,7 @@ import com.google.common.truth.Truth.assertThat
|
|||||||
import io.element.android.features.messages.impl.FakeMessagesNavigator
|
import io.element.android.features.messages.impl.FakeMessagesNavigator
|
||||||
import io.element.android.features.messages.impl.fixtures.aMessageEvent
|
import io.element.android.features.messages.impl.fixtures.aMessageEvent
|
||||||
import io.element.android.features.messages.impl.fixtures.aTimelineItemsFactory
|
import io.element.android.features.messages.impl.fixtures.aTimelineItemsFactory
|
||||||
|
import io.element.android.features.messages.impl.timeline.components.aCriticalShield
|
||||||
import io.element.android.features.messages.impl.timeline.factories.TimelineItemsFactory
|
import io.element.android.features.messages.impl.timeline.factories.TimelineItemsFactory
|
||||||
import io.element.android.features.messages.impl.timeline.model.NewEventState
|
import io.element.android.features.messages.impl.timeline.model.NewEventState
|
||||||
import io.element.android.features.messages.impl.timeline.model.TimelineItem
|
import io.element.android.features.messages.impl.timeline.model.TimelineItem
|
||||||
@@ -591,6 +592,26 @@ private const val FAKE_UNIQUE_ID_2 = "FAKE_UNIQUE_ID_2"
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `present - show shield hide shield`() = runTest {
|
||||||
|
val presenter = createTimelinePresenter()
|
||||||
|
val shield = aCriticalShield()
|
||||||
|
moleculeFlow(RecompositionMode.Immediate) {
|
||||||
|
presenter.present()
|
||||||
|
}.test {
|
||||||
|
val initialState = awaitFirstItem()
|
||||||
|
assertThat(initialState.messageShield).isNull()
|
||||||
|
initialState.eventSink(TimelineEvents.ShowShieldDialog(shield))
|
||||||
|
awaitItem().also { state ->
|
||||||
|
assertThat(state.messageShield).isEqualTo(shield)
|
||||||
|
state.eventSink(TimelineEvents.HideShieldDialog)
|
||||||
|
}
|
||||||
|
awaitItem().also { state ->
|
||||||
|
assertThat(state.messageShield).isNull()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `present - when room member info is loaded, read receipts info should be updated`() = runTest {
|
fun `present - when room member info is loaded, read receipts info should be updated`() = runTest {
|
||||||
val timeline = FakeTimeline(
|
val timeline = FakeTimeline(
|
||||||
|
|||||||
Reference in New Issue
Block a user