Merge "Improving TAPL diagnostics" into sc-dev
This commit is contained in:
commit
c5c0e5e96e
|
@ -75,4 +75,9 @@ public final class AppIcon extends Launchable {
|
|||
protected void expectActivityStartEvents() {
|
||||
mLauncher.expectEvent(TestProtocol.SEQUENCE_MAIN, LauncherInstrumentation.EVENT_START);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String launchableType() {
|
||||
return "app icon";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,8 +20,6 @@ import androidx.test.uiautomator.UiObject2;
|
|||
|
||||
import com.android.launcher3.testing.TestProtocol;
|
||||
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
* Menu item in an app icon menu.
|
||||
*/
|
||||
|
@ -51,4 +49,9 @@ public class AppIconMenuItem extends Launchable {
|
|||
protected void expectActivityStartEvents() {
|
||||
mLauncher.expectEvent(TestProtocol.SEQUENCE_MAIN, LauncherInstrumentation.EVENT_START);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String launchableType() {
|
||||
return "app icon menu item";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -53,23 +53,29 @@ abstract class Launchable {
|
|||
|
||||
protected abstract void expectActivityStartEvents();
|
||||
|
||||
protected abstract String launchableType();
|
||||
|
||||
private Background launch(BySelector selector) {
|
||||
LauncherInstrumentation.log("Launchable.launch before click " +
|
||||
mObject.getVisibleCenter() + " in " + mLauncher.getVisibleBounds(mObject));
|
||||
final String label = mObject.getText();
|
||||
try (LauncherInstrumentation.Closable c = mLauncher.addContextLayer(
|
||||
"clicking " + launchableType())) {
|
||||
LauncherInstrumentation.log("Launchable.launch before click "
|
||||
+ mObject.getVisibleCenter() + " in " + mLauncher.getVisibleBounds(mObject));
|
||||
final String label = mObject.getText();
|
||||
|
||||
mLauncher.executeAndWaitForEvent(
|
||||
() -> {
|
||||
mLauncher.clickLauncherObject(mObject);
|
||||
expectActivityStartEvents();
|
||||
},
|
||||
event -> event.getEventType() == TYPE_WINDOW_STATE_CHANGED,
|
||||
() -> "Launching an app didn't open a new window: " + label);
|
||||
mLauncher.executeAndWaitForEvent(
|
||||
() -> {
|
||||
mLauncher.clickLauncherObject(mObject);
|
||||
expectActivityStartEvents();
|
||||
},
|
||||
event -> event.getEventType() == TYPE_WINDOW_STATE_CHANGED,
|
||||
() -> "Launching an app didn't open a new window: " + label);
|
||||
|
||||
mLauncher.assertTrue(
|
||||
"App didn't start: " + label + " (" + selector + ")",
|
||||
TestHelpers.wait(Until.hasObject(selector), LauncherInstrumentation.WAIT_TIME_MS));
|
||||
return new Background(mLauncher);
|
||||
mLauncher.assertTrue(
|
||||
"App didn't start: " + label + " (" + selector + ")",
|
||||
TestHelpers.wait(Until.hasObject(selector),
|
||||
LauncherInstrumentation.WAIT_TIME_MS));
|
||||
return new Background(mLauncher);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -499,7 +499,7 @@ public final class LauncherInstrumentation {
|
|||
void fail(String message) {
|
||||
checkForAnomaly();
|
||||
Assert.fail(formatSystemHealthMessage(formatErrorWithEvents(
|
||||
"http://go/tapl test failure:\nSummary: " + getContextDescription()
|
||||
"http://go/tapl test failure:\nContext: " + getContextDescription()
|
||||
+ " - visible state is " + getVisibleStateMessage()
|
||||
+ ";\nDetails: " + message, true)));
|
||||
}
|
||||
|
|
|
@ -46,4 +46,9 @@ public final class Widget extends Launchable {
|
|||
protected void addExpectedEventsForLongClick() {
|
||||
mLauncher.expectEvent(TestProtocol.SEQUENCE_MAIN, LONG_CLICK_EVENT);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String launchableType() {
|
||||
return "widget";
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue