summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYi-an Chen <theianchen@google.com>2022-07-26 00:35:53 +0000
committerYi-an Chen <theianchen@google.com>2022-07-26 01:16:18 +0000
commit5045f3514a2c6b372673516fef43c9e414b55905 (patch)
treea79e6d78d378ef33fcb23b759945e87e35754138
parent1055591625107e9ed8bc1c2a6f5993c03c805de7 (diff)
downloadcts-5045f3514a2c6b372673516fef43c9e414b55905.tar.gz
Fix testMicrophoneAccessShowsUpOnPrivacyDashboard
Bug: 239128168 Test: PermissionHistoryTest Change-Id: I13dd9b158a1f28cefe0d2da9b7f4877360dd7b10
-rw-r--r--tests/tests/permission3/src/android/permission3/cts/PermissionHistoryTest.kt19
1 files changed, 16 insertions, 3 deletions
diff --git a/tests/tests/permission3/src/android/permission3/cts/PermissionHistoryTest.kt b/tests/tests/permission3/src/android/permission3/cts/PermissionHistoryTest.kt
index 5355fdc6860..d3310990b89 100644
--- a/tests/tests/permission3/src/android/permission3/cts/PermissionHistoryTest.kt
+++ b/tests/tests/permission3/src/android/permission3/cts/PermissionHistoryTest.kt
@@ -45,6 +45,7 @@ private const val MORE_OPTIONS = "More options"
private const val TIMELINE_7_DAYS_DESCRIPTION = "in the past 7 days"
private const val DASHBOARD_7_DAYS_DESCRIPTION = "7 days"
private const val PRIV_DASH_7_DAY_ENABLED = "privacy_dashboard_7_day_toggle"
+private const val REFRESH = "Refresh"
@SdkSuppress(minSdkVersion = Build.VERSION_CODES.S)
class PermissionHistoryTest : BasePermissionHubTest() {
@@ -100,9 +101,21 @@ class PermissionHistoryTest : BasePermissionHubTest() {
waitFindObject(By.textContains(APP_LABEL_1))
openPermissionDashboard()
- waitFindObject(By.res("android:id/title").textContains("Microphone")).click()
- waitFindObject(By.textContains(micLabel))
- waitFindObject(By.textContains(APP_LABEL_1))
+
+ SystemUtil.eventually {
+ try {
+ waitFindObject(By.res("android:id/title")
+ .textContains("Microphone")).click()
+ waitFindObject(By.textContains(micLabel))
+ waitFindObject(By.textContains(APP_LABEL_1))
+ } catch (e: Exception) {
+ // Sometimes the dashboard was in the state from previous failed tests.
+ // Clicking the refresh button to get the most recent access.
+ waitFindObject(By.textContains(REFRESH)).click()
+ throw e
+ }
+ }
+
pressBack()
pressBack()
}