diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/details/RoomMemberHeaderSection.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/details/RoomMemberHeaderSection.kt index a5cc975b48..5e6ed6a7e7 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/details/RoomMemberHeaderSection.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/details/RoomMemberHeaderSection.kt @@ -37,6 +37,8 @@ import io.element.android.libraries.designsystem.components.avatar.Avatar import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.components.avatar.AvatarSize import io.element.android.libraries.designsystem.theme.components.Text +import io.element.android.libraries.testtags.TestTags +import io.element.android.libraries.testtags.testTag @Composable fun RoomMemberHeaderSection( @@ -53,6 +55,7 @@ fun RoomMemberHeaderSection( modifier = Modifier .clickable(enabled = avatarUrl != null) { openAvatarPreview(avatarUrl!!) } .fillMaxSize() + .testTag(TestTags.memberDetailAvatar) ) } Spacer(modifier = Modifier.height(24.dp)) diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsViewTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsViewTest.kt index 862fee7789..e51e3459d6 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsViewTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsViewTest.kt @@ -173,6 +173,22 @@ class RoomDetailsViewTest { callback.assertSuccess() } + @Test + fun `click on avatar test on DM`() { + val eventsRecorder = EventsRecorder(expectEvents = false) + val state = aRoomDetailsState( + roomType = RoomDetailsType.Dm(aDmRoomMember(avatarUrl = "an_avatar_url")), + eventSink = eventsRecorder, + ) + val callback = EnsureCalledOnceWithTwoParams("Daniel", "an_avatar_url") + rule.setRoomDetailView( + state = state, + openAvatarPreview = callback, + ) + rule.onNodeWithTag(TestTags.memberDetailAvatar.value).performClick() + callback.assertSuccess() + } + @Test fun `click on mute emit expected event`() { val eventsRecorder = EventsRecorder() diff --git a/libraries/testtags/src/main/kotlin/io/element/android/libraries/testtags/TestTags.kt b/libraries/testtags/src/main/kotlin/io/element/android/libraries/testtags/TestTags.kt index 8c57033238..69e073ec07 100644 --- a/libraries/testtags/src/main/kotlin/io/element/android/libraries/testtags/TestTags.kt +++ b/libraries/testtags/src/main/kotlin/io/element/android/libraries/testtags/TestTags.kt @@ -53,6 +53,11 @@ object TestTags { */ val roomDetailAvatar = TestTag("room_detail-avatar") + /** + * Room member screen. + */ + val memberDetailAvatar = TestTag("member_detail-avatar") + /** * Welcome screen. */