diff --git a/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt b/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt index bf7c085ac7..4573456762 100644 --- a/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt +++ b/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt @@ -192,17 +192,22 @@ class RoomListPresenterTests { presenter.present() }.test { roomListService.postAllRooms(listOf(aRoomSummaryFilled())) - val loadedState = consumeItemsUntilPredicate { state -> state.roomList.size == 1 }.last() + skipItems(3) + val loadedState = awaitItem() // Test filtering with result + assertThat(loadedState.roomList.size).isEqualTo(1) loadedState.eventSink.invoke(RoomListEvents.UpdateFilter(A_ROOM_NAME.substring(0, 3))) - val withFilteredRoomState = consumeItemsUntilPredicate { state -> state.filteredRoomList.size == 1 }.last() + skipItems(1) + val withFilteredRoomState = awaitItem() + assertThat(withFilteredRoomState.filteredRoomList.size).isEqualTo(1) assertThat(withFilteredRoomState.filter).isEqualTo(A_ROOM_NAME.substring(0, 3)) assertThat(withFilteredRoomState.filteredRoomList.size).isEqualTo(1) assertThat(withFilteredRoomState.filteredRoomList.first()) .isEqualTo(aRoomListRoomSummary) // Test filtering without result withFilteredRoomState.eventSink.invoke(RoomListEvents.UpdateFilter("tada")) - val withNotFilteredRoomState = consumeItemsUntilPredicate { state -> state.filteredRoomList.size == 0 }.last() + skipItems(1) + val withNotFilteredRoomState = awaitItem() assertThat(withNotFilteredRoomState.filter).isEqualTo("tada") assertThat(withNotFilteredRoomState.filteredRoomList).isEmpty() scope.cancel()