Add onTaskAppeared error detection.

Bug: 246340474
Test: used several gestures normally, and reproduced b/246340474, then checked logs
Change-Id: I8cdcb9c00c5cacc7737e796dbf5adf544c0220a7
This commit is contained in:
Schneider Victor-tulias
2022-09-13 15:31:06 -07:00
parent 39d9eb819c
commit 56fc942e48
3 changed files with 38 additions and 6 deletions

View File

@@ -33,10 +33,10 @@ public class ActiveGestureErrorDetector {
* Enums associated to gesture navigation events.
*/
public enum GestureEvent {
MOTION_DOWN, MOTION_UP, SET_END_TARGET, SET_END_TARGET_HOME, ON_SETTLED_ON_END_TARGET,
START_RECENTS_ANIMATION, FINISH_RECENTS_ANIMATION, CANCEL_RECENTS_ANIMATION,
SET_ON_PAGE_TRANSITION_END_CALLBACK, CANCEL_CURRENT_ANIMATION, CLEANUP_SCREENSHOT,
SCROLLER_ANIMATION_ABORTED,
MOTION_DOWN, MOTION_UP, SET_END_TARGET, SET_END_TARGET_HOME, SET_END_TARGET_LAST_TASK,
SET_END_TARGET_NEW_TASK, ON_SETTLED_ON_END_TARGET, START_RECENTS_ANIMATION,
FINISH_RECENTS_ANIMATION, CANCEL_RECENTS_ANIMATION, SET_ON_PAGE_TRANSITION_END_CALLBACK,
CANCEL_CURRENT_ANIMATION, CLEANUP_SCREENSHOT, SCROLLER_ANIMATION_ABORTED, TASK_APPEARED,
/**
* These GestureEvents are specifically associated to state flags that get set in
@@ -134,6 +134,15 @@ public class ActiveGestureErrorDetector {
+ " settling on end target.",
writer);
break;
case TASK_APPEARED:
errorDetected |= printErrorIfTrue(
!encounteredEvents.contains(GestureEvent.SET_END_TARGET_LAST_TASK)
&& !encounteredEvents.contains(
GestureEvent.SET_END_TARGET_NEW_TASK),
/* errorMessage= */ prefix + "\t\tonTasksAppeared called "
+ "before/without setting end target to last or new task",
writer);
break;
case STATE_GESTURE_COMPLETED:
errorDetected |= printErrorIfTrue(
!encounteredEvents.contains(GestureEvent.MOTION_UP),
@@ -289,6 +298,21 @@ public class ActiveGestureErrorDetector {
+ "the task screenshot wasn't cleaned up.",
writer);
errorDetected |= printErrorIfTrue(
/* condition= */ encounteredEvents.contains(
GestureEvent.SET_END_TARGET_LAST_TASK)
&& !encounteredEvents.contains(GestureEvent.TASK_APPEARED),
/* errorMessage= */ prefix + "\t\tend target set to last task, but "
+ "onTaskAppeared wasn't called.",
writer);
errorDetected |= printErrorIfTrue(
/* condition= */ encounteredEvents.contains(
GestureEvent.SET_END_TARGET_NEW_TASK)
&& !encounteredEvents.contains(GestureEvent.TASK_APPEARED),
/* errorMessage= */ prefix + "\t\tend target set to new task, but "
+ "onTaskAppeared wasn't called.",
writer);
if (!errorDetected) {
writer.println(prefix + "\t\tNo errors detected.");
}