Simplify again.

This commit is contained in:
Benoit Marty 2025-11-18 22:25:50 +01:00
parent 8be1faf70f
commit e91f03181f
2 changed files with 4 additions and 23 deletions

View file

@ -30,18 +30,11 @@ data class ChangeRolesState(
) )
data class MembersByRole( data class MembersByRole(
val owners: ImmutableList<RoomMember>, val owners: ImmutableList<RoomMember> = persistentListOf(),
val admins: ImmutableList<RoomMember>, val admins: ImmutableList<RoomMember> = persistentListOf(),
val moderators: ImmutableList<RoomMember>, val moderators: ImmutableList<RoomMember> = persistentListOf(),
val members: ImmutableList<RoomMember>, val members: ImmutableList<RoomMember> = persistentListOf(),
) { ) {
constructor() : this(
owners = persistentListOf(),
admins = persistentListOf(),
moderators = persistentListOf(),
members = persistentListOf(),
)
constructor(members: List<RoomMember>, comparator: Comparator<RoomMember>) : this( constructor(members: List<RoomMember>, comparator: Comparator<RoomMember>) : this(
owners = members.filterAndSort(comparator) { it.role is RoomMember.Role.Owner }, owners = members.filterAndSort(comparator) { it.role is RoomMember.Role.Owner },
admins = members.filterAndSort(comparator) { it.role == RoomMember.Role.Admin }, admins = members.filterAndSort(comparator) { it.role == RoomMember.Role.Admin },

View file

@ -58,32 +58,20 @@ class MembersByRoleTest {
val membersByRoleWithOwners = MembersByRole( val membersByRoleWithOwners = MembersByRole(
owners = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Admin)), owners = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Admin)),
admins = persistentListOf(),
moderators = persistentListOf(),
members = persistentListOf(),
) )
assertThat(membersByRoleWithOwners.isEmpty()).isFalse() assertThat(membersByRoleWithOwners.isEmpty()).isFalse()
val membersByRoleWithAdmins = MembersByRole( val membersByRoleWithAdmins = MembersByRole(
owners = persistentListOf(),
admins = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Admin)), admins = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Admin)),
moderators = persistentListOf(),
members = persistentListOf(),
) )
assertThat(membersByRoleWithAdmins.isEmpty()).isFalse() assertThat(membersByRoleWithAdmins.isEmpty()).isFalse()
val membersByRoleWithModerators = MembersByRole( val membersByRoleWithModerators = MembersByRole(
owners = persistentListOf(),
admins = persistentListOf(),
moderators = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Moderator)), moderators = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Moderator)),
members = persistentListOf(),
) )
assertThat(membersByRoleWithModerators.isEmpty()).isFalse() assertThat(membersByRoleWithModerators.isEmpty()).isFalse()
val membersByRoleWithMembers = MembersByRole( val membersByRoleWithMembers = MembersByRole(
owners = persistentListOf(),
admins = persistentListOf(),
moderators = persistentListOf(),
members = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.User)), members = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.User)),
) )
assertThat(membersByRoleWithMembers.isEmpty()).isFalse() assertThat(membersByRoleWithMembers.isEmpty()).isFalse()