From badc17531c6e6d75850fab3f72e58e7fae8dbd1f Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 20 Dec 2023 09:15:50 +0100 Subject: [PATCH 1/3] Attempt to fix test on CI. The test is failing on CI with this error: expected instance of: io.element.android.libraries.architecture.Async$Success but was instance of : io.element.android.libraries.architecture.Async$Loading with value : Loading(prevData=null) --- .../element/android/features/logout/impl/LogoutPresenterTest.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt b/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt index 75401c290a..2e62b9cccb 100644 --- a/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt +++ b/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt @@ -145,7 +145,7 @@ class LogoutPresenterTest { val loadingState = awaitItem() assertThat(loadingState.showConfirmationDialog).isFalse() assertThat(loadingState.logoutAction).isInstanceOf(Async.Loading::class.java) - val successState = awaitItem() + val successState = awaitLastSequentialItem() assertThat(successState.logoutAction).isInstanceOf(Async.Success::class.java) } } From 875cc9adbf3064bdfb6ccabda926eee4c5e761cd Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 20 Dec 2023 14:33:16 +0100 Subject: [PATCH 2/3] Second attempt... --- .../android/features/logout/impl/LogoutPresenterTest.kt | 5 ++--- .../matrix/test/encryption/FakeEncryptionService.kt | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt b/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt index 2e62b9cccb..ef645512f2 100644 --- a/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt +++ b/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt @@ -71,8 +71,7 @@ class LogoutPresenterTest { moleculeFlow(RecompositionMode.Immediate) { presenter.present() }.test { - skipItems(1) - val initialState = awaitItem() + val initialState = awaitLastSequentialItem() assertThat(initialState.isLastSession).isTrue() assertThat(initialState.backupUploadState).isEqualTo(BackupUploadState.Unknown) assertThat(initialState.showConfirmationDialog).isFalse() @@ -145,7 +144,7 @@ class LogoutPresenterTest { val loadingState = awaitItem() assertThat(loadingState.showConfirmationDialog).isFalse() assertThat(loadingState.logoutAction).isInstanceOf(Async.Loading::class.java) - val successState = awaitLastSequentialItem() + val successState = awaitItem() assertThat(successState.logoutAction).isInstanceOf(Async.Success::class.java) } } diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt index 44b9d734a5..aafb2e8074 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt @@ -72,7 +72,7 @@ class FakeEncryptionService : EncryptionService { this.isLastDevice = isLastDevice } - override suspend fun isLastDevice(): Result { + override suspend fun isLastDevice(): Result = simulateLongTask { return Result.success(isLastDevice) } From fb1de09d730afb84a3b15d725dd8b51717ba85a8 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 20 Dec 2023 15:13:27 +0100 Subject: [PATCH 3/3] Last attempt... --- .../android/features/logout/impl/LogoutPresenterTest.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt b/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt index ef645512f2..c486e76312 100644 --- a/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt +++ b/features/logout/impl/src/test/kotlin/io/element/android/features/logout/impl/LogoutPresenterTest.kt @@ -71,7 +71,8 @@ class LogoutPresenterTest { moleculeFlow(RecompositionMode.Immediate) { presenter.present() }.test { - val initialState = awaitLastSequentialItem() + skipItems(3) + val initialState = awaitItem() assertThat(initialState.isLastSession).isTrue() assertThat(initialState.backupUploadState).isEqualTo(BackupUploadState.Unknown) assertThat(initialState.showConfirmationDialog).isFalse()