Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 861f2fdc authored by Uwais Ashraf's avatar Uwais Ashraf
Browse files

Create Launcher3RoboTests and enable Robolectric on small set of tests

Test: atest Launcher3RoboTests
Bug: 316551909
Flag: NA
Change-Id: Ib1bbaf49e3e608f8c67005c129e090711df1e99c
parent e0a4feb6
Loading
Loading
Loading
Loading
+74 −0
Original line number Diff line number Diff line
@@ -174,3 +174,77 @@ android_library {
    sdk_version: "current",
    min_sdk_version: min_launcher3_sdk_version,
 }

filegroup {
    name: "launcher-testing-helpers",
    srcs: [
      "src/**/*.java",
      "src/**/*.kt",
      "src/com/android/launcher3/ui/AbstractLauncherUiTest.java",
      "tapl/com/android/launcher3/tapl/*.java",
      "tapl/com/android/launcher3/tapl/*.kt",
    ],
    exclude_srcs: [
        // Test classes
        "src/**/*Test.java",
        "src/**/*Test.kt",
    ],
}

android_library {
    name: "Launcher3Lib",
    srcs: [
        ":launcher-src",
        ":launcher-src_shortcuts_overrides",
        ":launcher-src_ui_overrides",
    ],
    static_libs: [
        "Launcher3CommonDepsLib",
    ],
}

android_robolectric_test {
    enabled: true,
    name: "Launcher3RoboTests",
    srcs: [
        "src/com/android/launcher3/util/*.java",
        "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

        // 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: [
        "flag-junit-base",
        "com_android_launcher3_flags_lib",
        "com_android_wm_shell_flags_lib",
        "androidx.test.uiautomator_uiautomator",
        "androidx.core_core-animation-testing",
        "androidx.test.ext.junit",
        "inline-mockito-robolectric-prebuilt",
        "platform-parametric-runner-lib",
        "testables",
        "Launcher3TestResources",
        "SystemUISharedLib",
        "launcher-testing-shared",
    ],
    libs: [
        "android.test.runner",
        "android.test.base",
        "android.test.mock",
        "truth",
    ],
    instrumentation_for: "Launcher3",
    upstream: true,
}
+1 −0
Original line number Diff line number Diff line
sdk=NEWEST_SDK
+2 −2
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@

package com.android.launcher3.util

import android.testing.AndroidTestingRunner
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
import com.android.launcher3.util.rule.TestStabilityRule
import java.util.concurrent.ExecutorService
@@ -30,7 +30,7 @@ import org.junit.runner.RunWith

/** Unit test for [ExecutorRunnable] */
@SmallTest
@RunWith(AndroidTestingRunner::class)
@RunWith(AndroidJUnit4::class)
class ExecutorRunnableTest {

    private lateinit var underTest: ExecutorRunnable<Int>
+5 −0
Original line number Diff line number Diff line
@@ -83,6 +83,7 @@ public class TestStabilityRule implements TestRule {

    public static int getRunFlavor() {
        if (sRunFlavor != 0) return sRunFlavor;
        if (isRobolectricTest()) return PLATFORM_POSTSUBMIT;

        final String flavorOverride = InstrumentationRegistry.getArguments().getString("flavor");

@@ -150,4 +151,8 @@ public class TestStabilityRule implements TestRule {
    public static boolean isPresubmit() {
        return getRunFlavor() == PLATFORM_PRESUBMIT;
    }

    public static boolean isRobolectricTest() {
        return Build.FINGERPRINT.contains("robolectric");
    }
}