Replace existing Robolectric test task with functioning one.

This CL does the following:
- Creates a dir for multivalentTests
- Creates symlinks for the dir to keep Android Studio happy
- Moves many files to the multivalentTests dir
- Adjusts gradle and soong build files to use the new dir as part of
their source sets.

Test: ./gradlew :NexusLauncher:testGoogleWithQuickstepDebugUnitTest
Test: atest Launcher3RoboTests
Fix: 316553886
Bug: 316553889
Flag: NA
Change-Id: Iae28fd0c0191b3ecf9bd2950800875950cca2622
diff --git a/tests/Android.bp b/tests/Android.bp
index dd0ba9e..a236954 100644
--- a/tests/Android.bp
+++ b/tests/Android.bp
@@ -22,7 +22,9 @@
     name: "launcher-tests-src",
     srcs: [
       "src/**/*.java",
-      "src/**/*.kt"
+      "src/**/*.kt",
+      "multivalentTests/src/**/*.java",
+      "multivalentTests/src/**/*.kt",
     ],
     exclude_srcs: [
         ":launcher-non-quickstep-tests-src"
@@ -31,25 +33,27 @@
 
 // Source code used for screenshot tests
 filegroup {
-    name: "launcher-image-tests-src",
+    name: "launcher-image-tests-helpers",
     srcs: [
-      "src/com/android/launcher3/celllayout/board/*.java",
-      "src/com/android/launcher3/celllayout/board/*.kt",
-      "src/com/android/launcher3/celllayout/FavoriteItemsTransaction.java",
-      "src/com/android/launcher3/ui/AbstractLauncherUiTest.java",
-      "src/com/android/launcher3/ui/PortraitLandscapeRunner.java",
-      "src/com/android/launcher3/ui/TestViewHelpers.java",
-      "src/com/android/launcher3/util/LauncherLayoutBuilder.java",
-      "src/com/android/launcher3/util/ModelTestExtensions.kt",
-      "src/com/android/launcher3/util/TestConstants.java",
-      "src/com/android/launcher3/util/TestUtil.java",
-      "src/com/android/launcher3/util/Wait.java",
-      "src/com/android/launcher3/util/WidgetUtils.java",
-      "src/com/android/launcher3/util/rule/*.java",
-      "src/com/android/launcher3/util/rule/*.kt",
-      "src/com/android/launcher3/util/viewcapture_analysis/*.java",
-      "src/com/android/launcher3/testcomponent/*.java",
-      "src/com/android/launcher3/testcomponent/*.kt",
+      "multivalentTests/src/com/android/launcher3/celllayout/board/*.java",
+      "multivalentTests/src/com/android/launcher3/celllayout/board/*.kt",
+      "multivalentTests/src/com/android/launcher3/celllayout/FavoriteItemsTransaction.java",
+      "multivalentTests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java",
+      "multivalentTests/src/com/android/launcher3/ui/PortraitLandscapeRunner.java",
+      "multivalentTests/src/com/android/launcher3/ui/TestViewHelpers.java",
+      "multivalentTests/src/com/android/launcher3/util/LauncherLayoutBuilder.java",
+      "multivalentTests/src/com/android/launcher3/util/ModelTestExtensions.kt",
+      "multivalentTests/src/com/android/launcher3/util/TestConstants.java",
+      "multivalentTests/src/com/android/launcher3/util/TestUtil.java",
+      "multivalentTests/src/com/android/launcher3/util/Wait.java",
+      "multivalentTests/src/com/android/launcher3/util/WidgetUtils.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/*.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/*.kt",
+      "multivalentTests/src/com/android/launcher3/util/rule/*.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/*.kt",
+      "multivalentTests/src/com/android/launcher3/util/viewcapture_analysis/*.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/*.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/*.kt",
     ],
 }
 
@@ -71,30 +75,30 @@
       "src/com/android/launcher3/appiconmenu/TaplAppIconMenuTest.java",
       "src/com/android/launcher3/dragging/TaplDragTest.java",
       "src/com/android/launcher3/dragging/TaplUninstallRemoveTest.java",
-      "src/com/android/launcher3/ui/AbstractLauncherUiTest.java",
-      "src/com/android/launcher3/ui/PortraitLandscapeRunner.java",
+      "multivalentTests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java",
+      "multivalentTests/src/com/android/launcher3/ui/PortraitLandscapeRunner.java",
       "src/com/android/launcher3/ui/TaplTestsLauncher3Test.java",
       "src/com/android/launcher3/ui/widget/TaplWidgetPickerTest.java",
       "src/com/android/launcher3/ui/workspace/TaplWorkspaceTest.java",
-      "src/com/android/launcher3/util/LauncherLayoutBuilder.java",
-      "src/com/android/launcher3/util/TestConstants.java",
-      "src/com/android/launcher3/util/TestUtil.java",
-      "src/com/android/launcher3/util/Wait.java",
-      "src/com/android/launcher3/util/WidgetUtils.java",
-      "src/com/android/launcher3/util/rule/FailureWatcher.java",
-      "src/com/android/launcher3/util/rule/ViewCaptureRule.kt",
-      "src/com/android/launcher3/util/rule/SamplerRule.java",
-      "src/com/android/launcher3/util/rule/ScreenRecordRule.java",
-      "src/com/android/launcher3/util/rule/ShellCommandRule.java",
-      "src/com/android/launcher3/util/rule/TestIsolationRule.java",
-      "src/com/android/launcher3/util/rule/TestStabilityRule.java",
-      "src/com/android/launcher3/util/viewcapture_analysis/*.java",
-      "src/com/android/launcher3/testcomponent/BaseTestingActivity.java",
-      "src/com/android/launcher3/testcomponent/OtherBaseTestingActivity.java",
-      "src/com/android/launcher3/testcomponent/CustomShortcutConfigActivity.java",
-      "src/com/android/launcher3/testcomponent/TestCommandReceiver.java",
-      "src/com/android/launcher3/testcomponent/TestLauncherActivity.java",
-      "src/com/android/launcher3/testcomponent/ImeTestActivity.java",
+      "multivalentTests/src/com/android/launcher3/util/LauncherLayoutBuilder.java",
+      "multivalentTests/src/com/android/launcher3/util/TestConstants.java",
+      "multivalentTests/src/com/android/launcher3/util/TestUtil.java",
+      "multivalentTests/src/com/android/launcher3/util/Wait.java",
+      "multivalentTests/src/com/android/launcher3/util/WidgetUtils.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/FailureWatcher.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/ViewCaptureRule.kt",
+      "multivalentTests/src/com/android/launcher3/util/rule/SamplerRule.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/ScreenRecordRule.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/ShellCommandRule.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/TestIsolationRule.java",
+      "multivalentTests/src/com/android/launcher3/util/rule/TestStabilityRule.java",
+      "multivalentTests/src/com/android/launcher3/util/viewcapture_analysis/*.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/BaseTestingActivity.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/OtherBaseTestingActivity.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/CustomShortcutConfigActivity.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/TestCommandReceiver.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/TestLauncherActivity.java",
+      "multivalentTests/src/com/android/launcher3/testcomponent/ImeTestActivity.java",
     ],
 }
 
@@ -167,10 +171,10 @@
 android_library {
     name: "launcher-testing-shared",
     srcs: [
-        "shared/com/android/launcher3/testing/shared/**/*.java"
+        "multivalentTests/shared/com/android/launcher3/testing/shared/**/*.java"
     ],
     resource_dirs: [ ],
-    manifest: "shared/AndroidManifest.xml",
+    manifest: "multivalentTests/shared/AndroidManifest.xml",
     sdk_version: "current",
     min_sdk_version: min_launcher3_sdk_version,
  }
@@ -180,14 +184,18 @@
     srcs: [
       "src/**/*.java",
       "src/**/*.kt",
-      "src/com/android/launcher3/ui/AbstractLauncherUiTest.java",
-      "tapl/com/android/launcher3/tapl/*.java",
-      "tapl/com/android/launcher3/tapl/*.kt",
+      "multivalentTests/src/**/*.java",
+      "multivalentTests/src/**/*.kt",
+      "multivalentTests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java",
+      "multivalentTests/tapl/com/android/launcher3/tapl/*.java",
+      "multivalentTests/tapl/com/android/launcher3/tapl/*.kt",
     ],
     exclude_srcs: [
         // Test classes
         "src/**/*Test.java",
         "src/**/*Test.kt",
+        "multivalentTests/src/**/*Test.java",
+        "multivalentTests/src/**/*Test.kt",
     ],
 }
 
@@ -206,23 +214,21 @@
 android_robolectric_test {
     enabled: true,
     name: "Launcher3RoboTests",
+    // multivalentTests directory is a shared folder for not only robolectric converted test
+    // classes but also shared helper classes.
     srcs: [
-        "src/com/android/launcher3/util/*.java",
-        "src/com/android/launcher3/util/*.kt",
+        "multivalentTests/src/com/android/launcher3/util/*.java",
+        "multivalentTests/src/com/android/launcher3/util/*.kt",
 
         // Test util classes
         ":launcher-testing-helpers",
         ":launcher-testing-shared",
     ],
     exclude_srcs: [
-        "src/com/android/launcher3/util/CellContentDimensionsTest.kt", // Failing - b/316553889
+        //"src/com/android/launcher3/util/CellContentDimensionsTest.kt", // Failing - b/316553889
 
         // requires modification to work with inline mock maker
         "src/com/android/launcher3/util/rule/StaticMockitoRule.java",
-
-        // requires kotlin mockito
-        "src/com/android/launcher3/util/LockedUserStateTest.kt",
-        "src/com/android/launcher3/util/DisplayControllerTest.kt",
     ],
     java_resource_dirs: ["config"],
     static_libs: [