diff --git a/stream-feeds-android-client/src/main/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImpl.kt b/stream-feeds-android-client/src/main/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImpl.kt index b63eb2541..b4ad8a18d 100644 --- a/stream-feeds-android-client/src/main/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImpl.kt +++ b/stream-feeds-android-client/src/main/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImpl.kt @@ -218,10 +218,14 @@ internal class FeedStateImpl( override fun onFeedDeleted() { _activities.update { emptyList() } + _aggregatedActivities.update { emptyList() } _feed.update { null } _followers.update { emptyList() } _following.update { emptyList() } _followRequests.update { emptyList() } + _pinnedActivities.update { emptyList() } + _notificationStatus.update { null } + _activitiesPagination = null // Clear the member list state memberListState.clear() } diff --git a/stream-feeds-android-client/src/test/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImplTest.kt b/stream-feeds-android-client/src/test/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImplTest.kt index a5750641f..135b2031a 100644 --- a/stream-feeds-android-client/src/test/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImplTest.kt +++ b/stream-feeds-android-client/src/test/kotlin/io/getstream/feeds/android/client/internal/state/FeedStateImplTest.kt @@ -44,6 +44,7 @@ import io.mockk.mockk import kotlinx.coroutines.test.runTest import org.junit.Assert.assertEquals import org.junit.Assert.assertNull +import org.junit.Assert.assertTrue import org.junit.Test internal class FeedStateImplTest { @@ -400,20 +401,29 @@ internal class FeedStateImplTest { @Test fun `on onFeedDeleted, then clear all state`() = runTest { + val activity = activityData() + val notificationStatus = NotificationStatusResponse(unread = 5, unseen = 3) setupInitialState( - activities = listOf(activityData()), + activities = listOf(activity), + aggregatedActivities = listOf(aggregatedActivityData()), + pinnedActivities = listOf(activityPin(activity)), followers = listOf(followData()), following = listOf(followData()), followRequests = listOf(followData()), ) + feedState.onNotificationFeedUpdated(emptyList(), notificationStatus) feedState.onFeedDeleted() - assertEquals(emptyList(), feedState.activities.value) + assertTrue(feedState.activities.value.isEmpty()) + assertTrue(feedState.aggregatedActivities.value.isEmpty()) + assertTrue(feedState.pinnedActivities.value.isEmpty()) assertNull(feedState.feed.value) - assertEquals(emptyList(), feedState.followers.value) - assertEquals(emptyList(), feedState.following.value) - assertEquals(emptyList(), feedState.followRequests.value) + assertTrue(feedState.followers.value.isEmpty()) + assertTrue(feedState.following.value.isEmpty()) + assertTrue(feedState.followRequests.value.isEmpty()) + assertNull(feedState.notificationStatus.value) + assertNull(feedState.activitiesPagination) } @Test