Skip to content

Commit fff7c04

Browse files
committed
Use test extension
1 parent 153aa6e commit fff7c04

File tree

1 file changed

+19
-57
lines changed

1 file changed

+19
-57
lines changed

features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/VerifySelfSessionPresenterTest.kt

Lines changed: 19 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,7 @@
77

88
package io.element.android.features.verifysession.impl.outgoing
99

10-
import app.cash.molecule.RecompositionMode
11-
import app.cash.molecule.moleculeFlow
1210
import app.cash.turbine.ReceiveTurbine
13-
import app.cash.turbine.test
1411
import com.google.common.truth.Truth.assertThat
1512
import io.element.android.features.logout.api.LogoutUseCase
1613
import io.element.android.features.logout.test.FakeLogoutUseCase
@@ -33,6 +30,7 @@ import io.element.android.tests.testutils.WarmUpRule
3330
import io.element.android.tests.testutils.lambda.lambdaError
3431
import io.element.android.tests.testutils.lambda.lambdaRecorder
3532
import io.element.android.tests.testutils.lambda.value
33+
import io.element.android.tests.testutils.test
3634
import kotlinx.coroutines.ExperimentalCoroutinesApi
3735
import kotlinx.coroutines.test.runTest
3836
import org.junit.Rule
@@ -48,9 +46,7 @@ class VerifySelfSessionPresenterTest {
4846
val presenter = createVerifySelfSessionPresenter(
4947
service = unverifiedSessionService(),
5048
)
51-
moleculeFlow(RecompositionMode.Immediate) {
52-
presenter.present()
53-
}.test {
49+
presenter.test {
5450
awaitItem().run {
5551
assertThat(step).isEqualTo(Step.Initial(false))
5652
assertThat(displaySkipButton).isTrue()
@@ -65,9 +61,7 @@ class VerifySelfSessionPresenterTest {
6561
service = unverifiedSessionService(),
6662
buildMeta = buildMeta,
6763
)
68-
moleculeFlow(RecompositionMode.Immediate) {
69-
presenter.present()
70-
}.test {
64+
presenter.test {
7165
assertThat(awaitItem().displaySkipButton).isFalse()
7266
}
7367
}
@@ -83,9 +77,7 @@ class VerifySelfSessionPresenterTest {
8377
emitRecoveryState(RecoveryState.INCOMPLETE)
8478
}
8579
)
86-
moleculeFlow(RecompositionMode.Immediate) {
87-
presenter.present()
88-
}.test {
80+
presenter.test {
8981
assertThat(awaitItem().step).isEqualTo(Step.Initial(true))
9082
resetLambda.assertions().isCalledOnce().with(value(true))
9183
}
@@ -100,9 +92,7 @@ class VerifySelfSessionPresenterTest {
10092
emitRecoveryState(RecoveryState.INCOMPLETE)
10193
}
10294
)
103-
moleculeFlow(RecompositionMode.Immediate) {
104-
presenter.present()
105-
}.test {
95+
presenter.test {
10696
assertThat(awaitItem().step).isEqualTo(Step.Initial(canEnterRecoveryKey = true, isLastDevice = true))
10797
}
10898
}
@@ -114,9 +104,7 @@ class VerifySelfSessionPresenterTest {
114104
startVerificationLambda = { },
115105
)
116106
val presenter = createVerifySelfSessionPresenter(service)
117-
moleculeFlow(RecompositionMode.Immediate) {
118-
presenter.present()
119-
}.test {
107+
presenter.test {
120108
requestVerificationAndAwaitVerifyingState(service)
121109
}
122110
}
@@ -126,9 +114,7 @@ class VerifySelfSessionPresenterTest {
126114
val presenter = createVerifySelfSessionPresenter(
127115
service = unverifiedSessionService(),
128116
)
129-
moleculeFlow(RecompositionMode.Immediate) {
130-
presenter.present()
131-
}.test {
117+
presenter.test {
132118
val initialState = awaitItem()
133119
assertThat(initialState.step).isEqualTo(Step.Initial(false))
134120
val eventSink = initialState.eventSink
@@ -145,9 +131,7 @@ class VerifySelfSessionPresenterTest {
145131
approveVerificationLambda = { },
146132
)
147133
val presenter = createVerifySelfSessionPresenter(service)
148-
moleculeFlow(RecompositionMode.Immediate) {
149-
presenter.present()
150-
}.test {
134+
presenter.test {
151135
val state = requestVerificationAndAwaitVerifyingState(service)
152136
state.eventSink(VerifySelfSessionViewEvents.ConfirmVerification)
153137
// Cancelling
@@ -164,9 +148,7 @@ class VerifySelfSessionPresenterTest {
164148
requestVerificationLambda = { },
165149
)
166150
val presenter = createVerifySelfSessionPresenter(service)
167-
moleculeFlow(RecompositionMode.Immediate) {
168-
presenter.present()
169-
}.test {
151+
presenter.test {
170152
awaitItem().eventSink(VerifySelfSessionViewEvents.UseAnotherDevice)
171153
awaitItem().eventSink(VerifySelfSessionViewEvents.RequestVerification)
172154
service.emitVerificationFlowState(VerificationFlowState.DidFail)
@@ -183,9 +165,7 @@ class VerifySelfSessionPresenterTest {
183165
cancelVerificationLambda = { },
184166
)
185167
val presenter = createVerifySelfSessionPresenter(service)
186-
moleculeFlow(RecompositionMode.Immediate) {
187-
presenter.present()
188-
}.test {
168+
presenter.test {
189169
val state = requestVerificationAndAwaitVerifyingState(service)
190170
state.eventSink(VerifySelfSessionViewEvents.Cancel)
191171
assertThat(awaitItem().step).isEqualTo(Step.Canceled)
@@ -199,9 +179,7 @@ class VerifySelfSessionPresenterTest {
199179
startVerificationLambda = { },
200180
)
201181
val presenter = createVerifySelfSessionPresenter(service)
202-
moleculeFlow(RecompositionMode.Immediate) {
203-
presenter.present()
204-
}.test {
182+
presenter.test {
205183
requestVerificationAndAwaitVerifyingState(service)
206184
service.emitVerificationFlowState(VerificationFlowState.DidReceiveVerificationData(SessionVerificationData.Emojis(emptyList())))
207185
ensureAllEventsConsumed()
@@ -215,9 +193,7 @@ class VerifySelfSessionPresenterTest {
215193
startVerificationLambda = { },
216194
)
217195
val presenter = createVerifySelfSessionPresenter(service)
218-
moleculeFlow(RecompositionMode.Immediate) {
219-
presenter.present()
220-
}.test {
196+
presenter.test {
221197
val state = requestVerificationAndAwaitVerifyingState(service)
222198
service.emitVerificationFlowState(VerificationFlowState.DidCancel)
223199
assertThat(awaitItem().step).isEqualTo(Step.Canceled)
@@ -235,9 +211,7 @@ class VerifySelfSessionPresenterTest {
235211
startVerificationLambda = { },
236212
)
237213
val presenter = createVerifySelfSessionPresenter(service)
238-
moleculeFlow(RecompositionMode.Immediate) {
239-
presenter.present()
240-
}.test {
214+
presenter.test {
241215
val state = requestVerificationAndAwaitVerifyingState(service)
242216
service.emitVerificationFlowState(VerificationFlowState.DidCancel)
243217
assertThat(awaitItem().step).isEqualTo(Step.Canceled)
@@ -259,9 +233,7 @@ class VerifySelfSessionPresenterTest {
259233
approveVerificationLambda = { },
260234
)
261235
val presenter = createVerifySelfSessionPresenter(service)
262-
moleculeFlow(RecompositionMode.Immediate) {
263-
presenter.present()
264-
}.test {
236+
presenter.test {
265237
val state = requestVerificationAndAwaitVerifyingState(
266238
service,
267239
SessionVerificationData.Emojis(emojis)
@@ -286,9 +258,7 @@ class VerifySelfSessionPresenterTest {
286258
declineVerificationLambda = { },
287259
)
288260
val presenter = createVerifySelfSessionPresenter(service)
289-
moleculeFlow(RecompositionMode.Immediate) {
290-
presenter.present()
291-
}.test {
261+
presenter.test {
292262
val state = requestVerificationAndAwaitVerifyingState(service)
293263
state.eventSink(VerifySelfSessionViewEvents.DeclineVerification)
294264
assertThat(awaitItem().step).isEqualTo(
@@ -309,9 +279,7 @@ class VerifySelfSessionPresenterTest {
309279
startVerificationLambda = { },
310280
)
311281
val presenter = createVerifySelfSessionPresenter(service)
312-
moleculeFlow(RecompositionMode.Immediate) {
313-
presenter.present()
314-
}.test {
282+
presenter.test {
315283
val state = requestVerificationAndAwaitVerifyingState(service)
316284
state.eventSink(VerifySelfSessionViewEvents.SkipVerification)
317285
assertThat(awaitItem().step).isEqualTo(Step.Skipped)
@@ -331,9 +299,7 @@ class VerifySelfSessionPresenterTest {
331299
service = service,
332300
showDeviceVerifiedScreen = true,
333301
)
334-
moleculeFlow(RecompositionMode.Immediate) {
335-
presenter.present()
336-
}.test {
302+
presenter.test {
337303
assertThat(awaitItem().step).isEqualTo(Step.Completed)
338304
}
339305
}
@@ -351,9 +317,7 @@ class VerifySelfSessionPresenterTest {
351317
service = service,
352318
showDeviceVerifiedScreen = false,
353319
)
354-
moleculeFlow(RecompositionMode.Immediate) {
355-
presenter.present()
356-
}.test {
320+
presenter.test {
357321
skipItems(1)
358322
assertThat(awaitItem().step).isEqualTo(Step.Skipped)
359323
}
@@ -373,9 +337,7 @@ class VerifySelfSessionPresenterTest {
373337
service,
374338
logoutUseCase = FakeLogoutUseCase(signOutLambda)
375339
)
376-
moleculeFlow(RecompositionMode.Immediate) {
377-
presenter.present()
378-
}.test {
340+
presenter.test {
379341
skipItems(1)
380342
val initialItem = awaitItem()
381343
initialItem.eventSink(VerifySelfSessionViewEvents.SignOut)

0 commit comments

Comments
 (0)