Ensure "AppIconSelector" does not match folders.

Not sure if this is considered brittle, but at this moment, the
BubbleTextView used for folder labels is not focusable, while the
one used for app labels is focusable.

Also add package name to the context logs to help debug similar
test failures in the future.

Fix: 319194153
Test: atest android.platform.test.scenario.google.OpenAppMicrobenchmark$1#testOpen
Flag: NA
Change-Id: Ibf88afdd6d3ef03b75ea44910b485e7e74e348b0
This commit is contained in:
Andy Wickham
2024-01-12 23:35:44 +00:00
parent 6cdb1de48d
commit bfb7c269b0
2 changed files with 4 additions and 3 deletions

View File

@@ -42,7 +42,8 @@ public abstract class AppIcon extends Launchable {
* @param appName app icon to look for
*/
static BySelector getAppIconSelector(String appName) {
return By.clazz(TextView.class).text(makeMultilinePattern(appName));
// focusable=true to avoid matching folder labels
return By.clazz(TextView.class).text(makeMultilinePattern(appName)).focusable(true);
}
/**

View File

@@ -56,8 +56,8 @@ public abstract class Launchable {
*/
public LaunchedAppState launch(String expectedPackageName) {
try (LauncherInstrumentation.Closable e = mLauncher.eventsCheck()) {
try (LauncherInstrumentation.Closable c1 = mLauncher.addContextLayer(
"want to launch an app from " + launchableType())) {
try (LauncherInstrumentation.Closable c1 = mLauncher.addContextLayer(String.format(
"want to launch an app (%s) from %s", expectedPackageName, launchableType()))) {
LauncherInstrumentation.log("Launchable.launch before click "
+ mObject.getVisibleCenter() + " in "
+ mLauncher.getVisibleBounds(mObject));