From 247e846d2a1089fa15b95dbf5e679f74b1ae36d8 Mon Sep 17 00:00:00 2001 From: Boris Safonov Date: Fri, 2 Aug 2024 12:08:48 +0300 Subject: [PATCH 1/2] Shields not shown in group participants list --- .../ObserveParticipantsForConversationUseCase.kt | 4 ++-- .../ObserveParticipantsForConversationUseCaseTest.kt | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt b/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt index f9542fc2393..7766ca56a17 100644 --- a/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt +++ b/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt @@ -73,9 +73,9 @@ class ObserveParticipantsForConversationUseCase @Inject constructor( ConversationParticipantsData( admins = visibleAdminsWithoutServices - .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id].let { false }) }, + .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id] ?: false ) }, participants = visibleParticipants - .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id].let { false }) }, + .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id] ?: false ) }, allAdminsCount = allAdminsWithoutServices.size, allParticipantsCount = allParticipants.size, isSelfAnAdmin = allAdminsWithoutServices.any { it.user is SelfUser } diff --git a/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt b/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt index 03bfaa43b2f..66387c98558 100644 --- a/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt +++ b/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt @@ -75,14 +75,21 @@ class ObserveParticipantsForConversationUseCaseTest { add(MemberDetails(testOtherUser(i).copy(userType = UserType.INTERNAL), Member.Role.Member)) } } + val userId1 = UserId(value = "value1", domain = "domain1") + val userId2 = UserId(value = "value2", domain = "domain2") + val userId3 = UserId(value = "value3", domain = "domain3") val (_, useCase) = ObserveParticipantsForConversationUseCaseArrangement() .withConversationParticipantsUpdate(members) + .withE2EICertificateStatuses(mapOf(userId1 to true, userId2 to false)) .arrange() // When - Then useCase(ConversationId("", "")).test { val data = awaitItem() assert(data.participants.size == members.size) assert(data.allParticipantsCount == members.size) + assertEquals(true, data.participants.firstOrNull { it.id == userId1 }?.isMLSVerified) + assertEquals(false, data.participants.firstOrNull { it.id == userId2 }?.isMLSVerified) + assertEquals(false, data.participants.firstOrNull { it.id == userId3 }?.isMLSVerified) // false if null } } @@ -215,5 +222,9 @@ internal class ObserveParticipantsForConversationUseCaseArrangement { return this } + suspend fun withE2EICertificateStatuses(result: Map) = apply { + coEvery { getMembersE2EICertificateStatuses(any(), any()) } answers { result } + } + fun arrange() = this to useCase } From db8e023eb64ced91ce67ed215735165d87526425 Mon Sep 17 00:00:00 2001 From: Boris Safonov Date: Fri, 2 Aug 2024 12:19:40 +0300 Subject: [PATCH 2/2] Fixed code-style --- .../usecase/ObserveParticipantsForConversationUseCase.kt | 4 ++-- .../usecase/ObserveParticipantsForConversationUseCaseTest.kt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt b/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt index 7766ca56a17..b2f875608a8 100644 --- a/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt +++ b/app/src/main/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCase.kt @@ -73,9 +73,9 @@ class ObserveParticipantsForConversationUseCase @Inject constructor( ConversationParticipantsData( admins = visibleAdminsWithoutServices - .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id] ?: false ) }, + .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id] ?: false) }, participants = visibleParticipants - .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id] ?: false ) }, + .map { uiParticipantMapper.toUIParticipant(it.user, mlsVerificationMap[it.user.id] ?: false) }, allAdminsCount = allAdminsWithoutServices.size, allParticipantsCount = allParticipants.size, isSelfAnAdmin = allAdminsWithoutServices.any { it.user is SelfUser } diff --git a/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt b/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt index 66387c98558..8a5a44e940d 100644 --- a/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt +++ b/app/src/test/kotlin/com/wire/android/ui/home/conversations/details/participants/usecase/ObserveParticipantsForConversationUseCaseTest.kt @@ -89,7 +89,7 @@ class ObserveParticipantsForConversationUseCaseTest { assert(data.allParticipantsCount == members.size) assertEquals(true, data.participants.firstOrNull { it.id == userId1 }?.isMLSVerified) assertEquals(false, data.participants.firstOrNull { it.id == userId2 }?.isMLSVerified) - assertEquals(false, data.participants.firstOrNull { it.id == userId3 }?.isMLSVerified) // false if null + assertEquals(false, data.participants.firstOrNull { it.id == userId3 }?.isMLSVerified) // false if null } }