Add Konsist test to check that toPersistentList() is not used.
Same for `toPersistentSet()` and `toPersistentMap()`. Fix existing issues.
This commit is contained in:
parent
2fa1b9d448
commit
67c9daa0bf
85 changed files with 305 additions and 254 deletions
|
|
@ -14,7 +14,7 @@ import io.element.android.features.roommembermoderation.api.RoomMemberModeration
|
|||
import io.element.android.libraries.architecture.AsyncAction
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import kotlinx.collections.immutable.toPersistentList
|
||||
import kotlinx.collections.immutable.toImmutableList
|
||||
|
||||
class InternalRoomMemberModerationStateProvider : PreviewParameterProvider<InternalRoomMemberModerationState> {
|
||||
override val values: Sequence<InternalRoomMemberModerationState>
|
||||
|
|
@ -86,7 +86,7 @@ fun aRoomMembersModerationState(
|
|||
canKick = canKick,
|
||||
canBan = canBan,
|
||||
selectedUser = selectedUser,
|
||||
actions = actions.toPersistentList(),
|
||||
actions = actions.toImmutableList(),
|
||||
kickUserAsyncAction = kickUserAsyncAction,
|
||||
banUserAsyncAction = banUserAsyncAction,
|
||||
unbanUserAsyncAction = unbanUserAsyncAction,
|
||||
|
|
|
|||
|
|
@ -35,9 +35,9 @@ import io.element.android.libraries.matrix.ui.room.canBanAsState
|
|||
import io.element.android.libraries.matrix.ui.room.canKickAsState
|
||||
import io.element.android.libraries.matrix.ui.room.userPowerLevelAsState
|
||||
import io.element.android.services.analytics.api.AnalyticsService
|
||||
import kotlinx.collections.immutable.PersistentList
|
||||
import kotlinx.collections.immutable.ImmutableList
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
import kotlinx.collections.immutable.toPersistentList
|
||||
import kotlinx.collections.immutable.toImmutableList
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.drop
|
||||
|
|
@ -68,7 +68,7 @@ class RoomMemberModerationPresenter(
|
|||
var selectedUser by remember {
|
||||
mutableStateOf<MatrixUser?>(null)
|
||||
}
|
||||
val moderationActions = remember { mutableStateOf(persistentListOf<ModerationActionState>()) }
|
||||
val moderationActions = remember { mutableStateOf<ImmutableList<ModerationActionState>>(persistentListOf()) }
|
||||
|
||||
fun handleEvent(event: RoomMemberModerationEvents) {
|
||||
when (event) {
|
||||
|
|
@ -149,7 +149,7 @@ class RoomMemberModerationPresenter(
|
|||
canKick: Boolean,
|
||||
canBan: Boolean,
|
||||
currentUserMemberPowerLevel: Long,
|
||||
): PersistentList<ModerationActionState> {
|
||||
): ImmutableList<ModerationActionState> {
|
||||
return buildList {
|
||||
add(ModerationActionState(action = ModerationAction.DisplayProfile, isEnabled = true))
|
||||
// Assume the member is a regular user when it's unknown
|
||||
|
|
@ -168,7 +168,7 @@ class RoomMemberModerationPresenter(
|
|||
add(ModerationActionState(action = ModerationAction.BanUser, isEnabled = canModerateThisUser))
|
||||
}
|
||||
}
|
||||
}.toPersistentList()
|
||||
}.toImmutableList()
|
||||
}
|
||||
|
||||
private fun CoroutineScope.kickUser(
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ import io.element.android.tests.testutils.WarmUpRule
|
|||
import io.element.android.tests.testutils.test
|
||||
import io.element.android.tests.testutils.testCoroutineDispatchers
|
||||
import kotlinx.collections.immutable.persistentListOf
|
||||
import kotlinx.collections.immutable.toPersistentList
|
||||
import kotlinx.collections.immutable.toImmutableList
|
||||
import kotlinx.coroutines.test.TestScope
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Rule
|
||||
|
|
@ -360,7 +360,7 @@ class RoomMemberModerationPresenterTest {
|
|||
updateMembersResult = { Result.success(Unit) }
|
||||
),
|
||||
).apply {
|
||||
val roomMembers = listOfNotNull(targetRoomMember).toPersistentList()
|
||||
val roomMembers = listOfNotNull(targetRoomMember).toImmutableList()
|
||||
givenRoomMembersState(state = RoomMembersState.Ready(roomMembers))
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue