From dee0c854218ac64f0474c52a6f76494d8400c8cc Mon Sep 17 00:00:00 2001 From: emmaoke-w Date: Mon, 2 Feb 2026 11:30:23 +0100 Subject: [PATCH 01/22] WIP: save progress --- .../criticalFlows/FileSharingBetweenTeams.kt | 3 +- .../core/criticalFlows/GroupVideoCall.kt | 610 ++++++++++++++++++ .../criticalFlows/PersonalAccountLifeCycle.kt | 6 +- .../android/tests/core/pages/CallingPage.kt | 8 + .../core/pages/ConnectedUserProfilePage.kt | 15 - .../tests/core/pages/ConversationViewPage.kt | 15 + .../pages/GroupConversationDetailsPage.kt | 80 +++ .../core/pages/UnconnectedUserProfilePage.kt | 4 + .../testsSupport/src/main/call/CallHelper.kt | 31 + .../src/main/call/CallingManager.kt | 12 +- .../src/main/uiautomatorutils/UiWaitUtils.kt | 30 + 11 files changed, 793 insertions(+), 21 deletions(-) create mode 100644 tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt index 14f7caa73f3..e6175948e4d 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt @@ -42,6 +42,7 @@ import com.wire.android.tests.core.BaseUiTest import com.wire.android.tests.support.tags.Category import com.wire.android.tests.support.tags.TestCaseId import uiautomatorutils.UiWaitUtils.WaitUtils.waitFor +import uiautomatorutils.UiWaitUtils.waitUntilToastIsDisplayed @RunWith(AndroidJUnit4::class) class FileSharingBetweenTeams : BaseUiTest() { @@ -169,7 +170,7 @@ class FileSharingBetweenTeams : BaseUiTest() { step("Verify connection accepted toast and start a conversation with sender") { pages.connectedUserProfilePage.apply { - assertToastMessageIsDisplayed("Connection request accepted") + waitUntilToastIsDisplayed("Connection request accepted") clickStartConversationButton() } } diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt new file mode 100644 index 00000000000..b6e9069bf91 --- /dev/null +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt @@ -0,0 +1,610 @@ +/* + * Wire + * Copyright (C) 2026 Wire Swiss GmbH + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see http://www.gnu.org/licenses/. + */ +package com.wire.android.tests.core.criticalFlows + +import android.content.Context +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.platform.app.InstrumentationRegistry +import androidx.test.uiautomator.UiDevice +import backendUtils.BackendClient +import backendUtils.team.TeamHelper +import backendUtils.team.TeamRoles +import backendUtils.team.deleteTeam +import call.CallHelper +import call.CallingManager +import com.wire.android.tests.core.BaseUiTest +import com.wire.android.tests.core.pages.AllPages +import com.wire.android.tests.support.UiAutomatorSetup +import com.wire.android.tests.support.tags.Category +import com.wire.android.tests.support.tags.TestCaseId +import deleteDownloadedFilesContaining +import kotlinx.coroutines.runBlocking +import org.junit.After +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith +import org.koin.test.inject +import service.TestServiceHelper +import uiautomatorutils.PermissionUtils.grantRuntimePermsForForegroundApp +import uiautomatorutils.UiWaitUtils.WaitUtils.waitFor +import uiautomatorutils.UiWaitUtils.waitUntilToastIsDisplayed +import user.usermanager.ClientUserManager +import user.utils.ClientUser +import kotlin.getValue + +@RunWith(AndroidJUnit4::class) +class GroupVideoCall : BaseUiTest() { + private val pages: AllPages by inject() + private lateinit var device: UiDevice + private lateinit var context: Context + private lateinit var backendClient: BackendClient + private lateinit var teamHelper: TeamHelper + private lateinit var testServiceHelper: TestServiceHelper + private val callHelper by lazy { CallHelper() } + private var teamOwnerA: ClientUser? = null + private var teamOwnerB: ClientUser? = null + private lateinit var callingManager: CallingManager + + + @Before + fun setUp() { + context = InstrumentationRegistry.getInstrumentation().context + device = UiAutomatorSetup.start(UiAutomatorSetup.APP_INTERNAL) + backendClient = BackendClient.loadBackend("STAGING") + teamHelper = TeamHelper() + testServiceHelper = TestServiceHelper(teamHelper.usersManager) + callHelper.init(teamHelper.usersManager) + callingManager = callHelper.callingManager + grantRuntimePermsForForegroundApp( + device, + android.Manifest.permission.RECORD_AUDIO, + android.Manifest.permission.CAMERA + ) + } + + @After + fun tearDown() { + runCatching { teamOwnerA?.deleteTeam(backendClient) } + runCatching { teamOwnerB?.deleteTeam(backendClient) } + } + + @Suppress("CyclomaticComplexMethod", "LongMethod") + @TestCaseId("TC-8608") + @Category("criticalFlow") + @Test +// fun givenGroupCall_whenVideoIsEnabled_thenGroupVideoIsVisible() { +// step("Prepare team via backend (WeLikeCalls team + IJoinCalls team) with owners and members") { +// teamHelper.usersManager.createTeamOwnerByAlias( +// "user1Name", +// "WeLikeCalls", +// "en_US", +// true, +// backendClient, +// context +// ) +// +// teamHelper.userXAddsUsersToTeam( +// "user1Name", +// "user2Name, user3Name,user4Name", +// "WeLikeCalls", +// TeamRoles.Member, +// backendClient, +// context, +// true +// ) +// +// teamHelper.usersManager.createTeamOwnerByAlias( +// "user5Name", +// "IJoinCalls", +// "en_US", +// true, +// backendClient, +// context +// ) +// +// step("WeLikeCalls team owner creates a group conversation with team members") { +// testServiceHelper.userHasGroupConversationInTeam( +// "user1Name", +// "GroupVideoCall", +// "user2Name, user3Name,user4Name", +// "WeLikeCalls" +// ) +// } +// +// step("Prepare devices and unique username for group call participants") { +// testServiceHelper.apply { +// addDevice("user5Name", null, "Device1") +// addDevice("user4Name", null, "Device2") +// runBlocking { +// usersSetUniqueUsername("user3Name") +// } +// } +// } +// +// +// teamOwnerA = teamHelper.usersManager.findUserBy("user1Name", ClientUserManager.FindBy.NAME_ALIAS) +// teamOwnerB = teamHelper.usersManager.findUserBy("user5Name", ClientUserManager.FindBy.NAME_ALIAS) +// +// step("Enable conference calling feature for WeLikeCalls and IJoinCalls teams via backdoor") { +// runBlocking { +// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( +// "user1Name", +// "WeLikeCalls" +// ) +// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( +// "user5Name", +// "IJoinCalls" +// ) +// } +// } +// +// step("Login as team owner in Android app") { +// pages.registrationPage.apply { +// assertEmailWelcomePage() +// } +// pages.loginPage.apply { +// clickStagingDeepLink() +// clickProceedButtonOnDeeplinkOverlay() +// } +// pages.loginPage.apply { +// enterTeamOwnerLoggingEmail(teamOwnerA?.email ?: "") +// clickLoginButton() +// enterTeamOwnerLoggingPassword(teamOwnerA?.password ?: "") +// clickLoginButton() +// } +// pages.registrationPage.apply { +// waitUntilLoginFlowIsCompleted() +// clickAllowNotificationButton() +// clickDeclineShareDataAlert() +// +// waitFor(60) +// } +// } +// +// } +// } +// } + + +// fun givenGroupCall_whenVideoIsEnabled_thenGroupVideoIsVisible() { +// +// step("Prepare team via backend (WeLikeCalls team + IJoinCalls team) with owners and members") { +// teamHelper.usersManager.createTeamOwnerByAlias( +// "user1Name", +// "WeLikeCalls", +// "en_US", +// true, +// backendClient, +// context +// ) +// +// teamHelper.userXAddsUsersToTeam( +// "user1Name", +// "user2Name, user3Name,user4Name", +// "WeLikeCalls", +// TeamRoles.Member, +// backendClient, +// context, +// true +// ) +// +// teamHelper.usersManager.createTeamOwnerByAlias( +// "user5Name", +// "IJoinCalls", +// "en_US", +// true, +// backendClient, +// context +// ) +// } +// +// step("WeLikeCalls team owner creates a group conversation with team members") { +// testServiceHelper.userHasGroupConversationInTeam( +// "user1Name", +// "GroupVideoCall", +// "user2Name, user3Name,user4Name", +// "WeLikeCalls" +// ) +// } +// +// step("Prepare devices and unique username for group call participants") { +// testServiceHelper.apply { +// addDevice("user5Name", null, "Device1") +// addDevice("user4Name", null, "Device2") +// runBlocking { +// usersSetUniqueUsername("user3Name") +// } +// } +// } +// +// step("Resolve team owners for WeLikeCalls and IJoinCalls") { +// teamOwnerA = teamHelper.usersManager.findUserBy( +// "user1Name", +// ClientUserManager.FindBy.NAME_ALIAS +// ) +// teamOwnerB = teamHelper.usersManager.findUserBy( +// "user5Name", +// ClientUserManager.FindBy.NAME_ALIAS +// ) +// } +// +// step("Enable conference calling feature for WeLikeCalls and IJoinCalls teams via backdoor") { +// runBlocking { +// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( +// "user1Name", +// "WeLikeCalls" +// ) +// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( +// "user5Name", +// "IJoinCalls" +// ) +// } +// } +// +// step("Login as team owner in Android app") { +// pages.registrationPage.apply { +// assertEmailWelcomePage() +// } +// pages.loginPage.apply { +// clickStagingDeepLink() +// clickProceedButtonOnDeeplinkOverlay() +// } +// pages.loginPage.apply { +// enterTeamOwnerLoggingEmail(teamOwnerA?.email ?: "") +// clickLoginButton() +// enterTeamOwnerLoggingPassword(teamOwnerA?.password ?: "") +// clickLoginButton() +// } +// pages.registrationPage.apply { +// waitUntilLoginFlowIsCompleted() +// clickAllowNotificationButton() +// clickDeclineShareDataAlert() +// } +// +// step("Verify group conversation is visible and start a new conversation flow") { +// pages.conversationListPage.apply { +// assertGroupConversationVisible("GroupVideoCall") +// tapStartNewConversationButton() +// } +// +// step("Search for team owner from another team") { +// pages.searchPage.apply { +// tapSearchPeopleField() +// typeUniqueUserNameInSearchField(teamHelper, "user5Name") +// assertUsernameInSearchResultIs(teamOwnerB?.name ?: "") +// tapUsernameInSearchResult(teamOwnerB?.name ?: "") +// } +// step("Send connection request to existing team owner") { +// pages.unconnectedUserProfilePage.apply { +// assertUserNameInUnconnectedUserProfilePage(teamOwnerB?.name ?: "") +// clickConnectionRequestButton() +// waitUntilToastIsDisplayed("Connection request sent") +// //connectedUserProfilePage.assertToastMessageIsDisplayed("Connection request sent") +// clickCloseButtonOnUnconnectedUserProfilePage() +// } +// pages.conversationListPage.apply { +// clickCloseButtonOnNewConversationScreen() +// assertConversationNameWithPendingStatusVisibleInConversationList(teamOwnerB?.name ?: "") +// } +// +// step("Accept connection request via backend and start conversation") { +// runBlocking { +// val user = teamHelper.usersManager.findUserByNameOrNameAlias("user5Name") +// backendClient.acceptAllIncomingConnectionRequests(user) +// } +// waitFor(1) +// pages.conversationListPage.apply { +// assertPendingStatusIsNoLongerVisible() +// assertGroupConversationVisible("GroupVideoCall") +// assertConversationIsVisibleWithTeamOwner(teamOwnerB?.name ?: "") +// tapConversationNameInConversationList("GroupVideoCall") +// +// } +// pages.conversationViewPage.apply { +// clickOnGroupConversationDetails("GroupVideoCall") +// } +// pages.groupConversationDetailsPage.apply { +// tapOnParticipantsTab() +// tapAddParticipantsButton() +// assertUsernameInSuggestionsListIs(teamOwnerB?.name ?: "") +// selectUserInSuggestionList(teamOwnerB?.name ?: "") +// tapContinueButton() +// assertUsernameIsAddedToParticipantsList(teamOwnerB?.name ?: "") +// tapCloseButtonOnGroupConversationDetailsPage() +// waitUntilToastIsDisplayed("You added ${teamOwnerB?.name ?: ""} to the conversation") +// +// runBlocking { +// callHelper.userXStartsInstance( +// "user2Name, user3Name, user4Name, user5Name", +// "Chrome" +// ) +// +// runBlocking { +// callHelper.userXAcceptsNextIncomingCallAutomatically("user2Name, user3Name, user4Name, user5Name") +// } +// +// pages.conversationViewPage.apply { +// iTapStartCallButton() +// } +// +// step("Verify group call is active and participants joined") { +// runBlocking { +// callHelper.userVerifiesCallStatusToUserY( +// "user2Name, user3Name, user4Name, user5Name", +// "active", +// 90 +// ) +// } +// pages.callingPage.apply { +// iSeeOngoingGroupCall() +// +// } +// callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name, user5Name") +// } +// pages.callingPage.apply { +// iTurnCameraOn() +// } +// } +// waitFor(10) +// +// runBlocking { +// +// val callParticipantsVideo = +// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") +// callingManager.switchVideoOn(callParticipantsVideo) +// +// val callParticipantsAudioVideo = +// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") +// callingManager.verifyReceiveAudioAndVideo(callParticipantsAudioVideo) +// } +// waitFor(10) +// +// } +// +// } +// } +// +// +// } +// +// } +// } +// +// } +// } + + fun givenGroupCall_whenVideoIsEnabled_thenGroupVideoIsVisible() { + + step("Prepare team via backend (WeLikeCalls team + IJoinCalls team) with owners and members") { + teamHelper.usersManager.createTeamOwnerByAlias( + "user1Name", + "WeLikeCalls", + "en_US", + true, + backendClient, + context + ) + + teamHelper.userXAddsUsersToTeam( + "user1Name", + "user2Name, user3Name,user4Name", + "WeLikeCalls", + TeamRoles.Member, + backendClient, + context, + true + ) + + teamHelper.usersManager.createTeamOwnerByAlias( + "user5Name", + "IJoinCalls", + "en_US", + true, + backendClient, + context + ) + } + + step("WeLikeCalls team owner creates a group conversation with team members") { + testServiceHelper.userHasGroupConversationInTeam( + "user1Name", + "GroupVideoCall", + "user2Name, user3Name,user4Name", + "WeLikeCalls" + ) + } + + step("Prepare devices and unique username for group call participants") { + testServiceHelper.apply { + addDevice("user5Name", null, "Device1") + addDevice("user4Name", null, "Device2") + runBlocking { + usersSetUniqueUsername("user3Name") + } + } + } + + step("Resolve team owners for WeLikeCalls and IJoinCalls") { + teamOwnerA = teamHelper.usersManager.findUserBy( + "user1Name", + ClientUserManager.FindBy.NAME_ALIAS + ) + teamOwnerB = teamHelper.usersManager.findUserBy( + "user5Name", + ClientUserManager.FindBy.NAME_ALIAS + ) + } + + step("Enable conference calling feature for WeLikeCalls and IJoinCalls teams via backdoor") { + runBlocking { + callHelper.enableConferenceCallingFeatureViaBackdoorTeam( + "user1Name", + "WeLikeCalls" + ) + callHelper.enableConferenceCallingFeatureViaBackdoorTeam( + "user5Name", + "IJoinCalls" + ) + } + } + + step("Login as team owner in Android app") { + pages.registrationPage.apply { + assertEmailWelcomePage() + } + pages.loginPage.apply { + clickStagingDeepLink() + clickProceedButtonOnDeeplinkOverlay() + } + pages.loginPage.apply { + enterTeamOwnerLoggingEmail(teamOwnerA?.email ?: "") + clickLoginButton() + enterTeamOwnerLoggingPassword(teamOwnerA?.password ?: "") + clickLoginButton() + } + pages.registrationPage.apply { + waitUntilLoginFlowIsCompleted() + clickAllowNotificationButton() + clickDeclineShareDataAlert() + } + } + + step("Verify group conversation is visible and start a new conversation flow") { + pages.conversationListPage.apply { + assertGroupConversationVisible("GroupVideoCall") + tapStartNewConversationButton() + } + } + + step("Search for team owner from another team") { + pages.searchPage.apply { + tapSearchPeopleField() + typeUniqueUserNameInSearchField(teamHelper, "user5Name") + assertUsernameInSearchResultIs(teamOwnerB?.name ?: "") + tapUsernameInSearchResult(teamOwnerB?.name ?: "") + } + } + + step("Send connection request to existing team owner") { + pages.unconnectedUserProfilePage.apply { + assertUserNameInUnconnectedUserProfilePage(teamOwnerB?.name ?: "") + clickConnectionRequestButton() + waitUntilToastIsDisplayed("Connection request sent") + //connectedUserProfilePage.assertToastMessageIsDisplayed("Connection request sent") + clickCloseButtonOnUnconnectedUserProfilePage() + } + pages.conversationListPage.apply { + clickCloseButtonOnNewConversationScreen() + assertConversationNameWithPendingStatusVisibleInConversationList(teamOwnerB?.name ?: "") + } + } + + step("Accept connection request via backend and start conversation") { + runBlocking { + val user = teamHelper.usersManager.findUserByNameOrNameAlias("user5Name") + backendClient.acceptAllIncomingConnectionRequests(user) + } + + waitFor(1) + + pages.conversationListPage.apply { + assertPendingStatusIsNoLongerVisible() + assertGroupConversationVisible("GroupVideoCall") + assertConversationIsVisibleWithTeamOwner(teamOwnerB?.name ?: "") + tapConversationNameInConversationList("GroupVideoCall") + } + } + + step("Open group conversation details") { + pages.conversationViewPage.apply { + clickOnGroupConversationDetails("GroupVideoCall") + } + } + + step("Add TeamOwnerB to participants list") { + pages.groupConversationDetailsPage.apply { + tapOnParticipantsTab() + tapAddParticipantsButton() + assertUsernameInSuggestionsListIs(teamOwnerB?.name ?: "") + selectUserInSuggestionList(teamOwnerB?.name ?: "") + tapContinueButton() + assertUsernameIsAddedToParticipantsList(teamOwnerB?.name ?: "") + tapCloseButtonOnGroupConversationDetailsPage() + waitUntilToastIsDisplayed("You added ${teamOwnerB?.name ?: ""} to the conversation") + } + } + + step("Start call instances and auto-accept incoming call") { + runBlocking { + callHelper.userXStartsInstance( + "user2Name, user3Name, user4Name, user5Name", + "Chrome" + ) + + callHelper.userXAcceptsNextIncomingCallAutomatically( + "user2Name, user3Name, user4Name, user5Name" + ) + } + + pages.conversationViewPage.apply { + iTapStartCallButton() + } + } + + step("Verify group call is active and participants joined") { + runBlocking { + callHelper.userVerifiesCallStatusToUserY( + "user2Name, user3Name, user4Name, user5Name", + "active", + 90 + ) + } + + pages.callingPage.apply { + iSeeOngoingGroupCall() + } + + callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name, user5Name") + } + + step("Turn camera on") { + pages.callingPage.apply { + iTurnCameraOn() + } + } + + step("Switch video on for participants and verify audio/video") { + waitFor(2) + + runBlocking { + val callParticipantsSwitchVideoOn = + teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") + callingManager.switchVideoOn(callParticipantsSwitchVideoOn) + + val assertCallParticipantsReceiveAudioVideo = + teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") + callingManager.verifyReceiveAudioAndVideo(assertCallParticipantsReceiveAudioVideo) + + + callHelper.iSeeParticipantsInGroupVideoCall("user2Name, user3Name, user4Name, user5Name") + } + + waitFor(40) + } + } +} diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/PersonalAccountLifeCycle.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/PersonalAccountLifeCycle.kt index 41e3c6ba921..6a97883ea68 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/PersonalAccountLifeCycle.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/PersonalAccountLifeCycle.kt @@ -42,6 +42,7 @@ import kotlin.getValue import com.wire.android.tests.core.BaseUiTest import com.wire.android.tests.support.tags.Category import com.wire.android.tests.support.tags.TestCaseId +import uiautomatorutils.UiWaitUtils.waitUntilToastIsDisplayed @RunWith(AndroidJUnit4::class) class PersonalAccountLifeCycle : BaseUiTest() { @@ -159,8 +160,7 @@ class PersonalAccountLifeCycle : BaseUiTest() { } pages.unconnectedUserProfilePage.clickConnectionRequestButton() - pages.connectedUserProfilePage.assertToastMessageIsDisplayed("Connection request sent") - + waitUntilToastIsDisplayed("Connection request sent") pages.unconnectedUserProfilePage.clickCloseButtonOnUnconnectedUserProfilePage() pages.conversationListPage.clickCloseButtonOnNewConversationScreen() pages.conversationListPage @@ -208,7 +208,7 @@ class PersonalAccountLifeCycle : BaseUiTest() { clickShowMoreOptions() clickBlockOption() clickBlockButtonAlert() - assertToastMessageIsDisplayed("${teamOwner?.name ?: ""} blocked") + waitUntilToastIsDisplayed("${teamOwner?.name ?: ""} blocked") assertBlockedLabelVisible() assertUnblockUserButtonVisible() tapCloseButtonOnConnectedUserProfilePage() diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt index 8de3fba3762..a24cc68d238 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt @@ -28,6 +28,9 @@ data class CallingPage(private val device: UiDevice) { private val restoreCallButton = UiSelectorParams(text = "RETURN TO CALL") + private val turnCameraOnButton = UiSelectorParams(description = "Turn camera on") + + fun iSeeOngoingGroupCall(): CallingPage { try { @@ -47,4 +50,9 @@ data class CallingPage(private val device: UiDevice) { UiWaitUtils.waitElement(restoreCallButton).click() return this } + + fun iTurnCameraOn(): CallingPage { + UiWaitUtils.waitElement(turnCameraOnButton).click() + return this + } } diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConnectedUserProfilePage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConnectedUserProfilePage.kt index ed27395bcfb..faef5d2725f 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConnectedUserProfilePage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConnectedUserProfilePage.kt @@ -56,21 +56,6 @@ data class ConnectedUserProfilePage(private val device: UiDevice) { return this } - fun assertToastMessageIsDisplayed( - expectedMessage: String, - timeoutMillis: Long = 5_000 - ): ConnectedUserProfilePage { - val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) - val selector = By.text(expectedMessage) - val toast = device.wait(Until.findObject(selector), timeoutMillis) - - if (toast == null || toast.visibleBounds.isEmpty) { - throw AssertionError("Toast message '$expectedMessage' was not displayed within ${timeoutMillis}ms.") - } - - return this - } - fun tapCloseButtonOnConnectedUserProfilePage(): ConnectedUserProfilePage { UiWaitUtils.waitElement(closeButton).click() return this diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt index 222ca3b344b..ccd63af6363 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt @@ -62,6 +62,7 @@ data class ConversationViewPage(private val device: UiDevice) { private fun conversationDetails1On1(userName: String) = UiSelector().className("android.widget.TextView").text(userName) + private fun conversationDetailsGroup(userName: String) = UiSelectorParams(text = userName) private val sendButton = UiSelectorParams(description = "Send") private val backButton = UiSelectorParams(description = "Go back to conversation list") @@ -77,6 +78,7 @@ data class ConversationViewPage(private val device: UiDevice) { private fun sharingOption(label: String): UiSelectorParams { return UiSelectorParams(text = label, className = "android.widget.TextView") } + private fun fileWithName(name: String): UiSelectorParams { return UiSelectorParams(text = name) } @@ -408,6 +410,19 @@ data class ConversationViewPage(private val device: UiDevice) { return this } + fun clickOnGroupConversationDetails(userName: String): ConversationViewPage { + val params = conversationDetailsGroup(userName) + + UiWaitUtils.waitUntilVisible( + params = params, + timeoutMs = 5_000, + errorMessage = "Group conversation details for user '$userName' not visible" + ) + + UiWaitUtils.waitElement(params).click() + return this + } + fun iTapStartCallButton(): ConversationViewPage { UiWaitUtils.waitElement(startCallButton).click() return this diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/GroupConversationDetailsPage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/GroupConversationDetailsPage.kt index d705e178c85..e4095bf8554 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/GroupConversationDetailsPage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/GroupConversationDetailsPage.kt @@ -17,7 +17,9 @@ */ package com.wire.android.tests.core.pages +import androidx.test.uiautomator.By import androidx.test.uiautomator.UiDevice +import androidx.test.uiautomator.type import uiautomatorutils.UiSelectorParams import uiautomatorutils.UiWaitUtils @@ -29,6 +31,14 @@ data class GroupConversationDetailsPage(private val device: UiDevice) { private val removeGroupButton = UiSelectorParams(text = "Remove") + private val participantsTab = UiSelectorParams(text = "PARTICIPANTS") + + private val addParticipantsButton = UiSelectorParams(text = "Add participants") + + private val continueButton = UiSelectorParams(text = "Continue") + + private val closeButtonOnGroupConversationDetailsPage = UiSelectorParams(description = "Close conversation details") + fun tapShowMoreOptionsButton() { UiWaitUtils.waitElement(showMoreOptionsButton).click() } @@ -40,4 +50,74 @@ data class GroupConversationDetailsPage(private val device: UiDevice) { fun tapRemoveGroupButton() { UiWaitUtils.waitElement(removeGroupButton).click() } + + fun tapOnParticipantsTab() { + UiWaitUtils.waitElement(participantsTab).click() + } + + fun tapAddParticipantsButton() { + UiWaitUtils.waitElement(addParticipantsButton).click() + + } + + fun assertUsernameInSuggestionsListIs(expectedHandle: String): GroupConversationDetailsPage { + val handleSelector = UiSelectorParams( + className = "android.widget.TextView", + text = expectedHandle + ) + try { + UiWaitUtils.waitElement(params = handleSelector) + } catch (e: AssertionError) { + throw AssertionError( + "Expected user name in suggestion results to be '$expectedHandle' but its not '$expectedHandle'", + e + ) + } + return this + } + + fun selectUserInSuggestionList(expectedHandle: String): GroupConversationDetailsPage { + val handleSelector = UiSelectorParams( + className = "android.widget.TextView", + text = expectedHandle + ) + + val handleTextView = try { + UiWaitUtils.waitElement(params = handleSelector) + } catch (e: AssertionError) { + throw AssertionError( + "Expected user name '$expectedHandle' was not found in suggestion list", + e + ) + } + + handleTextView.parent.click() + + return this + } + + fun tapContinueButton() { + UiWaitUtils.waitElement(continueButton).click() + } + + fun assertUsernameIsAddedToParticipantsList(expectedHandle: String): GroupConversationDetailsPage { + val handleSelector = UiSelectorParams( + className = "android.widget.TextView", + text = expectedHandle + ) + try { + UiWaitUtils.waitElement(params = handleSelector) + } catch (e: AssertionError) { + throw AssertionError( + "Expected user name in participants list results to be '$expectedHandle' but its not '$expectedHandle'", + e + ) + } + return this + } + + fun tapCloseButtonOnGroupConversationDetailsPage(): GroupConversationDetailsPage { + UiWaitUtils.waitElement(closeButtonOnGroupConversationDetailsPage).click() + return this + } } diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/UnconnectedUserProfilePage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/UnconnectedUserProfilePage.kt index 5f8b4e742fb..1f77e9085d7 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/UnconnectedUserProfilePage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/UnconnectedUserProfilePage.kt @@ -17,7 +17,10 @@ */ package com.wire.android.tests.core.pages +import androidx.test.platform.app.InstrumentationRegistry +import androidx.test.uiautomator.By import androidx.test.uiautomator.UiDevice +import androidx.test.uiautomator.Until import org.junit.Assert import uiautomatorutils.UiSelectorParams import uiautomatorutils.UiWaitUtils @@ -79,4 +82,5 @@ data class UnconnectedUserProfilePage(private val device: UiDevice) { UiWaitUtils.waitElement(connectionRequestButton).click() return this } + } diff --git a/tests/testsSupport/src/main/call/CallHelper.kt b/tests/testsSupport/src/main/call/CallHelper.kt index 8e8168356bd..9d1d7b93674 100644 --- a/tests/testsSupport/src/main/call/CallHelper.kt +++ b/tests/testsSupport/src/main/call/CallHelper.kt @@ -101,4 +101,35 @@ class CallHelper { suspend fun userVerifiesAudio(callees: String) { callingManager.verifySendAndReceiveAudio(callees) } + + fun iSeeParticipantsInGroupVideoCall(participants: String) { + // 1. Resolve aliases into real usernames + val resolvedParticipants = usersManager.replaceAliasesOccurrences( + participants, + ClientUserManager.FindBy.NAME_ALIAS + ) + + // 2. Split into individual names and check each one + resolvedParticipants + .split(",") + .map { it.trim() } + .forEach { participant -> + try { + // In the video grid, each tile shows the participant name as a TextView label. + UiWaitUtils.waitElement( + UiSelectorParams( + text = participant + // If your UiSelectorParams supports it, you can make it stricter: + // className = "android.widget.TextView" + ) + ) + } catch (e: AssertionError) { + throw AssertionError( + "User '$participant' is not visible in the ongoing group video call (name label not found).", + e + ) + } + } + } + } diff --git a/tests/testsSupport/src/main/call/CallingManager.kt b/tests/testsSupport/src/main/call/CallingManager.kt index 178658ac638..25c75ccbd09 100644 --- a/tests/testsSupport/src/main/call/CallingManager.kt +++ b/tests/testsSupport/src/main/call/CallingManager.kt @@ -456,11 +456,19 @@ class CallingManager(private val usersManager: ClientUserManager) { userNames.forEach { name -> val user = usersManager.findUserByNameOrNameAlias(name) val flowsBefore = safeGetFlows(user) - for (flowBefore in flowsBefore) - assertPositiveFlowChange(user, flowBefore, audioRecv = true, videoRecv = true) + + check(flowsBefore.isNotEmpty()) { + "Found no flows for ${user.name}" + } + + for (flowBefore in flowsBefore) { + assertPositiveFlowChange(user, flowBefore, audioRecv = true, videoRecv = true + ) + } } } + suspend fun verifyNotSendOrReceiveVideo(userNames: List) { userNames.forEach { name -> val user = usersManager.findUserByNameOrNameAlias(name) diff --git a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt index f45a3e40433..cbf6c7ef962 100644 --- a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt +++ b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt @@ -27,7 +27,10 @@ import androidx.test.uiautomator.UiDevice import androidx.test.uiautomator.UiObject2 import androidx.test.uiautomator.UiSelector import androidx.test.uiautomator.Until +import uiautomatorutils.UiWaitUtils.toBySelector +import uiautomatorutils.UiWaitUtils.waitUntilVisible import java.io.IOException + private const val TIMEOUT_IN_MILLISECONDS = 10000L data class UiSelectorParams( @@ -171,4 +174,31 @@ object UiWaitUtils { } } } + + fun waitUntilVisible( + params: UiSelectorParams, + timeoutMs: Long = TIMEOUT_IN_MILLISECONDS, + errorMessage: String + ) { + val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) + try { + val sel = params.toBySelector() + if (!device.wait(Until.hasObject(sel), timeoutMs)) { + throw AssertionError() + } + } catch (e: AssertionError) { + throw AssertionError(errorMessage, e) + } + } + + fun waitUntilToastIsDisplayed( + message: String, + timeoutMs: Long = 5_000 + ) { + waitUntilVisible( + params = UiSelectorParams(textContains = message), + timeoutMs = timeoutMs, + errorMessage = "Toast message containing '$message' was not displayed within ${timeoutMs}ms." + ) + } } From bcd3713806601e8bbda99ce319239996a380cf06 Mon Sep 17 00:00:00 2001 From: emmaoke-w Date: Tue, 3 Feb 2026 11:41:24 +0100 Subject: [PATCH 02/22] group video call test wip --- .../core/criticalFlows/GroupVideoCall.kt | 97 ++++++++++++------- .../tests/core/pages/ConversationViewPage.kt | 29 ++++++ .../src/main/uiautomatorutils/UiWaitUtils.kt | 63 +++++++++++- 3 files changed, 151 insertions(+), 38 deletions(-) diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt index b6e9069bf91..c04564c7ac8 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt @@ -40,8 +40,11 @@ import org.junit.Test import org.junit.runner.RunWith import org.koin.test.inject import service.TestServiceHelper +import uiautomatorutils.KeyboardUtils.closeKeyboardIfOpened import uiautomatorutils.PermissionUtils.grantRuntimePermsForForegroundApp import uiautomatorutils.UiWaitUtils.WaitUtils.waitFor +import uiautomatorutils.UiWaitUtils.assertCantRecordAudioMessageViaDump +import uiautomatorutils.UiWaitUtils.iSeeSystemMessage import uiautomatorutils.UiWaitUtils.waitUntilToastIsDisplayed import user.usermanager.ClientUserManager import user.utils.ClientUser @@ -545,7 +548,7 @@ class GroupVideoCall : BaseUiTest() { tapContinueButton() assertUsernameIsAddedToParticipantsList(teamOwnerB?.name ?: "") tapCloseButtonOnGroupConversationDetailsPage() - waitUntilToastIsDisplayed("You added ${teamOwnerB?.name ?: ""} to the conversation") + iSeeSystemMessage("You added ${teamOwnerB?.name ?: ""} to the conversation") } } @@ -566,45 +569,67 @@ class GroupVideoCall : BaseUiTest() { } } - step("Verify group call is active and participants joined") { - runBlocking { - callHelper.userVerifiesCallStatusToUserY( - "user2Name, user3Name, user4Name, user5Name", - "active", - 90 - ) - } - - pages.callingPage.apply { - iSeeOngoingGroupCall() - } - - callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name, user5Name") - } - - step("Turn camera on") { - pages.callingPage.apply { - iTurnCameraOn() - } - } - - step("Switch video on for participants and verify audio/video") { - waitFor(2) +// step("Verify group call is active and participants joined") { +// runBlocking { +// callHelper.userVerifiesCallStatusToUserY( +// "user2Name, user3Name, user4Name, user5Name", +// "active", +// 90 +// ) +// } +// +// pages.callingPage.apply { +// iSeeOngoingGroupCall() +// } +// +// callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name, user5Name") +// } +// +// step("Turn camera on") { +// pages.callingPage.apply { +// iTurnCameraOn() +// } +// } +// +// step("Switch video on for participants and verify audio/video") { +// waitFor(2) +// +// runBlocking { +// val callParticipantsSwitchVideoOn = +// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") +// callingManager.switchVideoOn(callParticipantsSwitchVideoOn) +// +// val assertCallParticipantsReceiveAudioVideo = +// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") +// callingManager.verifyReceiveAudioAndVideo(assertCallParticipantsReceiveAudioVideo) +// +// +// callHelper.iSeeParticipantsInGroupVideoCall("user2Name, user3Name, user4Name, user5Name") +// } +// +// pages.callingPage.apply { +// iMinimiseOngoingCall() +// } + pages.conversationViewPage.apply { +// tapMessageInInputField() +// +// tapPingButton() +// +// iSeePingModalWithText("Are you sure you want to ping 5 people?") +// +// tapPingButtonModal() +// +// iSeeSystemMessage("You pinged") +// +// closeKeyboardIfOpened() - runBlocking { - val callParticipantsSwitchVideoOn = - teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") - callingManager.switchVideoOn(callParticipantsSwitchVideoOn) + iTapFileSharingButton() + tapSharingOption("Audio") - val assertCallParticipantsReceiveAudioVideo = - teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") - callingManager.verifyReceiveAudioAndVideo(assertCallParticipantsReceiveAudioVideo) - callHelper.iSeeParticipantsInGroupVideoCall("user2Name, user3Name, user4Name, user5Name") + assertCantRecordAudioMessageViaDump() + waitFor(50) } - - waitFor(40) } } -} diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt index ccd63af6363..ae00ed30b3d 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationViewPage.kt @@ -71,6 +71,12 @@ data class ConversationViewPage(private val device: UiDevice) { private val selfDeletingMessageLabel = UiSelectorParams(description = " Self-deleting message") + private val pingButton = UiSelectorParams(description = "Ping") + + private val pingButtonOnModal = UiSelectorParams(text = "Ping") + + private val pingAlert = UiSelectorParams(text = "Send a ping") + private fun selfDeleteOption(label: String): UiSelectorParams { return UiSelectorParams(text = label, className = "android.widget.TextView") } @@ -472,4 +478,27 @@ data class ConversationViewPage(private val device: UiDevice) { return this } + + fun tapPingButton(): ConversationViewPage { + UiWaitUtils.waitElement(pingButton).click() + return this + } + + fun tapPingButtonModal(): ConversationViewPage { + UiWaitUtils.waitElement(pingButtonOnModal).click() + return this + } + + fun iSeePingModalWithText(message: String): ConversationViewPage { + val messageSelector = UiSelectorParams(text = message) + + try { + UiWaitUtils.waitElement(messageSelector) + } catch (e: AssertionError) { + throw AssertionError("Message '$message' is not not visible on ping modal.", e) + } + + return this + } + } diff --git a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt index cbf6c7ef962..e6114e71ace 100644 --- a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt +++ b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt @@ -19,6 +19,9 @@ package uiautomatorutils import android.graphics.Rect import android.os.SystemClock +import android.view.accessibility.AccessibilityEvent +import androidx.test.espresso.Espresso.onView +import androidx.test.espresso.matcher.ViewMatchers.withText import androidx.test.platform.app.InstrumentationRegistry import androidx.test.uiautomator.By import androidx.test.uiautomator.BySelector @@ -27,10 +30,21 @@ import androidx.test.uiautomator.UiDevice import androidx.test.uiautomator.UiObject2 import androidx.test.uiautomator.UiSelector import androidx.test.uiautomator.Until -import uiautomatorutils.UiWaitUtils.toBySelector -import uiautomatorutils.UiWaitUtils.waitUntilVisible +import org.hamcrest.CoreMatchers.containsString import java.io.IOException + +import androidx.test.espresso.assertion.ViewAssertions.matches +import androidx.test.espresso.matcher.ViewMatchers.isDisplayed +import org.hamcrest.Matchers.containsString + +import androidx.test.espresso.Espresso.onView +import androidx.test.espresso.assertion.ViewAssertions.matches +import androidx.test.espresso.matcher.ViewMatchers.isDisplayed +import androidx.test.espresso.matcher.ViewMatchers.withText +import java.io.File + + private const val TIMEOUT_IN_MILLISECONDS = 10000L data class UiSelectorParams( @@ -201,4 +215,49 @@ object UiWaitUtils { errorMessage = "Toast message containing '$message' was not displayed within ${timeoutMs}ms." ) } + + fun iSeeSystemMessage( + message: String, + timeoutMs: Long = 5_000 + ) { + waitUntilVisible( + params = UiSelectorParams(textContains = message), + timeoutMs = timeoutMs, + errorMessage = "System message containing '$message' was not displayed within ${timeoutMs}ms." + ) + } + + + + fun assertCantRecordAudioMessageViaDump(timeoutMs: Long = 5_000) { + val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) + + val deadline = System.currentTimeMillis() + timeoutMs + val needle1 = "record an audio message" + val needle2 = "record an audio" + val needle3 = "during a call" + + while (System.currentTimeMillis() < deadline) { + val file = File( + InstrumentationRegistry.getInstrumentation().targetContext.cacheDir, + "window_dump.xml" + ) + device.dumpWindowHierarchy(file) + + val xml = file.readText() + + if (xml.contains(needle1, ignoreCase = true) || + xml.contains(needle2, ignoreCase = true) || + xml.contains(needle3, ignoreCase = true) + ) { + return + } + + Thread.sleep(150) + } + + throw AssertionError("Expected message about not recording audio during a call was not found in window hierarchy dump.") + } + + } From 8db3835c3ae362af606a6b236fe3a67c033c332c Mon Sep 17 00:00:00 2001 From: emmaoke-w Date: Fri, 6 Feb 2026 11:24:04 +0100 Subject: [PATCH 03/22] WIP --- kalium | 2 +- .../core/criticalFlows/GroupVideoCall.kt | 127 ++++++++++-------- .../src/main/uiautomatorutils/UiWaitUtils.kt | 82 +++++++---- 3 files changed, 132 insertions(+), 79 deletions(-) diff --git a/kalium b/kalium index adab6d5e52e..ae71a9a75ae 160000 --- a/kalium +++ b/kalium @@ -1 +1 @@ -Subproject commit adab6d5e52e5a8d2aed0ef0c0ecc855dcac8c7a8 +Subproject commit ae71a9a75ae63027c8970905ef5bdeabc59fee8b diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt index c04564c7ac8..1f5ef8e2c41 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt @@ -43,7 +43,7 @@ import service.TestServiceHelper import uiautomatorutils.KeyboardUtils.closeKeyboardIfOpened import uiautomatorutils.PermissionUtils.grantRuntimePermsForForegroundApp import uiautomatorutils.UiWaitUtils.WaitUtils.waitFor -import uiautomatorutils.UiWaitUtils.assertCantRecordAudioMessageViaDump +import uiautomatorutils.UiWaitUtils.assertToastDisplayed import uiautomatorutils.UiWaitUtils.iSeeSystemMessage import uiautomatorutils.UiWaitUtils.waitUntilToastIsDisplayed import user.usermanager.ClientUserManager @@ -513,7 +513,9 @@ class GroupVideoCall : BaseUiTest() { } pages.conversationListPage.apply { clickCloseButtonOnNewConversationScreen() - assertConversationNameWithPendingStatusVisibleInConversationList(teamOwnerB?.name ?: "") + assertConversationNameWithPendingStatusVisibleInConversationList( + teamOwnerB?.name ?: "" + ) } } @@ -559,8 +561,10 @@ class GroupVideoCall : BaseUiTest() { "Chrome" ) +// callHelper.userXAcceptsNextIncomingCallAutomatically( +// "user2Name, user3Name, user4Name, user5Name" callHelper.userXAcceptsNextIncomingCallAutomatically( - "user2Name, user3Name, user4Name, user5Name" + "user2Name, user3Name" ) } @@ -569,67 +573,82 @@ class GroupVideoCall : BaseUiTest() { } } -// step("Verify group call is active and participants joined") { + step("Verify group call is active and participants joined") { // runBlocking { // callHelper.userVerifiesCallStatusToUserY( // "user2Name, user3Name, user4Name, user5Name", // "active", // 90 // ) -// } -// -// pages.callingPage.apply { -// iSeeOngoingGroupCall() -// } -// -// callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name, user5Name") -// } -// -// step("Turn camera on") { -// pages.callingPage.apply { -// iTurnCameraOn() -// } -// } -// -// step("Switch video on for participants and verify audio/video") { -// waitFor(2) -// -// runBlocking { -// val callParticipantsSwitchVideoOn = -// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") -// callingManager.switchVideoOn(callParticipantsSwitchVideoOn) -// -// val assertCallParticipantsReceiveAudioVideo = -// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") -// callingManager.verifyReceiveAudioAndVideo(assertCallParticipantsReceiveAudioVideo) -// -// -// callHelper.iSeeParticipantsInGroupVideoCall("user2Name, user3Name, user4Name, user5Name") -// } -// -// pages.callingPage.apply { -// iMinimiseOngoingCall() -// } - pages.conversationViewPage.apply { -// tapMessageInInputField() -// -// tapPingButton() -// -// iSeePingModalWithText("Are you sure you want to ping 5 people?") -// -// tapPingButtonModal() -// -// iSeeSystemMessage("You pinged") -// -// closeKeyboardIfOpened() + runBlocking { + callHelper.userVerifiesCallStatusToUserY( + "user2Name, user3Name", + "active", + 90 + ) + } - iTapFileSharingButton() - tapSharingOption("Audio") + pages.callingPage.apply { + iSeeOngoingGroupCall() + } + + callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name") + } + + step("Turn camera on") { + pages.callingPage.apply { + iTurnCameraOn() + } + } + + step("Switch video on for participants and verify audio/video") { + waitFor(2) + + runBlocking { + val callParticipantsSwitchVideoOn = + teamHelper.usersManager.splitAliases("user2Name, user3Name") + callingManager.switchVideoOn(callParticipantsSwitchVideoOn) + + val assertCallParticipantsReceiveAudioVideo = + teamHelper.usersManager.splitAliases("user2Name, user3Name") + callingManager.verifyReceiveAudioAndVideo(assertCallParticipantsReceiveAudioVideo) + + + callHelper.iSeeParticipantsInGroupVideoCall("user2Name, user3Name") + } + + pages.callingPage.apply { + iMinimiseOngoingCall() + } + pages.conversationViewPage.apply { + tapMessageInInputField() + + tapPingButton() + + iSeePingModalWithText("Are you sure you want to ping 5 people?") + + tapPingButtonModal() + iSeeSystemMessage("You pinged") + + closeKeyboardIfOpened() + +// iTapFileSharingButton() +// tapSharingOption("Audio") + +// assertToastDisplayed("You can't record an audio message during a call.", trigger = { +// iTapFileSharingButton() +// tapSharingOption("Audio") +// }) + + assertToastDisplayed("You can't record an audio message during a call") { + iTapFileSharingButton() + tapSharingOption("Audio") + } - assertCantRecordAudioMessageViaDump() - waitFor(50) + waitFor(10) } } } +} diff --git a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt index e6114e71ace..2920b5fccb2 100644 --- a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt +++ b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt @@ -42,6 +42,7 @@ import androidx.test.espresso.Espresso.onView import androidx.test.espresso.assertion.ViewAssertions.matches import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.withText +import junit.framework.TestCase.assertTrue import java.io.File @@ -228,36 +229,69 @@ object UiWaitUtils { } - - fun assertCantRecordAudioMessageViaDump(timeoutMs: Long = 5_000) { - val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) - +// fun assertToastDisplayed(text: String, trigger: () -> Unit, timeoutMs: Long = 5_000L) { +// var toastDisplayed = false +// val startTimeMs = System.currentTimeMillis() +// +// val uiAutomation = InstrumentationRegistry.getInstrumentation().uiAutomation +// +// uiAutomation.setOnAccessibilityEventListener { event -> +// if (event.eventType == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED) { +// val className = event.className?.toString().orEmpty() +// val eventText = event.text?.joinToString(" ").orEmpty() +// +// if (className.contains("android.widget.Toast") && eventText.contains(text, ignoreCase = true)) { +// toastDisplayed = true +// } +// } +// } +// +// try { +// // IMPORTANT: trigger AFTER listener is set +// trigger() +// +// while (!toastDisplayed && System.currentTimeMillis() - startTimeMs < timeoutMs) { +// Thread.sleep(50) +// } +// +// assertTrue("Toast with text '$text' not found within ${timeoutMs}ms", toastDisplayed) +// } finally { +// uiAutomation.setOnAccessibilityEventListener(null) +// } + + fun assertToastDisplayed( + text: String, + timeoutMs: Long = 5_000L, + trigger: () -> Unit + ) { + var found = false val deadline = System.currentTimeMillis() + timeoutMs - val needle1 = "record an audio message" - val needle2 = "record an audio" - val needle3 = "during a call" - - while (System.currentTimeMillis() < deadline) { - val file = File( - InstrumentationRegistry.getInstrumentation().targetContext.cacheDir, - "window_dump.xml" - ) - device.dumpWindowHierarchy(file) - - val xml = file.readText() + val uiAutomation = InstrumentationRegistry.getInstrumentation().uiAutomation - if (xml.contains(needle1, ignoreCase = true) || - xml.contains(needle2, ignoreCase = true) || - xml.contains(needle3, ignoreCase = true) + uiAutomation.setOnAccessibilityEventListener { event -> + if (event.eventType == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED && + event.className?.toString() == "android.widget.Toast" && + event.text.joinToString(" ").contains(text) ) { - return + found = true } - - Thread.sleep(150) } - throw AssertionError("Expected message about not recording audio during a call was not found in window hierarchy dump.") - } + try { + // Trigger action AFTER listener is active + trigger() + + while (!found && System.currentTimeMillis() < deadline) { + SystemClock.sleep(50) + } + assertTrue( + "Toast with text '$text' was not displayed", + found + ) + } finally { + uiAutomation.setOnAccessibilityEventListener(null) + } + } } From f8724891e30dee9f6151b342b2461b9e311d29d8 Mon Sep 17 00:00:00 2001 From: emmaoke-w Date: Thu, 19 Feb 2026 19:08:38 +0100 Subject: [PATCH 04/22] update locator --- gradle/libs.versions.toml | 2 +- .../core/criticalFlows/GroupVideoCall.kt | 315 +----------------- .../tests/core/pages/ConversationListPage.kt | 2 +- .../src/main/service/TestServiceHelper.kt | 31 ++ 4 files changed, 46 insertions(+), 304 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index cc8211cfb63..5362d712553 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -12,7 +12,7 @@ ktx-dateTime = "0.6.1" ktx-immutableCollections = "0.3.8" ktx-serialization = "1.8.1" koin = "3.5.3" -datafaker = "2.4.2" +datafaker = "1.9.0" # Android Core / Architecture detekt = "1.23.8" diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt index 1f5ef8e2c41..659872e4c50 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt @@ -90,307 +90,6 @@ class GroupVideoCall : BaseUiTest() { @TestCaseId("TC-8608") @Category("criticalFlow") @Test -// fun givenGroupCall_whenVideoIsEnabled_thenGroupVideoIsVisible() { -// step("Prepare team via backend (WeLikeCalls team + IJoinCalls team) with owners and members") { -// teamHelper.usersManager.createTeamOwnerByAlias( -// "user1Name", -// "WeLikeCalls", -// "en_US", -// true, -// backendClient, -// context -// ) -// -// teamHelper.userXAddsUsersToTeam( -// "user1Name", -// "user2Name, user3Name,user4Name", -// "WeLikeCalls", -// TeamRoles.Member, -// backendClient, -// context, -// true -// ) -// -// teamHelper.usersManager.createTeamOwnerByAlias( -// "user5Name", -// "IJoinCalls", -// "en_US", -// true, -// backendClient, -// context -// ) -// -// step("WeLikeCalls team owner creates a group conversation with team members") { -// testServiceHelper.userHasGroupConversationInTeam( -// "user1Name", -// "GroupVideoCall", -// "user2Name, user3Name,user4Name", -// "WeLikeCalls" -// ) -// } -// -// step("Prepare devices and unique username for group call participants") { -// testServiceHelper.apply { -// addDevice("user5Name", null, "Device1") -// addDevice("user4Name", null, "Device2") -// runBlocking { -// usersSetUniqueUsername("user3Name") -// } -// } -// } -// -// -// teamOwnerA = teamHelper.usersManager.findUserBy("user1Name", ClientUserManager.FindBy.NAME_ALIAS) -// teamOwnerB = teamHelper.usersManager.findUserBy("user5Name", ClientUserManager.FindBy.NAME_ALIAS) -// -// step("Enable conference calling feature for WeLikeCalls and IJoinCalls teams via backdoor") { -// runBlocking { -// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( -// "user1Name", -// "WeLikeCalls" -// ) -// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( -// "user5Name", -// "IJoinCalls" -// ) -// } -// } -// -// step("Login as team owner in Android app") { -// pages.registrationPage.apply { -// assertEmailWelcomePage() -// } -// pages.loginPage.apply { -// clickStagingDeepLink() -// clickProceedButtonOnDeeplinkOverlay() -// } -// pages.loginPage.apply { -// enterTeamOwnerLoggingEmail(teamOwnerA?.email ?: "") -// clickLoginButton() -// enterTeamOwnerLoggingPassword(teamOwnerA?.password ?: "") -// clickLoginButton() -// } -// pages.registrationPage.apply { -// waitUntilLoginFlowIsCompleted() -// clickAllowNotificationButton() -// clickDeclineShareDataAlert() -// -// waitFor(60) -// } -// } -// -// } -// } -// } - - -// fun givenGroupCall_whenVideoIsEnabled_thenGroupVideoIsVisible() { -// -// step("Prepare team via backend (WeLikeCalls team + IJoinCalls team) with owners and members") { -// teamHelper.usersManager.createTeamOwnerByAlias( -// "user1Name", -// "WeLikeCalls", -// "en_US", -// true, -// backendClient, -// context -// ) -// -// teamHelper.userXAddsUsersToTeam( -// "user1Name", -// "user2Name, user3Name,user4Name", -// "WeLikeCalls", -// TeamRoles.Member, -// backendClient, -// context, -// true -// ) -// -// teamHelper.usersManager.createTeamOwnerByAlias( -// "user5Name", -// "IJoinCalls", -// "en_US", -// true, -// backendClient, -// context -// ) -// } -// -// step("WeLikeCalls team owner creates a group conversation with team members") { -// testServiceHelper.userHasGroupConversationInTeam( -// "user1Name", -// "GroupVideoCall", -// "user2Name, user3Name,user4Name", -// "WeLikeCalls" -// ) -// } -// -// step("Prepare devices and unique username for group call participants") { -// testServiceHelper.apply { -// addDevice("user5Name", null, "Device1") -// addDevice("user4Name", null, "Device2") -// runBlocking { -// usersSetUniqueUsername("user3Name") -// } -// } -// } -// -// step("Resolve team owners for WeLikeCalls and IJoinCalls") { -// teamOwnerA = teamHelper.usersManager.findUserBy( -// "user1Name", -// ClientUserManager.FindBy.NAME_ALIAS -// ) -// teamOwnerB = teamHelper.usersManager.findUserBy( -// "user5Name", -// ClientUserManager.FindBy.NAME_ALIAS -// ) -// } -// -// step("Enable conference calling feature for WeLikeCalls and IJoinCalls teams via backdoor") { -// runBlocking { -// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( -// "user1Name", -// "WeLikeCalls" -// ) -// callHelper.enableConferenceCallingFeatureViaBackdoorTeam( -// "user5Name", -// "IJoinCalls" -// ) -// } -// } -// -// step("Login as team owner in Android app") { -// pages.registrationPage.apply { -// assertEmailWelcomePage() -// } -// pages.loginPage.apply { -// clickStagingDeepLink() -// clickProceedButtonOnDeeplinkOverlay() -// } -// pages.loginPage.apply { -// enterTeamOwnerLoggingEmail(teamOwnerA?.email ?: "") -// clickLoginButton() -// enterTeamOwnerLoggingPassword(teamOwnerA?.password ?: "") -// clickLoginButton() -// } -// pages.registrationPage.apply { -// waitUntilLoginFlowIsCompleted() -// clickAllowNotificationButton() -// clickDeclineShareDataAlert() -// } -// -// step("Verify group conversation is visible and start a new conversation flow") { -// pages.conversationListPage.apply { -// assertGroupConversationVisible("GroupVideoCall") -// tapStartNewConversationButton() -// } -// -// step("Search for team owner from another team") { -// pages.searchPage.apply { -// tapSearchPeopleField() -// typeUniqueUserNameInSearchField(teamHelper, "user5Name") -// assertUsernameInSearchResultIs(teamOwnerB?.name ?: "") -// tapUsernameInSearchResult(teamOwnerB?.name ?: "") -// } -// step("Send connection request to existing team owner") { -// pages.unconnectedUserProfilePage.apply { -// assertUserNameInUnconnectedUserProfilePage(teamOwnerB?.name ?: "") -// clickConnectionRequestButton() -// waitUntilToastIsDisplayed("Connection request sent") -// //connectedUserProfilePage.assertToastMessageIsDisplayed("Connection request sent") -// clickCloseButtonOnUnconnectedUserProfilePage() -// } -// pages.conversationListPage.apply { -// clickCloseButtonOnNewConversationScreen() -// assertConversationNameWithPendingStatusVisibleInConversationList(teamOwnerB?.name ?: "") -// } -// -// step("Accept connection request via backend and start conversation") { -// runBlocking { -// val user = teamHelper.usersManager.findUserByNameOrNameAlias("user5Name") -// backendClient.acceptAllIncomingConnectionRequests(user) -// } -// waitFor(1) -// pages.conversationListPage.apply { -// assertPendingStatusIsNoLongerVisible() -// assertGroupConversationVisible("GroupVideoCall") -// assertConversationIsVisibleWithTeamOwner(teamOwnerB?.name ?: "") -// tapConversationNameInConversationList("GroupVideoCall") -// -// } -// pages.conversationViewPage.apply { -// clickOnGroupConversationDetails("GroupVideoCall") -// } -// pages.groupConversationDetailsPage.apply { -// tapOnParticipantsTab() -// tapAddParticipantsButton() -// assertUsernameInSuggestionsListIs(teamOwnerB?.name ?: "") -// selectUserInSuggestionList(teamOwnerB?.name ?: "") -// tapContinueButton() -// assertUsernameIsAddedToParticipantsList(teamOwnerB?.name ?: "") -// tapCloseButtonOnGroupConversationDetailsPage() -// waitUntilToastIsDisplayed("You added ${teamOwnerB?.name ?: ""} to the conversation") -// -// runBlocking { -// callHelper.userXStartsInstance( -// "user2Name, user3Name, user4Name, user5Name", -// "Chrome" -// ) -// -// runBlocking { -// callHelper.userXAcceptsNextIncomingCallAutomatically("user2Name, user3Name, user4Name, user5Name") -// } -// -// pages.conversationViewPage.apply { -// iTapStartCallButton() -// } -// -// step("Verify group call is active and participants joined") { -// runBlocking { -// callHelper.userVerifiesCallStatusToUserY( -// "user2Name, user3Name, user4Name, user5Name", -// "active", -// 90 -// ) -// } -// pages.callingPage.apply { -// iSeeOngoingGroupCall() -// -// } -// callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name, user5Name") -// } -// pages.callingPage.apply { -// iTurnCameraOn() -// } -// } -// waitFor(10) -// -// runBlocking { -// -// val callParticipantsVideo = -// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") -// callingManager.switchVideoOn(callParticipantsVideo) -// -// val callParticipantsAudioVideo = -// teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name, user5Name") -// callingManager.verifyReceiveAudioAndVideo(callParticipantsAudioVideo) -// } -// waitFor(10) -// -// } -// -// } -// } -// -// -// } -// -// } -// } -// -// } -// } - fun givenGroupCall_whenVideoIsEnabled_thenGroupVideoIsVisible() { step("Prepare team via backend (WeLikeCalls team + IJoinCalls team) with owners and members") { @@ -647,7 +346,19 @@ class GroupVideoCall : BaseUiTest() { } - waitFor(10) + waitFor(2) + + step("Receive and assert audio file message in conversation") { + pages.conversationViewPage.apply { + testServiceHelper.contactSendsLocalAudioConversation( + context, + "AudioFile", + "user3Name", + "Device2", + "GroupVideoCall" + ) + } + } } } } diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt index aeee4a71303..3e5efb0bf73 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt @@ -43,7 +43,7 @@ data class ConversationListPage(private val device: UiDevice) { private val conversationNameSelector: (String) -> UiSelectorParams = { conversationName -> UiSelectorParams(text = conversationName) } - private val startNewConversation = UiSelectorParams(description = "Search for people or create a new conversation") + private val startNewConversation = UiSelectorParams(description = "New. Start a new conversation") private val backArrowButtonInsideSearchField = UiSelectorParams( className = "android.view.View", description = "Go back to add participants view" diff --git a/tests/testsSupport/src/main/service/TestServiceHelper.kt b/tests/testsSupport/src/main/service/TestServiceHelper.kt index ac62801f555..d05d65c0b92 100644 --- a/tests/testsSupport/src/main/service/TestServiceHelper.kt +++ b/tests/testsSupport/src/main/service/TestServiceHelper.kt @@ -133,6 +133,34 @@ class TestServiceHelper( ) } + fun contactSendsLocalAudioConversation( + context: Context, + fileName: String, + senderAlias: String, + deviceName: String, + dstConvoName: String + ) { + val audio = getRawResourceAsFile(context, R.raw.test, fileName) + val conversation = toConvoObj(senderAlias, dstConvoName) // ✅ calls alias overload + + if (audio?.exists() != true) { + throw Exception("Audio file not found") + } + + val convoId = conversation.qualifiedID.id + val convoDomain = conversation.qualifiedID.domain + + testServiceClient.sendFile( + toClientUser(senderAlias), + deviceName, + convoId, + convoDomain, + getSelfDeletingMessageTimeout(senderAlias, dstConvoName), + audio.absolutePath.orEmpty(), + "audio/mp4" + ) + } + fun userXAddedContactsToGroupChat( userAsNameAlias: String, contactsToAddNameAliases: String, @@ -251,6 +279,9 @@ class TestServiceHelper( return backend.getPersonalConversationByName(owner, convoName) } + fun toConvoObj(ownerAlias: String, convoName: String): Conversation = + toConvoObj(toClientUser(ownerAlias), convoName) + fun toConvoObj(owner: ClientUser, convoName: String): Conversation { val convoName = usersManager.replaceAliasesOccurrences(convoName, ClientUserManager.FindBy.NAME_ALIAS) val backend = BackendClient.loadBackend(owner.backendName.orEmpty()) From 9801e35cbd123b4a6b3745307bad0ad0430dccb1 Mon Sep 17 00:00:00 2001 From: emmaoke-w Date: Fri, 20 Feb 2026 18:19:37 +0100 Subject: [PATCH 05/22] wip --- .../criticalFlows/FileSharingBetweenTeams.kt | 3 + .../core/criticalFlows/GroupVideoCall.kt | 178 ++++++++++-------- .../android/tests/core/pages/CallingPage.kt | 16 ++ .../src/main/service/TestServiceHelper.kt | 105 +++++++++-- .../src/main/uiautomatorutils/UiWaitUtils.kt | 102 +++++----- 5 files changed, 258 insertions(+), 146 deletions(-) diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt index e6175948e4d..1390cb41412 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt @@ -164,7 +164,10 @@ class FileSharingBetweenTeams : BaseUiTest() { assertConnectionRequestNotificationTextIsDisplayed() assertAcceptButtonIsDisplayed() assertIgnoreButtonIsDisplayed() + + clickAcceptButton() + } } diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt index 659872e4c50..ad350ef6572 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt @@ -82,8 +82,8 @@ class GroupVideoCall : BaseUiTest() { @After fun tearDown() { - runCatching { teamOwnerA?.deleteTeam(backendClient) } - runCatching { teamOwnerB?.deleteTeam(backendClient) } + // runCatching { teamOwnerA?.deleteTeam(backendClient) } + // runCatching { teamOwnerB?.deleteTeam(backendClient) } } @Suppress("CyclomaticComplexMethod", "LongMethod") @@ -104,7 +104,7 @@ class GroupVideoCall : BaseUiTest() { teamHelper.userXAddsUsersToTeam( "user1Name", - "user2Name, user3Name,user4Name", + "user2Name, user3Name", "WeLikeCalls", TeamRoles.Member, backendClient, @@ -113,7 +113,7 @@ class GroupVideoCall : BaseUiTest() { ) teamHelper.usersManager.createTeamOwnerByAlias( - "user5Name", + "user4Name", "IJoinCalls", "en_US", true, @@ -126,15 +126,15 @@ class GroupVideoCall : BaseUiTest() { testServiceHelper.userHasGroupConversationInTeam( "user1Name", "GroupVideoCall", - "user2Name, user3Name,user4Name", + "user2Name, user3Name", "WeLikeCalls" ) } step("Prepare devices and unique username for group call participants") { testServiceHelper.apply { - addDevice("user5Name", null, "Device1") addDevice("user4Name", null, "Device2") + addDevice("user3Name", null, "Device1") runBlocking { usersSetUniqueUsername("user3Name") } @@ -147,7 +147,7 @@ class GroupVideoCall : BaseUiTest() { ClientUserManager.FindBy.NAME_ALIAS ) teamOwnerB = teamHelper.usersManager.findUserBy( - "user5Name", + "user4Name", ClientUserManager.FindBy.NAME_ALIAS ) } @@ -159,7 +159,7 @@ class GroupVideoCall : BaseUiTest() { "WeLikeCalls" ) callHelper.enableConferenceCallingFeatureViaBackdoorTeam( - "user5Name", + "user4Name", "IJoinCalls" ) } @@ -196,7 +196,7 @@ class GroupVideoCall : BaseUiTest() { step("Search for team owner from another team") { pages.searchPage.apply { tapSearchPeopleField() - typeUniqueUserNameInSearchField(teamHelper, "user5Name") + typeUniqueUserNameInSearchField(teamHelper, "user4Name") assertUsernameInSearchResultIs(teamOwnerB?.name ?: "") tapUsernameInSearchResult(teamOwnerB?.name ?: "") } @@ -207,10 +207,10 @@ class GroupVideoCall : BaseUiTest() { assertUserNameInUnconnectedUserProfilePage(teamOwnerB?.name ?: "") clickConnectionRequestButton() waitUntilToastIsDisplayed("Connection request sent") - //connectedUserProfilePage.assertToastMessageIsDisplayed("Connection request sent") clickCloseButtonOnUnconnectedUserProfilePage() } pages.conversationListPage.apply { + waitFor(3) clickCloseButtonOnNewConversationScreen() assertConversationNameWithPendingStatusVisibleInConversationList( teamOwnerB?.name ?: "" @@ -253,17 +253,18 @@ class GroupVideoCall : BaseUiTest() { } } + step("Start call instances and auto-accept incoming call") { runBlocking { callHelper.userXStartsInstance( - "user2Name, user3Name, user4Name, user5Name", + "user2Name, user3Name, user4Name", "Chrome" ) -// callHelper.userXAcceptsNextIncomingCallAutomatically( -// "user2Name, user3Name, user4Name, user5Name" callHelper.userXAcceptsNextIncomingCallAutomatically( - "user2Name, user3Name" + "user2Name, user3Name, user4Name" +// callHelper.userXAcceptsNextIncomingCallAutomatically( +// "user2Name, user3Name" ) } @@ -273,93 +274,106 @@ class GroupVideoCall : BaseUiTest() { } step("Verify group call is active and participants joined") { -// runBlocking { -// callHelper.userVerifiesCallStatusToUserY( -// "user2Name, user3Name, user4Name, user5Name", -// "active", -// 90 -// ) runBlocking { callHelper.userVerifiesCallStatusToUserY( - "user2Name, user3Name", + "user2Name, user3Name, user4Name", "active", 90 ) - } - - pages.callingPage.apply { - iSeeOngoingGroupCall() - } - - callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name") - } - - step("Turn camera on") { - pages.callingPage.apply { - iTurnCameraOn() - } - } - - step("Switch video on for participants and verify audio/video") { - waitFor(2) - - runBlocking { - val callParticipantsSwitchVideoOn = - teamHelper.usersManager.splitAliases("user2Name, user3Name") - callingManager.switchVideoOn(callParticipantsSwitchVideoOn) - - val assertCallParticipantsReceiveAudioVideo = - teamHelper.usersManager.splitAliases("user2Name, user3Name") - callingManager.verifyReceiveAudioAndVideo(assertCallParticipantsReceiveAudioVideo) +// runBlocking { +// callHelper.userVerifiesCallStatusToUserY( +// "user2Name, user3Name, user4Name", +// "active", +// 90 +// ) + } + pages.callingPage.apply { + iSeeOngoingGroupCall() + } - callHelper.iSeeParticipantsInGroupVideoCall("user2Name, user3Name") + callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name") } - pages.callingPage.apply { - iMinimiseOngoingCall() + step("Turn camera on") { + pages.callingPage.apply { + iTurnCameraOn() + } } - pages.conversationViewPage.apply { - tapMessageInInputField() - - tapPingButton() - - iSeePingModalWithText("Are you sure you want to ping 5 people?") - tapPingButtonModal() - - iSeeSystemMessage("You pinged") + step("Switch video on for participants and verify audio/video") { + waitFor(2) - closeKeyboardIfOpened() + runBlocking { + val callParticipantsSwitchVideoOn = + teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name") + callingManager.switchVideoOn(callParticipantsSwitchVideoOn) -// iTapFileSharingButton() -// tapSharingOption("Audio") + val assertCallParticipantsReceiveAudioVideo = + teamHelper.usersManager.splitAliases("user2Name, user3Name, user4Name") + callingManager.verifyReceiveAudioAndVideo(assertCallParticipantsReceiveAudioVideo) -// assertToastDisplayed("You can't record an audio message during a call.", trigger = { -// iTapFileSharingButton() -// tapSharingOption("Audio") -// }) - assertToastDisplayed("You can't record an audio message during a call") { - iTapFileSharingButton() - tapSharingOption("Audio") + callHelper.iSeeParticipantsInGroupVideoCall("user2Name, user3Name, user4Name") } - - waitFor(2) - - step("Receive and assert audio file message in conversation") { - pages.conversationViewPage.apply { - testServiceHelper.contactSendsLocalAudioConversation( - context, - "AudioFile", - "user3Name", - "Device2", - "GroupVideoCall" - ) + pages.callingPage.apply { + iMinimiseOngoingCall() + } + pages.conversationViewPage.apply { + tapMessageInInputField() + + tapPingButton() + + iSeePingModalWithText("Are you sure you want to ping 5 people?") + + tapPingButtonModal() + + iSeeSystemMessage("You pinged") + + closeKeyboardIfOpened() + + + assertToastDisplayed("You can't record an audio message during a call.", trigger = { + iTapFileSharingButton() + tapSharingOption("Audio") + iTapFileSharingButton() + + }) + + + waitFor(2) + + step("Receive and assert audio file message in conversation") { + pages.conversationViewPage.apply { + testServiceHelper.contactSendsLocalAudioConversation( + context, + "AudioFile", + "user3Name", + "Device1", + "GroupVideoCall" + ) + waitFor(8) + assertAudioMessageIsVisible() + assertAudioTimeStartsAtZero() + } + + step("Play audio message and verify playback time progresses") { + pages.conversationViewPage.apply { + clickPlayButtonOnAudioMessage() + waitFor(18) + clickPauseButtonOnAudioMessage() + assertAudioTimeIsNotZeroAnymore() + } + pages.callingPage.apply { + iRestoreOngoingCall() + callHelper.iSeeParticipantsInGroupCall("user2Name, user3Name, user4Name") + iTapOnHangUpButton() + iDoNotSeeOngoingGroupCall() + } + } } } } } } -} diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt index a24cc68d238..c2658a405fa 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/CallingPage.kt @@ -17,9 +17,11 @@ */ package com.wire.android.tests.core.pages +import androidx.test.platform.app.InstrumentationRegistry import androidx.test.uiautomator.UiDevice import uiautomatorutils.UiSelectorParams import uiautomatorutils.UiWaitUtils +import uiautomatorutils.UiWaitUtils.waitUntilElementGone data class CallingPage(private val device: UiDevice) { private val hangUpCallButton = UiSelectorParams(description = "Hang up call") @@ -55,4 +57,18 @@ data class CallingPage(private val device: UiDevice) { UiWaitUtils.waitElement(turnCameraOnButton).click() return this } + + fun iTapOnHangUpButton(): CallingPage { + UiWaitUtils.waitElement(hangUpCallButton).click() + return this + } + + fun iDoNotSeeOngoingGroupCall(): CallingPage { + try { + UiWaitUtils.waitElement(hangUpCallButton, timeoutMillis = 15_000) + } catch (e: AssertionError) { + return this + } + throw AssertionError("Ongoing call still displayed") + } } diff --git a/tests/testsSupport/src/main/service/TestServiceHelper.kt b/tests/testsSupport/src/main/service/TestServiceHelper.kt index d05d65c0b92..387031e4184 100644 --- a/tests/testsSupport/src/main/service/TestServiceHelper.kt +++ b/tests/testsSupport/src/main/service/TestServiceHelper.kt @@ -65,12 +65,55 @@ class TestServiceHelper( } } +// fun getSelfDeletingMessageTimeout(userAlias: String, conversationName: String): Duration { +// val user = usersManager.findUserByNameOrNameAlias(userAlias) +// +// // Only team users support enforced self-deleting messages +// user.teamId?.let { +// val settings = BackendClient.loadBackend(user.backendName.orEmpty()).getSelfDeletingMessagesSettings(user) +// +// if (settings.getString("status") == "enabled") { +// val timeoutInSeconds = settings +// .getJSONObject("config") +// .getInt("enforcedTimeoutSeconds") +// +// if (timeoutInSeconds != 0) { +// // Timeout value is enforced in team settings +// return Duration.ofSeconds(timeoutInSeconds.toLong()) +// } +// } else { +// // Timeout is disabled +// return Duration.ZERO +// } +// } +// +// // Personal user or team user without set enforced self-deleting message setting +// +// val resolvedConversationName = usersManager.replaceAliasesOccurrences( +// conversationName, +// ClientUserManager.FindBy.NAME_ALIAS +// ) +// +// // val messageTimerMillis = toConvoObjPersonal(user, resolvedConversationName).messageTimerInMilliseconds +// val messageTimerMillis = toConvoObj(user, resolvedConversationName).messageTimerInMilliseconds +// if (messageTimerMillis > 0) { +// return Duration.ofMillis(messageTimerMillis.toLong()) +// } +// +// // Otherwise check for local/client-side self-deleting message timeout +// return Duration.ofSeconds(Long.MAX_VALUE) +// } + + + fun getSelfDeletingMessageTimeout(userAlias: String, conversationName: String): Duration { val user = usersManager.findUserByNameOrNameAlias(userAlias) // Only team users support enforced self-deleting messages user.teamId?.let { - val settings = BackendClient.loadBackend(user.backendName.orEmpty()).getSelfDeletingMessagesSettings(user) + val settings = BackendClient + .loadBackend(user.backendName.orEmpty()) + .getSelfDeletingMessagesSettings(user) if (settings.getString("status") == "enabled") { val timeoutInSeconds = settings @@ -87,22 +130,61 @@ class TestServiceHelper( } } - // Personal user or team user without set enforced self-deleting message setting - + // Personal user or team user without enforced setting val resolvedConversationName = usersManager.replaceAliasesOccurrences( conversationName, ClientUserManager.FindBy.NAME_ALIAS ) - val messageTimerMillis = toConvoObjPersonal(user, resolvedConversationName).messageTimerInMilliseconds - if (messageTimerMillis > 0) { - return Duration.ofMillis(messageTimerMillis.toLong()) + val conversationMessageTimerMillis = getConversationMessageTimer(user, resolvedConversationName) + if (conversationMessageTimerMillis > 0) { + return Duration.ofMillis(conversationMessageTimerMillis.toLong()) + } + + return getLocalSelfDeletingMessageTimeout(userAlias, resolvedConversationName) + } + + /** + * Java equivalent of getConversationMessageTimer(user, conversationName), + * but implemented safely for Kotlin: + * - If conversationName points to a USER => personal convo lookup + * - Otherwise => group convo lookup + */ + private fun getConversationMessageTimer(user: ClientUser, conversationName: String): Int { + val isPersonalConversationName = runCatching { + // If this succeeds, conversationName is a user name/alias (1:1 style like "user4Name") + usersManager.findUserByNameOrNameAlias(conversationName) + }.isSuccess + + val conversation = if (isPersonalConversationName) { + // Personal first, fallback to group just in case + runCatching { toConvoObjPersonal(user, conversationName) } + .recoverCatching { toConvoObj(user, conversationName) } + .getOrThrow() + } else { + // Group first, fallback to personal just in case + runCatching { toConvoObj(user, conversationName) } + .recoverCatching { toConvoObjPersonal(user, conversationName) } + .getOrThrow() } - // Otherwise check for local/client-side self-deleting message timeout - return Duration.ofSeconds(Long.MAX_VALUE) + return conversation.messageTimerInMilliseconds + } + + /** + * Java equivalent of getLocalSelfDeletingMessageTimeout(...). + * + * CRITICAL: + * - Do NOT use Long.MAX_VALUE (it can overflow to -1 in your HTTP layer) + * - Do NOT use Duration.ZERO if your sendFile treats 0 as "expire immediately" + * + * This value is "effectively never" for tests AND safe even if converted to Int milliseconds. + */ + private fun getLocalSelfDeletingMessageTimeout(userAlias: String, conversationName: String): Duration { + return Duration.ofMillis(Int.MAX_VALUE.toLong()) // ~24.8 days, safe int millis } + fun contactSendsLocalAudioPersonalMLSConversation( context: Context, fileName: String, @@ -141,9 +223,9 @@ class TestServiceHelper( dstConvoName: String ) { val audio = getRawResourceAsFile(context, R.raw.test, fileName) - val conversation = toConvoObj(senderAlias, dstConvoName) // ✅ calls alias overload + val conversation = toConvoObj(toClientUser(senderAlias), dstConvoName) - if (audio?.exists() != true) { + if (audio?.exists() != true) { throw Exception("Audio file not found") } @@ -279,9 +361,6 @@ class TestServiceHelper( return backend.getPersonalConversationByName(owner, convoName) } - fun toConvoObj(ownerAlias: String, convoName: String): Conversation = - toConvoObj(toClientUser(ownerAlias), convoName) - fun toConvoObj(owner: ClientUser, convoName: String): Conversation { val convoName = usersManager.replaceAliasesOccurrences(convoName, ClientUserManager.FindBy.NAME_ALIAS) val backend = BackendClient.loadBackend(owner.backendName.orEmpty()) diff --git a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt index 2920b5fccb2..0dae5b11792 100644 --- a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt +++ b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt @@ -229,69 +229,69 @@ object UiWaitUtils { } -// fun assertToastDisplayed(text: String, trigger: () -> Unit, timeoutMs: Long = 5_000L) { -// var toastDisplayed = false -// val startTimeMs = System.currentTimeMillis() -// -// val uiAutomation = InstrumentationRegistry.getInstrumentation().uiAutomation -// -// uiAutomation.setOnAccessibilityEventListener { event -> -// if (event.eventType == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED) { -// val className = event.className?.toString().orEmpty() -// val eventText = event.text?.joinToString(" ").orEmpty() -// -// if (className.contains("android.widget.Toast") && eventText.contains(text, ignoreCase = true)) { -// toastDisplayed = true -// } -// } -// } -// -// try { -// // IMPORTANT: trigger AFTER listener is set -// trigger() -// -// while (!toastDisplayed && System.currentTimeMillis() - startTimeMs < timeoutMs) { -// Thread.sleep(50) -// } -// -// assertTrue("Toast with text '$text' not found within ${timeoutMs}ms", toastDisplayed) -// } finally { -// uiAutomation.setOnAccessibilityEventListener(null) -// } - - fun assertToastDisplayed( - text: String, - timeoutMs: Long = 5_000L, - trigger: () -> Unit - ) { - var found = false - val deadline = System.currentTimeMillis() + timeoutMs + fun assertToastDisplayed(text: String, trigger: () -> Unit, timeoutMs: Long = 5_000L) { + var toastDisplayed = false + val startTimeMs = System.currentTimeMillis() + val uiAutomation = InstrumentationRegistry.getInstrumentation().uiAutomation uiAutomation.setOnAccessibilityEventListener { event -> - if (event.eventType == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED && - event.className?.toString() == "android.widget.Toast" && - event.text.joinToString(" ").contains(text) - ) { - found = true + if (event.eventType == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED) { + val className = event.className?.toString().orEmpty() + val eventText = event.text?.joinToString(" ").orEmpty() + + if (className.contains("android.widget.Toast") && eventText.contains(text, ignoreCase = true)) { + toastDisplayed = true + } } } try { - // Trigger action AFTER listener is active + // IMPORTANT: trigger AFTER listener is set trigger() - while (!found && System.currentTimeMillis() < deadline) { - SystemClock.sleep(50) + while (!toastDisplayed && System.currentTimeMillis() - startTimeMs < timeoutMs) { + Thread.sleep(50) } - assertTrue( - "Toast with text '$text' was not displayed", - found - ) + assertTrue("Toast with text '$text' not found within ${timeoutMs}ms", toastDisplayed) } finally { uiAutomation.setOnAccessibilityEventListener(null) } - } -} +// fun assertToastDisplayed( +// text: String, +// timeoutMs: Long = 5_000L, +// trigger: () -> Unit +// ) { +// var found = false +// val deadline = System.currentTimeMillis() + timeoutMs +// val uiAutomation = InstrumentationRegistry.getInstrumentation().uiAutomation +// +// uiAutomation.setOnAccessibilityEventListener { event -> +// if (event.eventType == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED && +// event.className?.toString() == "android.widget.Toast" && +// event.text.joinToString(" ").contains(text) +// ) { +// found = true +// } +// } +// +// try { +// // Trigger action AFTER listener is active +// trigger() +// +// while (!found && System.currentTimeMillis() < deadline) { +// SystemClock.sleep(50) +// } +// +// assertTrue( +// "Toast with text '$text' was not displayed", +// found +// ) +// } finally { +// uiAutomation.setOnAccessibilityEventListener(null) +// } + } + + } From 7d06d4988f9141865f3920f5e5f4d97422e765b7 Mon Sep 17 00:00:00 2001 From: emmaoke-w Date: Sat, 21 Feb 2026 20:05:29 +0100 Subject: [PATCH 06/22] wip --- .../core/criticalFlows/GroupVideoCall.kt | 21 ++---- .../tests/core/pages/ConversationListPage.kt | 69 ++++++++++++------- .../src/main/uiautomatorutils/UiWaitUtils.kt | 39 +---------- 3 files changed, 52 insertions(+), 77 deletions(-) diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt index ad350ef6572..40c4e681590 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt @@ -210,7 +210,6 @@ class GroupVideoCall : BaseUiTest() { clickCloseButtonOnUnconnectedUserProfilePage() } pages.conversationListPage.apply { - waitFor(3) clickCloseButtonOnNewConversationScreen() assertConversationNameWithPendingStatusVisibleInConversationList( teamOwnerB?.name ?: "" @@ -220,12 +219,10 @@ class GroupVideoCall : BaseUiTest() { step("Accept connection request via backend and start conversation") { runBlocking { - val user = teamHelper.usersManager.findUserByNameOrNameAlias("user5Name") + val user = teamHelper.usersManager.findUserByNameOrNameAlias("user4Name") backendClient.acceptAllIncomingConnectionRequests(user) } - waitFor(1) - pages.conversationListPage.apply { assertPendingStatusIsNoLongerVisible() assertGroupConversationVisible("GroupVideoCall") @@ -263,8 +260,6 @@ class GroupVideoCall : BaseUiTest() { callHelper.userXAcceptsNextIncomingCallAutomatically( "user2Name, user3Name, user4Name" -// callHelper.userXAcceptsNextIncomingCallAutomatically( -// "user2Name, user3Name" ) } @@ -280,13 +275,6 @@ class GroupVideoCall : BaseUiTest() { "active", 90 ) -// runBlocking { -// callHelper.userVerifiesCallStatusToUserY( -// "user2Name, user3Name, user4Name", -// "active", -// 90 -// ) - } pages.callingPage.apply { iSeeOngoingGroupCall() @@ -325,7 +313,7 @@ class GroupVideoCall : BaseUiTest() { tapPingButton() - iSeePingModalWithText("Are you sure you want to ping 5 people?") + iSeePingModalWithText("Are you sure you want to ping 4 people?") tapPingButtonModal() @@ -353,7 +341,7 @@ class GroupVideoCall : BaseUiTest() { "Device1", "GroupVideoCall" ) - waitFor(8) + waitFor(12) assertAudioMessageIsVisible() assertAudioTimeStartsAtZero() } @@ -361,7 +349,7 @@ class GroupVideoCall : BaseUiTest() { step("Play audio message and verify playback time progresses") { pages.conversationViewPage.apply { clickPlayButtonOnAudioMessage() - waitFor(18) + waitFor(10) clickPauseButtonOnAudioMessage() assertAudioTimeIsNotZeroAnymore() } @@ -377,3 +365,4 @@ class GroupVideoCall : BaseUiTest() { } } } +} diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt index 3e5efb0bf73..13301453f00 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/pages/ConversationListPage.kt @@ -17,12 +17,16 @@ */ package com.wire.android.tests.core.pages +import android.os.SystemClock import androidx.test.platform.app.InstrumentationRegistry import androidx.test.uiautomator.UiDevice +import androidx.test.uiautomator.UiSelector +import androidx.test.uiautomator.Until import org.junit.Assert import uiautomatorutils.UiSelectorParams import uiautomatorutils.UiWaitUtils import uiautomatorutils.UiWaitUtils.findElementOrNull +import uiautomatorutils.UiWaitUtils.toBySelector import kotlin.test.DefaultAsserter.assertTrue data class ConversationListPage(private val device: UiDevice) { @@ -49,12 +53,8 @@ data class ConversationListPage(private val device: UiDevice) { description = "Go back to add participants view" ) - private val closeNewConversationButton = UiSelectorParams( - description = "Close new conversation view" - ) - - private val userConversationNamePendingLabelString = UiSelectorParams(description = "pending approval of connection request") - + private val userConversationNamePendingLabelSelector = + UiSelector().description("pending approval of connection request") fun assertConversationListVisible(): ConversationListPage { val heading = UiWaitUtils.waitElement(conversationListHeading) Assert.assertTrue( @@ -145,14 +145,21 @@ data class ConversationListPage(private val device: UiDevice) { return this } - fun tapBackArrowButtonInsideSearchField(): ConversationListPage { - val button = UiWaitUtils.waitElement(backArrowButtonInsideSearchField) - button.click() - return this - } + fun clickCloseButtonOnNewConversationScreen(timeoutMs: Long = 5_000): ConversationListPage { + val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) + + val close = device.findObject( + UiSelector() + .className("android.view.View") + .description("Close new conversation view") + ) + + if (!close.waitForExists(timeoutMs)) { + throw AssertionError("Close button not found within ${timeoutMs}ms") + } + + close.click() - fun clickCloseButtonOnNewConversationScreen(): ConversationListPage { - UiWaitUtils.waitElement(closeNewConversationButton).click() return this } @@ -163,31 +170,45 @@ data class ConversationListPage(private val device: UiDevice) { } fun assertConversationNameWithPendingStatusVisibleInConversationList(userName: String): ConversationListPage { + val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) + + // 1) Assert user name is visible try { - UiWaitUtils.waitElement(UiSelectorParams(text = userName)) - } catch (e: AssertionError) { + val userObj = device.findObject(UiSelector().text(userName)) + if (!userObj.waitForExists(10_000)) { + throw AssertionError("User '$userName' is not visible in the conversation list") + } + } catch (e: Throwable) { throw AssertionError("User '$userName' is not visible in the conversation list", e) } - // Assert the 'pending' badge is visible + + // 2) Assert the 'pending' badge is visible try { - UiWaitUtils.waitElement(userConversationNamePendingLabelString) - } catch (e: AssertionError) { + val pendingObj = device.findObject(userConversationNamePendingLabelSelector) + if (!pendingObj.waitForExists(10_000)) { + throw AssertionError("Pending status is not visible for user '$userName'") + } + } catch (e: Throwable) { throw AssertionError("Pending status is not visible for user '$userName'", e) } + return this } fun assertPendingStatusIsNoLongerVisible(): ConversationListPage { - val pending = runCatching { - UiWaitUtils.waitElement(userConversationNamePendingLabelString) - }.getOrNull() + val device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) + + UiWaitUtils.waitUntilElementGone( + device = device, + selector = userConversationNamePendingLabelSelector, + timeoutMillis = 10_000, + pollingInterval = 250 + ) - if (pending != null && !pending.visibleBounds.isEmpty) { - throw AssertionError("Pending status is still visible (expected it to be gone)") - } return this } + fun tapConversationNameInConversationList(userName: String): ConversationListPage { val userName = UiWaitUtils.waitElement(UiSelectorParams(text = userName)) userName.click() diff --git a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt index 0dae5b11792..05087d49376 100644 --- a/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt +++ b/tests/testsSupport/src/main/uiautomatorutils/UiWaitUtils.kt @@ -115,7 +115,7 @@ object UiWaitUtils { device.waitForIdle(500) // 2) Stabilize: refetch until bounds are stable & usable - val end = SystemClock.uptimeMillis() + 1_500 + val end = SystemClock.uptimeMillis() + 3_000 var lastBounds: Rect? = null while (SystemClock.uptimeMillis() < end) { @@ -258,40 +258,5 @@ object UiWaitUtils { } finally { uiAutomation.setOnAccessibilityEventListener(null) } - -// fun assertToastDisplayed( -// text: String, -// timeoutMs: Long = 5_000L, -// trigger: () -> Unit -// ) { -// var found = false -// val deadline = System.currentTimeMillis() + timeoutMs -// val uiAutomation = InstrumentationRegistry.getInstrumentation().uiAutomation -// -// uiAutomation.setOnAccessibilityEventListener { event -> -// if (event.eventType == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED && -// event.className?.toString() == "android.widget.Toast" && -// event.text.joinToString(" ").contains(text) -// ) { -// found = true -// } -// } -// -// try { -// // Trigger action AFTER listener is active -// trigger() -// -// while (!found && System.currentTimeMillis() < deadline) { -// SystemClock.sleep(50) -// } -// -// assertTrue( -// "Toast with text '$text' was not displayed", -// found -// ) -// } finally { -// uiAutomation.setOnAccessibilityEventListener(null) -// } - } - } +} From 2712c41c99614f27f1017737f64e577d00f583e8 Mon Sep 17 00:00:00 2001 From: emmaoke-w Date: Sun, 22 Feb 2026 12:09:34 +0100 Subject: [PATCH 07/22] wip --- .../criticalFlows/FileSharingBetweenTeams.kt | 3 +-- .../core/criticalFlows/GroupVideoCall.kt | 1 - tests/testsSupport/src/main/res/raw/test.m4a | Bin 3171878 -> 512457 bytes 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt index 1390cb41412..2b068693454 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/FileSharingBetweenTeams.kt @@ -195,7 +195,6 @@ class FileSharingBetweenTeams : BaseUiTest() { "Device1", "user4Name" ) - waitFor(5) assertAudioMessageIsVisible() assertAudioTimeStartsAtZero() } @@ -204,7 +203,7 @@ class FileSharingBetweenTeams : BaseUiTest() { step("Play audio message and verify playback time progresses") { pages.conversationViewPage.apply { clickPlayButtonOnAudioMessage() - waitFor(18) + waitFor(10) clickPauseButtonOnAudioMessage() assertAudioTimeIsNotZeroAnymore() } diff --git a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt index 40c4e681590..0d4a246d10c 100644 --- a/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt +++ b/tests/testsCore/src/androidTest/kotlin/com/wire/android/tests/core/criticalFlows/GroupVideoCall.kt @@ -341,7 +341,6 @@ class GroupVideoCall : BaseUiTest() { "Device1", "GroupVideoCall" ) - waitFor(12) assertAudioMessageIsVisible() assertAudioTimeStartsAtZero() } diff --git a/tests/testsSupport/src/main/res/raw/test.m4a b/tests/testsSupport/src/main/res/raw/test.m4a index 3085d513149508ffac1489d8b3e9e25096e5bfe0..fac6946dbc99862515fee1d398d087e27331bdc4 100644 GIT binary patch literal 512457 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