From aa1e214e467399593f0210903ee4b3c45a84bb42 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 22 Feb 2024 15:47:21 +0100 Subject: [PATCH] Add test on RoomDetailsView --- .../roomdetails/impl/RoomDetailsView.kt | 2 +- .../roomdetails/impl/RoomDetailsViewTest.kt | 31 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsView.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsView.kt index 188d7ac753..c3a3a9d2c3 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsView.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsView.kt @@ -223,7 +223,7 @@ private fun RoomDetailsTopBar( actions = { if (showEdit) { IconButton(onClick = { showMenu = !showMenu }) { - Icon(Icons.Default.MoreVert, "") + Icon(Icons.Default.MoreVert, stringResource(id = CommonStrings.a11y_user_menu)) } DropdownMenu( expanded = showMenu, 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 0391465a43..862fee7789 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 @@ -19,6 +19,7 @@ package io.element.android.features.roomdetails.impl import androidx.activity.ComponentActivity import androidx.compose.ui.test.junit4.AndroidComposeTestRule import androidx.compose.ui.test.junit4.createAndroidComposeRule +import androidx.compose.ui.test.onNodeWithContentDescription import androidx.compose.ui.test.onNodeWithTag import androidx.compose.ui.test.performClick import androidx.test.ext.junit.runners.AndroidJUnit4 @@ -126,6 +127,36 @@ class RoomDetailsViewTest { } } + @Test + fun `click on add topic emit expected event`() { + ensureCalledOnceWithParam(RoomDetailsAction.AddTopic) { callback -> + rule.setRoomDetailView( + state = aRoomDetailsState( + eventSink = EventsRecorder(expectEvents = false), + roomTopic = RoomTopicState.CanAddTopic, + ), + onActionClicked = callback, + ) + rule.clickOn(R.string.screen_room_details_add_topic_title) + } + } + + @Test + fun `click on menu edit emit expected event`() { + ensureCalledOnceWithParam(RoomDetailsAction.Edit) { callback -> + rule.setRoomDetailView( + state = aRoomDetailsState( + eventSink = EventsRecorder(expectEvents = false), + canEdit = true, + ), + onActionClicked = callback, + ) + val menuContentDescription = rule.activity.getString(CommonStrings.a11y_user_menu) + rule.onNodeWithContentDescription(menuContentDescription).performClick() + rule.clickOn(CommonStrings.action_edit) + } + } + @Test fun `click on avatar test`() { val eventsRecorder = EventsRecorder(expectEvents = false)