Commit Graph

184 Commits

Author SHA1 Message Date
Zak Cohen
dc24231e4f TAPL tests - make all apps in overview checks less fragile.
Tests that check for all apps in overview mode were only checking for
actions being enabled. This isn't sufficient logic, two button mode also
uses all apps.

Centralize the check for all apps.

Test: local tapl tests
Change-Id: If1bf98019e6f1aea8f7967883aba6780743e9d6b
2020-02-28 11:59:33 -08:00
Zak Cohen
eecb258cc7 Merge changes from topic "enable" into ub-launcher3-master
* changes:
  Overview Actions - Enable by default.
  TAPL test update - don't run all apps in overview tests with actions.
2020-02-27 19:48:51 +00:00
Zak Cohen
fe935dfbc1 TAPL test update - don't run all apps in overview tests with actions.
Overview actions removes the all apps from overview. Don't run the tests
that depend on these.
Ultimately need to add more tests for the actions.

Test: tapl local
Change-Id: I2471d10af7bc03a40a94f99aa16354b85bdb3ad7
2020-02-25 15:09:12 -08:00
vadimt
1779a38290 Using StrictMode to detect activity leaks
Change-Id: I615f641897d57be0cd31be944796c6931ef9ab00
2020-02-25 14:46:27 -08:00
vadimt
b79614cc93 Performing a check for a crashed Launcher process for each UI test 2020-02-25 02:28:32 +00:00
vadimt
3a49aa090f Enable testQuickSwitchFromApp after fixing what caused it to fail
Bug: 143285809
Change-Id: Ic7895ab7d4ef3ab207fc77184eb53f0f6d8e9b23
2020-02-13 16:14:15 -08:00
vadimt
047812a906 Remove test testPressRecentAppsLauncherAndGetOverview
It tests UiDevice.pressRecentApps(), which we don't use, so we don't
need to test it.

Bug: 131115533
Change-Id: I3a1b31f3b8368e3c848c888a5a27577faa940832
2020-02-11 19:15:59 -08:00
vadimt
c71db98747 Increasing nav mode settlement timeout as an attempt to workaround nav
mode mismatch bug.

Bug: 148422894
Change-Id: I1295c1415a308ec461d302c9973309f4de77f984
2020-02-07 10:34:59 -08:00
Winson Chung
85cd51e0e2 Merge "Remove workaround for starting app" into ub-launcher3-master 2020-02-04 21:43:49 +00:00
Winson Chung
dd14633250 Remove workaround for starting app
Bug: 141580748
Change-Id: I7760bc0ee07db6798153ff33566b48fcb3c39651
2020-02-04 19:06:55 +00:00
vadimt
3908a50ce1 Disable testQuickSwitchFromApp test due to test failures
Bug: 143285809
Bug: 148865178
Change-Id: I9ac955d9b1ea057258b65b65c5bc813441c1161f
2020-02-04 18:42:56 +00:00
vadimt
db185f6b3e Enabling quick switch test
Now that 2 underlying bugs are fixed

Bug: 143285809
Change-Id: Ie85177830def6e6ee72688f7dbb15ebef9c5ae48
2020-01-31 17:27:46 -08:00
TreeHugger Robot
ed6aa18992 Merge "Making setActiveOverlay and getCurrentOverlayPackage public" into ub-launcher3-master 2020-01-30 23:39:45 +00:00
vadimt
4809121c02 Making setActiveOverlay and getCurrentOverlayPackage public
These will be used by memory tests

Bug: 139137636
Change-Id: I213966e8a0443b122412a4fd9fc6415870db2c05
2020-01-30 02:39:26 +00:00
TreeHugger Robot
0618d689e8 Merge changes from topic "state-supplier" into ub-launcher3-master
* changes:
  Translate recents slightly while dragging after pausing
  Two-zone model: swipe up from nav bar vs above it
  Change LauncherState to Supplier<LauncherState> in tests
2020-01-29 03:06:04 +00:00
Tony Wickham
8a054061ef Change LauncherState to Supplier<LauncherState> in tests
This prevents the test from statically initializing LauncherState and
all its static dependencies, which might lead to runtime exceptions in
out-of-proc tests.

Change-Id: I0e4e09dfb31a8b256c2c0c0b3d1d2ecd0cc92230
2020-01-28 18:07:33 -08:00
vadimt
fcaab044a3 Avoid confusing errors "Launcher pid should be 0" when test setup fails
Change-Id: Ic5e8114a0f86d1a08738785c4098645e59a24975
2020-01-24 14:30:40 -08:00
Vadim Tryshev
8cf7b03cad Merge "Adding auto-investigation of one more flake" into ub-launcher3-master 2020-01-23 20:17:33 +00:00
vadimt
29d8b54957 Disabling events checks for successful gestures by default
Launcher tests will still perform checks upon every gesture completion.

All tests using tapl will still use events for diagnostics if the
gesture fails.

The benefit is that system health and other platform tests won't have to
use expensive logcat, and moreover, wait seconds for the events to
appear in logcat because of buffering in logcat.

Change-Id: I3b5a0965d9432144d0c4a8b40ebe2fa89b19a689
2020-01-22 19:16:32 -08:00
vadimt
2c6316be46 Adding auto-investigation of one more flake
Reshuffling the tests to make the investigator the outmost rule and run
the code that throws the original exception inside the investigator.

Change-Id: I714717a9b616862db5ce59116138ba7ea6ceb971
2020-01-21 19:06:59 -08:00
vadimt
d8827bad12 Verifying that Launcher didn't crash in TaplTestsQuickstep
TaplTestsLauncher3 already do this

Change-Id: I17fe638b81cbef4cf5230a6bd49b165e4f9e7855
2020-01-16 17:28:43 -08:00
vadimt
252d012ed0 TAPL: Verifying some interactions with system
Investigation of TAPL failures, especially flakes is complex, partially
because it’s hard to tell whether it’s Launcher who is wrong or the
system.

We need to introduce a framework that looks at Launcher interaction with
the system and reports when interactions deviate from the expected
course, and who made the first wrong step.

This is first, proof-of-concept CL.

It analyzes long-press events. We had multiple cases when long-presses
didn’t happen or happened unexpectedly.

Launcher registers the events, TAPL retrieves and compares against the
sequence of expected regular expressions. This diagnostic is used when
something fails and at the end of public methods.

Change-Id: I07aa3a027267c03422c99c73ccd8808445c55fe8
2020-01-15 13:31:18 -08:00
vadimt
2eb48498b4 Improving navigation mode switch rule and around
Logging assertion failures.
Modifying waits for condition to avoid timing out the whole test if the
iteration takes too long in favor of failing with an actionable diag.

Bug: 145985438
Change-Id: Ie32d93e1548ce6ec64c38449eb1be1287ff9cf56
2019-12-12 15:10:52 -08:00
vadimt
165a507a35 Disabling fallback tests
Improving state events accounting hasn't completely solved flakiness.
I've noticed that swiping up in 0-button mode sometimes doesn't open
Overview.

Bug: 143488140
Change-Id: I660885ed556aa2953c17d491fde267734b95890b
2019-12-10 02:06:16 +00:00
vadimt
bdaa179b92 Consistently checking state change messages
Checking for events whenever Launcher sends them.
Checking for correct events (final events, not for events from
intermediate state changes).

This should simplify diagnosing of bugs involving TAPL.
This is also supposed to fix Fallback overview tests.

Bug: 143488140
Change-Id: If053ed808ec71bf2b652ab680be5bdfe9ff8cbb9
2019-12-09 12:33:39 -08:00
vadimt
7410808085 Removing a workaround to make NevigationModeSwitchRule pass on CF
Change-Id: I7b7cabc098f17c99406032e186a4ee363273f0a9
2019-11-19 18:04:13 -08:00
vadimt
cbc9bffd7e Disabling FallbackRecents tests
Even though they don't block presubmit, the fact that they are failing:
1. Causes sheriffs no not notice other issues;
2. Would block switching to 24hr fix-it policy and Quarterdeck.

Bug: 143488140
Change-Id: I95e3e15b69e0487946919f3f6889e286a1fae141
2019-11-14 17:23:52 -08:00
TreeHugger Robot
dc0c224030 Merge "Reattributing disabled tests to a more relevant bug" into ub-launcher3-master 2019-11-13 01:30:15 +00:00
vadimt
b0a14e96ae Removing temporary tweaks to make tests pass in presubmit
Now that we have a more reliable build of CF

Bug: 142828227
Change-Id: Ib385443048b6ccd9e1eb3372dc39947536f948bd
2019-11-11 09:23:28 -08:00
vadimt
3435f69d1a Reattributing disabled tests to a more relevant bug
Bug: 143488140
Change-Id: I8af35c66293517a3ba7cae583e5c3bff883865d7
2019-11-08 14:50:57 -08:00
vadimt
272a541ab9 Disable failing test testQuickSwitchFromApp
Bug: 143285809
Change-Id: I7df5a1deb74aabf0f874e969a57aba471902747f
2019-11-05 18:26:29 -08:00
vadimt
09ce192b4e Not treating "Screen is empty" as an anomaly in NavigationModeSwitchRule
It's an acceptable state when Launcher just starts under
 instrumentation.

Change-Id: Ia6eb2550effbd9236bb955e0c0e04416fc5fa506
2019-11-05 11:30:35 -08:00
vadimt
137f5b62ac Improve diags when system errors cause failing Launcher tests
Now, for example, we won't diagnose a locked phone as a
"home button not showing in 3-button mode", even though it's technically
correct.

Change-Id: Ibdfa0741af7ff8545a811f6702dda74dc6c31c2e
2019-11-04 14:50:22 -08:00
Tony Wickham
bc42d64c85 Fix testQuickSwitchFromApp
Instead of starting getAppPackageName() and relying on it being our Test
Pin Item activity, instead launch our own test activities with the
FLAG_ACTIVITY_MULTIPLE_TASK and FLAG_ACTIVITY_NEW_DOCUMENT flags.

Test:
- Locally run testQuickSwitchFromApp() from Android Studio
- flake -oop -t com.android.quickstep.TaplTestsQuickstep#testQuickSwitchFromApp

Bug: 140252765
Change-Id: Ie137261ce65bfd3dd39df78d57784854a026e967
2019-10-23 23:42:19 +00:00
vadimt
ad81b816f0 Step 4 from the plan below:
1. Skip all tests that fail in inproc mode on CF (this CL)
2. Observe postsubmit and make sure no inproc tests are failing or too
flaky on CF
3. Enable presubmit
4. Switch to skipping tests from step 1 only for inproc presubmit;
they'll start failing in postsubmit
5. Gradually make all tests pass and not flaky and enable them back on
presubmit

Bug: 142828227
Change-Id: I0092d6b92b0358866f8cbf9e00dbe3fabe23703d
2019-10-17 17:52:29 -07:00
vadimt
3680357a67 Preparing to enabling Inproc launcher tests as presubmit
The plan:
1. Skip all tests that fail in inproc mode on CF (this CL)
2. Observe postsubmit and make sure no inproc tests are failing or too
flaky on CF
3. Enable presubmit
4. Switch to skipping tests from step 1 only for inproc presubmit;
they'll start failing in postsubmit
5. Gradually make all tests pass and not flaky and enable them back on
presubmit

Bug: 142828227
Change-Id: I6ea3d53771503e8fd968555bb2e4cb1be10d83ef
2019-10-16 17:35:18 -07:00
Tony Wickham
6b62f28ef9 Fix quick switch test gesture in landscape 2-button mode
am: a0f77c4449

Change-Id: I998081a53a94ff3b1559a7e77d4d470056cfab00
2019-10-15 21:20:24 -07:00
Tony Wickham
a0f77c4449 Fix quick switch test gesture in landscape 2-button mode
It should swipe from the bottom right to top right when the nav bar is
on the right, rather than from the bottom left to bottom right.

For now, disable testQuickSwitchFromApp() because it seems to have
other failures as well.

Bug: 140252765
Change-Id: I1f4989f3ea5456c18bb9cbf42ea4b157cee500d7
2019-10-15 17:30:47 -07:00
TreeHugger Robot
6c12641bee Merge "Unifying various tracing calls" into ub-launcher3-master 2019-10-14 22:29:59 +00:00
Sunny Goyal
17c72fbb60 Unifying various tracing calls
Change-Id: Iedf6662ad1d7281b850bdc43b3a1e373ce535ac6
2019-10-14 14:23:19 -07:00
Tony Wickham
2f767469ae Merge "Add tests for quick switch from an app and home" into ub-launcher3-qt-future-dev
am: 7a2076e3ab

Change-Id: Id525dae6616757688ccf0e203fefeb9bd6ef08ff
2019-10-14 12:20:37 -07:00
Tony Wickham
1e73e320b7 Add tests for quick switch from an app and home
Bug: 140252765
Change-Id: I5621b614ae2d8cd3db03cae818cf8b8c1c6cb20f
2019-10-14 11:51:19 -07:00
TreeHugger Robot
d2b03972f5 Merge "Suppress ViewInflationDuringSwipeUp test." into ub-launcher3-master 2019-10-14 18:10:34 +00:00
Zak Cohen
eb27edffc2 Suppress ViewInflationDuringSwipeUp test.
Test is failing and blocking drop.
Only failing on TH, passing locally.
Tracked in b/141579810

Bug:141579810
Change-Id: Iadf8098cad22835b026984c0a9ea5122054b484b
2019-10-14 10:55:15 -07:00
Winson Chung
c062580b5a Wait for the task to be in recents before validation
- There are two issues:
  1) Currently the system does not add the task to the task list until
     the activity starting the task has been resumed (to be fixed in a
     follow up platform CL). When the three activities are started in
     sequence, it's possible for one of the activities to not reach the
     resumed state leading to an unexpected number of recent tasks the
     next time it's fetched.
  2) When swiping up, it may take time for getTasks to return and call
     applyLoadPlan, so try and wait until the task views have had a
     chance to be applied before continuing.
  3) Use the launcher activity tracker instead of activity rule since it
     will return the same activity even after the activity is destroyed
- Move the margin handling to the caller instead of the scroll method

Bug: 141580748
Change-Id: I2b7634f5ac6869ba4b369b3bd60e0f63747c0f0b
2019-10-11 17:10:38 -07:00
Winson Chung
c039634c25 Workaround for failing test & fix scrolling in tests
- Workaround issue where instrumentation will fail to finish an activity
  causing the activity to linger longer than expected (leading to issues
  with ordering of static resources like the app widget host registration)
- Fix calculation for scrolling the screen, the previous calculation
  would result in the gesture starting at the left gesture margin due
  to rounding which can trigger a back action instead of the desired
  scroll

Bug: 142351228
Change-Id: I34bdb471030518d2b983cac2badd4d8b0e7d571b
2019-10-10 17:31:38 -07:00
TreeHugger Robot
f31dab5e02 Merge "Removing static instance of LauncherAppsCompat and unnecessary wrapper classes" into ub-launcher3-master 2019-10-08 18:49:36 +00:00
vadimt
7f791a868d Increasing wait time for navigation mode switch. am: d230af4e09
am: 4f56803bd0

Change-Id: I0dfc2072d6ea810cb023b61ac5a4e8f29786d261
2019-10-04 18:10:56 -07:00
vadimt
4f56803bd0 Increasing wait time for navigation mode switch.
am: d230af4e09

Change-Id: Ia5150735244249dd76c1993ff588036e4f18402b
2019-10-04 18:03:17 -07:00
vadimt
d230af4e09 Increasing wait time for navigation mode switch.
Sometimes this fails in Cuttlefish.

Change-Id: Ifa2ffed5165625d51441fc3b203185fc55f7d53f
2019-10-04 17:12:26 -07:00