The name ConfirmingBanUser was wrong since it was used to confirm a unban action. Better to keep a generic name, in case this class is used for any other action.
This commit is contained in:
@@ -10,6 +10,6 @@ package io.element.android.features.roomdetails.impl.members.moderation
|
||||
import io.element.android.libraries.architecture.AsyncAction
|
||||
import io.element.android.libraries.matrix.api.room.RoomMember
|
||||
|
||||
data class ConfirmingBanUser(
|
||||
data class ConfirmingRoomMemberAction(
|
||||
val roomMember: RoomMember,
|
||||
) : AsyncAction.Confirming
|
||||
@@ -88,8 +88,10 @@ class RoomMembersModerationPresenter @Inject constructor(
|
||||
when (event) {
|
||||
is RoomMembersModerationEvents.SelectRoomMember -> {
|
||||
if (event.roomMember.membership == RoomMembershipState.BAN && canBan) {
|
||||
unbanUserAsyncAction.value = ConfirmingBanUser(event.roomMember)
|
||||
// In this case the view will render a dialog to confirm the unbanning of the user
|
||||
unbanUserAsyncAction.value = ConfirmingRoomMemberAction(event.roomMember)
|
||||
} else {
|
||||
// In this case the view will render a bottom sheet.
|
||||
selectedMember = event.roomMember
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ class RoomMembersModerationStateProvider : PreviewParameterProvider<RoomMembersM
|
||||
),
|
||||
aRoomMembersModerationState(
|
||||
selectedRoomMember = anAlice(),
|
||||
unbanUserAsyncAction = ConfirmingBanUser(anAlice()),
|
||||
unbanUserAsyncAction = ConfirmingRoomMemberAction(anAlice()),
|
||||
),
|
||||
aRoomMembersModerationState(
|
||||
kickUserAsyncAction = AsyncAction.Success(Unit),
|
||||
|
||||
@@ -147,7 +147,7 @@ fun RoomMembersModerationView(
|
||||
|
||||
when (val action = state.unbanUserAsyncAction) {
|
||||
is AsyncAction.Confirming -> {
|
||||
if (action is ConfirmingBanUser) {
|
||||
if (action is ConfirmingRoomMemberAction) {
|
||||
ConfirmationDialog(
|
||||
title = stringResource(R.string.screen_room_member_list_manage_member_unban_title),
|
||||
content = stringResource(R.string.screen_room_member_list_manage_member_unban_message),
|
||||
|
||||
@@ -14,7 +14,7 @@ import com.google.common.truth.Truth.assertThat
|
||||
import im.vector.app.features.analytics.plan.RoomModeration
|
||||
import io.element.android.features.roomdetails.impl.members.aRoomMember
|
||||
import io.element.android.features.roomdetails.impl.members.aVictor
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.ConfirmingBanUser
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.ConfirmingRoomMemberAction
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.ModerationAction
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.RoomMembersModerationEvents
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.RoomMembersModerationPresenter
|
||||
@@ -153,7 +153,7 @@ class RoomMembersModerationPresenterTest {
|
||||
awaitItem().eventSink(RoomMembersModerationEvents.SelectRoomMember(selectedMember))
|
||||
with(awaitItem()) {
|
||||
assertThat(selectedRoomMember).isNull()
|
||||
assertThat(unbanUserAsyncAction).isEqualTo(ConfirmingBanUser(selectedMember))
|
||||
assertThat(unbanUserAsyncAction).isEqualTo(ConfirmingRoomMemberAction(selectedMember))
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -244,7 +244,7 @@ class RoomMembersModerationPresenterTest {
|
||||
val confirmingState = awaitItem()
|
||||
assertThat(confirmingState.selectedRoomMember).isNull()
|
||||
assertThat(confirmingState.actions).isEmpty()
|
||||
assertThat(confirmingState.unbanUserAsyncAction).isEqualTo(ConfirmingBanUser(selectedMember))
|
||||
assertThat(confirmingState.unbanUserAsyncAction).isEqualTo(ConfirmingRoomMemberAction(selectedMember))
|
||||
// Confirms unban
|
||||
confirmingState.eventSink(RoomMembersModerationEvents.UnbanUser(selectedMember.userId))
|
||||
assertThat(awaitItem().unbanUserAsyncAction).isEqualTo(AsyncAction.Loading)
|
||||
|
||||
@@ -13,7 +13,7 @@ import androidx.compose.ui.test.junit4.createAndroidComposeRule
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import io.element.android.features.roomdetails.impl.R
|
||||
import io.element.android.features.roomdetails.impl.members.anAlice
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.ConfirmingBanUser
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.ConfirmingRoomMemberAction
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.ModerationAction
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.RoomMembersModerationEvents
|
||||
import io.element.android.features.roomdetails.impl.members.moderation.RoomMembersModerationState
|
||||
@@ -165,7 +165,7 @@ class RoomMembersModerationViewTest {
|
||||
val roomMember = anAlice()
|
||||
val state = aRoomMembersModerationState(
|
||||
selectedRoomMember = roomMember,
|
||||
unbanUserAsyncAction = ConfirmingBanUser(roomMember),
|
||||
unbanUserAsyncAction = ConfirmingRoomMemberAction(roomMember),
|
||||
eventSink = eventsRecorder
|
||||
)
|
||||
rule.setRoomMembersModerationView(
|
||||
@@ -182,7 +182,7 @@ class RoomMembersModerationViewTest {
|
||||
val roomMember = anAlice()
|
||||
val state = aRoomMembersModerationState(
|
||||
selectedRoomMember = roomMember,
|
||||
unbanUserAsyncAction = ConfirmingBanUser(roomMember),
|
||||
unbanUserAsyncAction = ConfirmingRoomMemberAction(roomMember),
|
||||
eventSink = eventsRecorder
|
||||
)
|
||||
rule.setRoomMembersModerationView(
|
||||
|
||||
Reference in New Issue
Block a user