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:
@@ -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.");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user