mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-02 12:07:28 +00:00
IncomingVerificationViewEvents -> IncomingVerificationViewEvent
This commit is contained in:
+6
-6
@@ -108,18 +108,18 @@ class IncomingVerificationPresenter(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun handleEvent(event: IncomingVerificationViewEvents) {
|
fun handleEvent(event: IncomingVerificationViewEvent) {
|
||||||
Timber.d("Verification user action: ${event::class.simpleName}")
|
Timber.d("Verification user action: ${event::class.simpleName}")
|
||||||
when (event) {
|
when (event) {
|
||||||
IncomingVerificationViewEvents.StartVerification ->
|
IncomingVerificationViewEvent.StartVerification ->
|
||||||
stateAndDispatch.dispatchAction(StateMachineEvent.AcceptIncomingRequest)
|
stateAndDispatch.dispatchAction(StateMachineEvent.AcceptIncomingRequest)
|
||||||
IncomingVerificationViewEvents.IgnoreVerification ->
|
IncomingVerificationViewEvent.IgnoreVerification ->
|
||||||
navigator.onFinish()
|
navigator.onFinish()
|
||||||
IncomingVerificationViewEvents.ConfirmVerification ->
|
IncomingVerificationViewEvent.ConfirmVerification ->
|
||||||
stateAndDispatch.dispatchAction(StateMachineEvent.AcceptChallenge)
|
stateAndDispatch.dispatchAction(StateMachineEvent.AcceptChallenge)
|
||||||
IncomingVerificationViewEvents.DeclineVerification ->
|
IncomingVerificationViewEvent.DeclineVerification ->
|
||||||
stateAndDispatch.dispatchAction(StateMachineEvent.DeclineChallenge)
|
stateAndDispatch.dispatchAction(StateMachineEvent.DeclineChallenge)
|
||||||
IncomingVerificationViewEvents.GoBack -> {
|
IncomingVerificationViewEvent.GoBack -> {
|
||||||
when (val verificationStep = step) {
|
when (val verificationStep = step) {
|
||||||
is Step.Initial -> if (verificationStep.isWaiting) {
|
is Step.Initial -> if (verificationStep.isWaiting) {
|
||||||
stateAndDispatch.dispatchAction(StateMachineEvent.Cancel)
|
stateAndDispatch.dispatchAction(StateMachineEvent.Cancel)
|
||||||
|
|||||||
+1
-1
@@ -16,7 +16,7 @@ import io.element.android.libraries.matrix.api.verification.VerificationRequest
|
|||||||
data class IncomingVerificationState(
|
data class IncomingVerificationState(
|
||||||
val step: Step,
|
val step: Step,
|
||||||
val request: VerificationRequest.Incoming,
|
val request: VerificationRequest.Incoming,
|
||||||
val eventSink: (IncomingVerificationViewEvents) -> Unit,
|
val eventSink: (IncomingVerificationViewEvent) -> Unit,
|
||||||
) {
|
) {
|
||||||
@Stable
|
@Stable
|
||||||
sealed interface Step {
|
sealed interface Step {
|
||||||
|
|||||||
+1
-1
@@ -87,7 +87,7 @@ internal fun anIncomingUserVerificationRequest() = VerificationRequest.Incoming.
|
|||||||
internal fun anIncomingVerificationState(
|
internal fun anIncomingVerificationState(
|
||||||
step: Step = aStepInitial(),
|
step: Step = aStepInitial(),
|
||||||
verificationRequest: VerificationRequest.Incoming = anIncomingSessionVerificationRequest(),
|
verificationRequest: VerificationRequest.Incoming = anIncomingSessionVerificationRequest(),
|
||||||
eventSink: (IncomingVerificationViewEvents) -> Unit = {},
|
eventSink: (IncomingVerificationViewEvent) -> Unit = {},
|
||||||
) = IncomingVerificationState(
|
) = IncomingVerificationState(
|
||||||
step = step,
|
step = step,
|
||||||
request = verificationRequest,
|
request = verificationRequest,
|
||||||
|
|||||||
+7
-7
@@ -62,7 +62,7 @@ fun IncomingVerificationView(
|
|||||||
val step = state.step
|
val step = state.step
|
||||||
|
|
||||||
BackHandler {
|
BackHandler {
|
||||||
state.eventSink(IncomingVerificationViewEvents.GoBack)
|
state.eventSink(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
HeaderFooterPage(
|
HeaderFooterPage(
|
||||||
modifier = modifier,
|
modifier = modifier,
|
||||||
@@ -70,7 +70,7 @@ fun IncomingVerificationView(
|
|||||||
TopAppBar(
|
TopAppBar(
|
||||||
title = {},
|
title = {},
|
||||||
navigationIcon = {
|
navigationIcon = {
|
||||||
BackButton(onClick = { state.eventSink(IncomingVerificationViewEvents.GoBack) })
|
BackButton(onClick = { state.eventSink(IncomingVerificationViewEvent.GoBack) })
|
||||||
},
|
},
|
||||||
colors = topAppBarColors(containerColor = Color.Transparent),
|
colors = topAppBarColors(containerColor = Color.Transparent),
|
||||||
)
|
)
|
||||||
@@ -217,13 +217,13 @@ private fun IncomingVerificationBottomMenu(
|
|||||||
text = stringResource(CommonStrings.action_start_verification),
|
text = stringResource(CommonStrings.action_start_verification),
|
||||||
enabled = !step.isWaiting,
|
enabled = !step.isWaiting,
|
||||||
showProgress = step.isWaiting,
|
showProgress = step.isWaiting,
|
||||||
onClick = { eventSink(IncomingVerificationViewEvents.StartVerification) },
|
onClick = { eventSink(IncomingVerificationViewEvent.StartVerification) },
|
||||||
)
|
)
|
||||||
TextButton(
|
TextButton(
|
||||||
modifier = Modifier.fillMaxWidth(),
|
modifier = Modifier.fillMaxWidth(),
|
||||||
text = stringResource(CommonStrings.action_ignore),
|
text = stringResource(CommonStrings.action_ignore),
|
||||||
enabled = !step.isWaiting,
|
enabled = !step.isWaiting,
|
||||||
onClick = { eventSink(IncomingVerificationViewEvents.IgnoreVerification) },
|
onClick = { eventSink(IncomingVerificationViewEvent.IgnoreVerification) },
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -235,14 +235,14 @@ private fun IncomingVerificationBottomMenu(
|
|||||||
enabled = !step.isWaiting,
|
enabled = !step.isWaiting,
|
||||||
showProgress = step.isWaiting,
|
showProgress = step.isWaiting,
|
||||||
onClick = {
|
onClick = {
|
||||||
eventSink(IncomingVerificationViewEvents.ConfirmVerification)
|
eventSink(IncomingVerificationViewEvent.ConfirmVerification)
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
TextButton(
|
TextButton(
|
||||||
modifier = Modifier.fillMaxWidth(),
|
modifier = Modifier.fillMaxWidth(),
|
||||||
text = stringResource(R.string.screen_session_verification_they_dont_match),
|
text = stringResource(R.string.screen_session_verification_they_dont_match),
|
||||||
enabled = !step.isWaiting,
|
enabled = !step.isWaiting,
|
||||||
onClick = { eventSink(IncomingVerificationViewEvents.DeclineVerification) },
|
onClick = { eventSink(IncomingVerificationViewEvent.DeclineVerification) },
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -254,7 +254,7 @@ private fun IncomingVerificationBottomMenu(
|
|||||||
modifier = Modifier.fillMaxWidth(),
|
modifier = Modifier.fillMaxWidth(),
|
||||||
text = stringResource(CommonStrings.action_done),
|
text = stringResource(CommonStrings.action_done),
|
||||||
onClick = {
|
onClick = {
|
||||||
eventSink(IncomingVerificationViewEvents.GoBack)
|
eventSink(IncomingVerificationViewEvent.GoBack)
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+6
-6
@@ -8,10 +8,10 @@
|
|||||||
|
|
||||||
package io.element.android.features.verifysession.impl.incoming
|
package io.element.android.features.verifysession.impl.incoming
|
||||||
|
|
||||||
sealed interface IncomingVerificationViewEvents {
|
sealed interface IncomingVerificationViewEvent {
|
||||||
data object GoBack : IncomingVerificationViewEvents
|
data object GoBack : IncomingVerificationViewEvent
|
||||||
data object StartVerification : IncomingVerificationViewEvents
|
data object StartVerification : IncomingVerificationViewEvent
|
||||||
data object IgnoreVerification : IncomingVerificationViewEvents
|
data object IgnoreVerification : IncomingVerificationViewEvent
|
||||||
data object ConfirmVerification : IncomingVerificationViewEvents
|
data object ConfirmVerification : IncomingVerificationViewEvent
|
||||||
data object DeclineVerification : IncomingVerificationViewEvents
|
data object DeclineVerification : IncomingVerificationViewEvent
|
||||||
}
|
}
|
||||||
+7
-7
@@ -72,7 +72,7 @@ class IncomingVerificationPresenterTest {
|
|||||||
acknowledgeVerificationRequestLambda.assertions().isCalledOnce().with(value(anIncomingSessionVerificationRequest))
|
acknowledgeVerificationRequestLambda.assertions().isCalledOnce().with(value(anIncomingSessionVerificationRequest))
|
||||||
acceptVerificationRequestLambda.assertions().isNeverCalled()
|
acceptVerificationRequestLambda.assertions().isNeverCalled()
|
||||||
// User accept the incoming verification
|
// User accept the incoming verification
|
||||||
initialState.eventSink(IncomingVerificationViewEvents.StartVerification)
|
initialState.eventSink(IncomingVerificationViewEvent.StartVerification)
|
||||||
skipItems(1)
|
skipItems(1)
|
||||||
val initialWaitingState = awaitItem()
|
val initialWaitingState = awaitItem()
|
||||||
assertThat((initialWaitingState.step as IncomingVerificationState.Step.Initial).isWaiting).isTrue()
|
assertThat((initialWaitingState.step as IncomingVerificationState.Step.Initial).isWaiting).isTrue()
|
||||||
@@ -96,7 +96,7 @@ class IncomingVerificationPresenterTest {
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
// User claims that the emoji matches
|
// User claims that the emoji matches
|
||||||
emojiState.eventSink(IncomingVerificationViewEvents.ConfirmVerification)
|
emojiState.eventSink(IncomingVerificationViewEvent.ConfirmVerification)
|
||||||
val emojiWaitingItem = awaitItem()
|
val emojiWaitingItem = awaitItem()
|
||||||
assertThat((emojiWaitingItem.step as IncomingVerificationState.Step.Verifying).isWaiting).isTrue()
|
assertThat((emojiWaitingItem.step as IncomingVerificationState.Step.Verifying).isWaiting).isTrue()
|
||||||
advanceUntilIdle()
|
advanceUntilIdle()
|
||||||
@@ -141,7 +141,7 @@ class IncomingVerificationPresenterTest {
|
|||||||
acknowledgeVerificationRequestLambda.assertions().isCalledOnce().with(value(anIncomingSessionVerificationRequest))
|
acknowledgeVerificationRequestLambda.assertions().isCalledOnce().with(value(anIncomingSessionVerificationRequest))
|
||||||
acceptVerificationRequestLambda.assertions().isNeverCalled()
|
acceptVerificationRequestLambda.assertions().isNeverCalled()
|
||||||
// User accept the incoming verification
|
// User accept the incoming verification
|
||||||
initialState.eventSink(IncomingVerificationViewEvents.StartVerification)
|
initialState.eventSink(IncomingVerificationViewEvent.StartVerification)
|
||||||
skipItems(1)
|
skipItems(1)
|
||||||
val initialWaitingState = awaitItem()
|
val initialWaitingState = awaitItem()
|
||||||
assertThat((initialWaitingState.step as IncomingVerificationState.Step.Initial).isWaiting).isTrue()
|
assertThat((initialWaitingState.step as IncomingVerificationState.Step.Initial).isWaiting).isTrue()
|
||||||
@@ -159,7 +159,7 @@ class IncomingVerificationPresenterTest {
|
|||||||
)
|
)
|
||||||
val emojiState = awaitItem()
|
val emojiState = awaitItem()
|
||||||
// User claims that the emojis do not match
|
// User claims that the emojis do not match
|
||||||
emojiState.eventSink(IncomingVerificationViewEvents.DeclineVerification)
|
emojiState.eventSink(IncomingVerificationViewEvent.DeclineVerification)
|
||||||
val emojiWaitingItem = awaitItem()
|
val emojiWaitingItem = awaitItem()
|
||||||
assertThat((emojiWaitingItem.step as IncomingVerificationState.Step.Verifying).isWaiting).isTrue()
|
assertThat((emojiWaitingItem.step as IncomingVerificationState.Step.Verifying).isWaiting).isTrue()
|
||||||
advanceUntilIdle()
|
advanceUntilIdle()
|
||||||
@@ -241,7 +241,7 @@ class IncomingVerificationPresenterTest {
|
|||||||
acknowledgeVerificationRequestLambda.assertions().isCalledOnce().with(value(anIncomingSessionVerificationRequest))
|
acknowledgeVerificationRequestLambda.assertions().isCalledOnce().with(value(anIncomingSessionVerificationRequest))
|
||||||
acceptVerificationRequestLambda.assertions().isNeverCalled()
|
acceptVerificationRequestLambda.assertions().isNeverCalled()
|
||||||
// User accept the incoming verification
|
// User accept the incoming verification
|
||||||
initialState.eventSink(IncomingVerificationViewEvents.StartVerification)
|
initialState.eventSink(IncomingVerificationViewEvent.StartVerification)
|
||||||
skipItems(1)
|
skipItems(1)
|
||||||
val initialWaitingState = awaitItem()
|
val initialWaitingState = awaitItem()
|
||||||
assertThat((initialWaitingState.step as IncomingVerificationState.Step.Initial).isWaiting).isTrue()
|
assertThat((initialWaitingState.step as IncomingVerificationState.Step.Initial).isWaiting).isTrue()
|
||||||
@@ -259,7 +259,7 @@ class IncomingVerificationPresenterTest {
|
|||||||
)
|
)
|
||||||
val emojiState = awaitItem()
|
val emojiState = awaitItem()
|
||||||
// User goes back
|
// User goes back
|
||||||
emojiState.eventSink(IncomingVerificationViewEvents.GoBack)
|
emojiState.eventSink(IncomingVerificationViewEvent.GoBack)
|
||||||
val emojiWaitingItem = awaitItem()
|
val emojiWaitingItem = awaitItem()
|
||||||
assertThat((emojiWaitingItem.step as IncomingVerificationState.Step.Verifying).isWaiting).isTrue()
|
assertThat((emojiWaitingItem.step as IncomingVerificationState.Step.Verifying).isWaiting).isTrue()
|
||||||
advanceUntilIdle()
|
advanceUntilIdle()
|
||||||
@@ -289,7 +289,7 @@ class IncomingVerificationPresenterTest {
|
|||||||
navigator = IncomingVerificationNavigator(navigatorLambda),
|
navigator = IncomingVerificationNavigator(navigatorLambda),
|
||||||
).test {
|
).test {
|
||||||
val initialState = awaitItem()
|
val initialState = awaitItem()
|
||||||
initialState.eventSink(IncomingVerificationViewEvents.IgnoreVerification)
|
initialState.eventSink(IncomingVerificationViewEvent.IgnoreVerification)
|
||||||
skipItems(1)
|
skipItems(1)
|
||||||
navigatorLambda.assertions().isCalledOnce()
|
navigatorLambda.assertions().isCalledOnce()
|
||||||
}
|
}
|
||||||
|
|||||||
+24
-24
@@ -27,7 +27,7 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
// region step Initial
|
// region step Initial
|
||||||
@Test
|
@Test
|
||||||
fun `back key pressed - ignore the verification`() = runAndroidComposeUiTest {
|
fun `back key pressed - ignore the verification`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = aStepInitial(),
|
step = aStepInitial(),
|
||||||
@@ -35,12 +35,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
pressBackKey()
|
pressBackKey()
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `ignore incoming verification emits the expected event`() = runAndroidComposeUiTest {
|
fun `ignore incoming verification emits the expected event`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = aStepInitial(),
|
step = aStepInitial(),
|
||||||
@@ -48,12 +48,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
clickOn(CommonStrings.action_ignore)
|
clickOn(CommonStrings.action_ignore)
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.IgnoreVerification)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.IgnoreVerification)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `start incoming verification emits the expected event`() = runAndroidComposeUiTest {
|
fun `start incoming verification emits the expected event`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = aStepInitial(),
|
step = aStepInitial(),
|
||||||
@@ -61,12 +61,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
clickOn(CommonStrings.action_start_verification)
|
clickOn(CommonStrings.action_start_verification)
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.StartVerification)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.StartVerification)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `back key pressed - when awaiting response cancels the verification`() = runAndroidComposeUiTest {
|
fun `back key pressed - when awaiting response cancels the verification`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = aStepInitial(
|
step = aStepInitial(
|
||||||
@@ -76,14 +76,14 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
pressBackKey()
|
pressBackKey()
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
// endregion step Initial
|
// endregion step Initial
|
||||||
|
|
||||||
// region step Verifying
|
// region step Verifying
|
||||||
@Test
|
@Test
|
||||||
fun `back key pressed - when ready to verify cancels the verification`() = runAndroidComposeUiTest {
|
fun `back key pressed - when ready to verify cancels the verification`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Verifying(
|
step = IncomingVerificationState.Step.Verifying(
|
||||||
@@ -94,12 +94,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
pressBackKey()
|
pressBackKey()
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `back key pressed - when verifying and loading emits the expected event`() = runAndroidComposeUiTest {
|
fun `back key pressed - when verifying and loading emits the expected event`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Verifying(
|
step = IncomingVerificationState.Step.Verifying(
|
||||||
@@ -110,12 +110,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
pressBackKey()
|
pressBackKey()
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `clicking on they do not match emits the expected event`() = runAndroidComposeUiTest {
|
fun `clicking on they do not match emits the expected event`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Verifying(
|
step = IncomingVerificationState.Step.Verifying(
|
||||||
@@ -126,12 +126,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
clickOn(R.string.screen_session_verification_they_dont_match)
|
clickOn(R.string.screen_session_verification_they_dont_match)
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.DeclineVerification)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.DeclineVerification)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `clicking on they match emits the expected event`() = runAndroidComposeUiTest {
|
fun `clicking on they match emits the expected event`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Verifying(
|
step = IncomingVerificationState.Step.Verifying(
|
||||||
@@ -142,14 +142,14 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
clickOn(R.string.screen_session_verification_they_match)
|
clickOn(R.string.screen_session_verification_they_match)
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.ConfirmVerification)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.ConfirmVerification)
|
||||||
}
|
}
|
||||||
// endregion
|
// endregion
|
||||||
|
|
||||||
// region step Failure
|
// region step Failure
|
||||||
@Test
|
@Test
|
||||||
fun `back key pressed - when failure resets the flow`() = runAndroidComposeUiTest {
|
fun `back key pressed - when failure resets the flow`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Failure,
|
step = IncomingVerificationState.Step.Failure,
|
||||||
@@ -157,12 +157,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
pressBackKey()
|
pressBackKey()
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `click on done - when failure resets the flow`() = runAndroidComposeUiTest {
|
fun `click on done - when failure resets the flow`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Failure,
|
step = IncomingVerificationState.Step.Failure,
|
||||||
@@ -170,7 +170,7 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
clickOn(CommonStrings.action_done)
|
clickOn(CommonStrings.action_done)
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
|
|
||||||
// endregion
|
// endregion
|
||||||
@@ -178,7 +178,7 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
// region step Completed
|
// region step Completed
|
||||||
@Test
|
@Test
|
||||||
fun `back key pressed - on Completed step emits the expected event`() = runAndroidComposeUiTest {
|
fun `back key pressed - on Completed step emits the expected event`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Completed,
|
step = IncomingVerificationState.Step.Completed,
|
||||||
@@ -186,12 +186,12 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
pressBackKey()
|
pressBackKey()
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `when flow is completed and the user clicks on the done button, the expected event is emitted`() = runAndroidComposeUiTest {
|
fun `when flow is completed and the user clicks on the done button, the expected event is emitted`() = runAndroidComposeUiTest {
|
||||||
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvents>()
|
val eventsRecorder = EventsRecorder<IncomingVerificationViewEvent>()
|
||||||
setIncomingVerificationView(
|
setIncomingVerificationView(
|
||||||
anIncomingVerificationState(
|
anIncomingVerificationState(
|
||||||
step = IncomingVerificationState.Step.Completed,
|
step = IncomingVerificationState.Step.Completed,
|
||||||
@@ -199,7 +199,7 @@ class IncomingVerificationViewTest : RobolectricTest() {
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
clickOn(CommonStrings.action_done)
|
clickOn(CommonStrings.action_done)
|
||||||
eventsRecorder.assertSingle(IncomingVerificationViewEvents.GoBack)
|
eventsRecorder.assertSingle(IncomingVerificationViewEvent.GoBack)
|
||||||
}
|
}
|
||||||
// endregion
|
// endregion
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user