From e35f186a30d8708a846819629eb23e34fed42fae Mon Sep 17 00:00:00 2001 From: Felka Chang Date: Tue, 30 Nov 2021 16:38:31 +0800 Subject: [PATCH] Add FrameworksCoreTests into PackageManager's test plan Pixel_4a_5G takes 3 minutes and 0.3 seconds to complete 272 android.content.pm.* tests in FrameworksCoreTests. * Using "include-filter": "android.content.pm." * Using @Presubmit annotation * Using @Ignore annotation for marking the fail tests * http://ab/I48400009998482145 Cuttlefish_x86_64_foldable takes 11 minutes and 26.7 seconds to complete 272 android.content.pm.* tests in FrameworksCoreTests. * http://ab/I10400009998514533 Test: TP="FrameworksCoreTests:android.content.pm" ; atest \ ${TP}.AppSearchPersonTest \ ${TP}.AppSearchShortcutInfoTest \ ${TP}.AppsQueryHelperTests \ ${TP}.ComponentTest \ ${TP}.ConstrainDisplayApisConfigTest \ ${TP}.CrossProfileAppsTest \ ${TP}.LimitedLengthInputStreamTest \ ${TP}.MacAuthenticatedInputStreamTest \ ${TP}.PackageHelperTests \ ${TP}.PackageManagerPropertyTests \ ${TP}.PackageManagerTests \ ${TP}.PackageParserCacheHelperTest \ ${TP}.PackagePartitionsTest \ ${TP}.ParceledListSliceTest \ ${TP}.PermissionInfoTest \ ${TP}.RegisteredServicesCacheTest \ ${TP}.ShortcutQueryWrapperTest \ ${TP}.SignatureTest \ ${TP}.SigningDetailsTest \ ${TP}.VerifierDeviceIdentityTest \ ${TP}.parsing.result.ParseInputAndResultTest Test: atest --collect-tests-only -p \ frameworks/base/services/core/java/com/android/server/pm Bug: 180650365 Change-Id: I0fa86c769e8b4e1e672de094b60d1ff1f362ecad --- core/java/android/content/pm/TEST_MAPPING | 3 ++ .../content/pm/AppSearchPersonTest.java | 2 + .../content/pm/AppSearchShortcutInfoTest.java | 4 ++ .../content/pm/AppsQueryHelperTests.java | 4 +- .../src/android/content/pm/ComponentTest.java | 2 + .../pm/LimitedLengthInputStreamTest.java | 2 + .../pm/MacAuthenticatedInputStreamTest.java | 2 + .../content/pm/PackageHelperTests.java | 2 + .../pm/PackageManagerPropertyTests.java | 2 + .../content/pm/PackageManagerTests.java | 2 + .../pm/PackageParserCacheHelperTest.java | 2 + .../content/pm/PackagePartitionsTest.java | 2 + .../content/pm/ParceledListSliceTest.java | 2 + .../content/pm/PermissionInfoTest.java | 2 + .../pm/RegisteredServicesCacheTest.java | 2 + .../src/android/content/pm/SignatureTest.java | 3 ++ .../content/pm/SigningDetailsTest.java | 2 + .../src/android/content/pm/TEST_MAPPING | 40 +++++++++++++++++++ .../pm/VerifierDeviceIdentityTest.java | 6 +++ .../parsing/result/ParseInputAndResultTest.kt | 2 + .../java/com/android/server/pm/TEST_MAPPING | 11 ----- 21 files changed, 86 insertions(+), 13 deletions(-) create mode 100644 core/tests/coretests/src/android/content/pm/TEST_MAPPING diff --git a/core/java/android/content/pm/TEST_MAPPING b/core/java/android/content/pm/TEST_MAPPING index cc4782ad4a794..062b909bb37ba 100644 --- a/core/java/android/content/pm/TEST_MAPPING +++ b/core/java/android/content/pm/TEST_MAPPING @@ -1,5 +1,8 @@ { "imports": [ + { + "path": "frameworks/base/core/tests/coretests/src/android/content/pm" + }, { "path": "frameworks/base/services/tests/PackageManagerServiceTests" }, diff --git a/core/tests/coretests/src/android/content/pm/AppSearchPersonTest.java b/core/tests/coretests/src/android/content/pm/AppSearchPersonTest.java index 1ff88f70019e4..5ba90597acfd5 100644 --- a/core/tests/coretests/src/android/content/pm/AppSearchPersonTest.java +++ b/core/tests/coretests/src/android/content/pm/AppSearchPersonTest.java @@ -19,9 +19,11 @@ package android.content.pm; import static com.google.common.truth.Truth.assertThat; import android.app.Person; +import android.platform.test.annotations.Presubmit; import org.junit.Test; +@Presubmit public class AppSearchPersonTest { @Test diff --git a/core/tests/coretests/src/android/content/pm/AppSearchShortcutInfoTest.java b/core/tests/coretests/src/android/content/pm/AppSearchShortcutInfoTest.java index 21eb44ad113a3..969357f66ddef 100644 --- a/core/tests/coretests/src/android/content/pm/AppSearchShortcutInfoTest.java +++ b/core/tests/coretests/src/android/content/pm/AppSearchShortcutInfoTest.java @@ -21,14 +21,18 @@ import static com.google.common.truth.Truth.assertThat; import android.app.Person; import android.content.ComponentName; import android.content.Intent; +import android.platform.test.annotations.Presubmit; import android.util.ArraySet; +import org.junit.Ignore; import org.junit.Test; import java.util.Set; +@Presubmit public class AppSearchShortcutInfoTest { + @Ignore("b/208375334") @Test public void testBuildShortcutAndGetValue() { final String category = diff --git a/core/tests/coretests/src/android/content/pm/AppsQueryHelperTests.java b/core/tests/coretests/src/android/content/pm/AppsQueryHelperTests.java index 9c03e1aa72abd..34ff8b0c98541 100644 --- a/core/tests/coretests/src/android/content/pm/AppsQueryHelperTests.java +++ b/core/tests/coretests/src/android/content/pm/AppsQueryHelperTests.java @@ -16,16 +16,16 @@ package android.content.pm; -import android.content.Context; import android.content.Intent; import android.os.UserHandle; +import android.platform.test.annotations.Presubmit; import android.test.AndroidTestCase; -import android.view.inputmethod.InputMethodInfo; import java.util.Arrays; import java.util.HashSet; import java.util.List; +@Presubmit public class AppsQueryHelperTests extends AndroidTestCase { private AppsQueryHelper mAppsQueryHelper; diff --git a/core/tests/coretests/src/android/content/pm/ComponentTest.java b/core/tests/coretests/src/android/content/pm/ComponentTest.java index f31f0b5ee1b4b..2342386c347a9 100644 --- a/core/tests/coretests/src/android/content/pm/ComponentTest.java +++ b/core/tests/coretests/src/android/content/pm/ComponentTest.java @@ -23,6 +23,7 @@ import static android.content.pm.PackageManager.GET_DISABLED_COMPONENTS; import android.content.ComponentName; import android.content.Intent; +import android.platform.test.annotations.Presubmit; import android.test.AndroidTestCase; import androidx.test.filters.MediumTest; @@ -48,6 +49,7 @@ import java.util.List; * would fix this. */ @Suppress // Failing. +@Presubmit public class ComponentTest extends AndroidTestCase { private PackageManager mPackageManager; diff --git a/core/tests/coretests/src/android/content/pm/LimitedLengthInputStreamTest.java b/core/tests/coretests/src/android/content/pm/LimitedLengthInputStreamTest.java index 1c703ab0b98f8..bfbb4a06d788e 100644 --- a/core/tests/coretests/src/android/content/pm/LimitedLengthInputStreamTest.java +++ b/core/tests/coretests/src/android/content/pm/LimitedLengthInputStreamTest.java @@ -16,6 +16,7 @@ package android.content.pm; +import android.platform.test.annotations.Presubmit; import android.test.AndroidTestCase; import androidx.test.filters.MediumTest; @@ -25,6 +26,7 @@ import java.io.IOException; import java.io.InputStream; import java.util.Arrays; +@Presubmit public class LimitedLengthInputStreamTest extends AndroidTestCase { private final byte[] TEST_STRING1 = "This is a test".getBytes(); diff --git a/core/tests/coretests/src/android/content/pm/MacAuthenticatedInputStreamTest.java b/core/tests/coretests/src/android/content/pm/MacAuthenticatedInputStreamTest.java index 1ddd753de80e6..963925a93f9ed 100644 --- a/core/tests/coretests/src/android/content/pm/MacAuthenticatedInputStreamTest.java +++ b/core/tests/coretests/src/android/content/pm/MacAuthenticatedInputStreamTest.java @@ -16,6 +16,7 @@ package android.content.pm; +import android.platform.test.annotations.Presubmit; import android.test.AndroidTestCase; import androidx.test.filters.LargeTest; @@ -29,6 +30,7 @@ import javax.crypto.Mac; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; +@Presubmit @LargeTest public class MacAuthenticatedInputStreamTest extends AndroidTestCase { diff --git a/core/tests/coretests/src/android/content/pm/PackageHelperTests.java b/core/tests/coretests/src/android/content/pm/PackageHelperTests.java index b62761973bbf0..947da0b072347 100644 --- a/core/tests/coretests/src/android/content/pm/PackageHelperTests.java +++ b/core/tests/coretests/src/android/content/pm/PackageHelperTests.java @@ -21,6 +21,7 @@ import static android.os.storage.VolumeInfo.STATE_MOUNTED; import android.content.Context; import android.os.storage.StorageManager; import android.os.storage.VolumeInfo; +import android.platform.test.annotations.Presubmit; import android.test.AndroidTestCase; import android.util.Log; @@ -34,6 +35,7 @@ import java.util.ArrayList; import java.util.List; import java.util.UUID; +@Presubmit public class PackageHelperTests extends AndroidTestCase { private static final boolean localLOGV = true; public static final String TAG = "PackageHelperTests"; diff --git a/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java b/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java index 3757712010a2f..d505492f3b800 100644 --- a/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java +++ b/core/tests/coretests/src/android/content/pm/PackageManagerPropertyTests.java @@ -24,12 +24,14 @@ import static org.junit.Assert.fail; import android.content.pm.PackageManager.Property; import android.os.Bundle; +import android.platform.test.annotations.Presubmit; import androidx.test.runner.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; +@Presubmit @RunWith(AndroidJUnit4.class) public class PackageManagerPropertyTests { diff --git a/core/tests/coretests/src/android/content/pm/PackageManagerTests.java b/core/tests/coretests/src/android/content/pm/PackageManagerTests.java index 7f53776d9bdf5..c2519ca0f238d 100644 --- a/core/tests/coretests/src/android/content/pm/PackageManagerTests.java +++ b/core/tests/coretests/src/android/content/pm/PackageManagerTests.java @@ -50,6 +50,7 @@ import android.os.Process; import android.os.RemoteException; import android.os.StatFs; import android.os.SystemClock; +import android.platform.test.annotations.Presubmit; import android.provider.Settings; import android.provider.Settings.SettingNotFoundException; import android.system.ErrnoException; @@ -85,6 +86,7 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.SynchronousQueue; import java.util.concurrent.TimeUnit; +@Presubmit public class PackageManagerTests extends AndroidTestCase { private static final boolean localLOGV = true; diff --git a/core/tests/coretests/src/android/content/pm/PackageParserCacheHelperTest.java b/core/tests/coretests/src/android/content/pm/PackageParserCacheHelperTest.java index e852f989a17fc..61a3a11f11220 100644 --- a/core/tests/coretests/src/android/content/pm/PackageParserCacheHelperTest.java +++ b/core/tests/coretests/src/android/content/pm/PackageParserCacheHelperTest.java @@ -22,6 +22,7 @@ import android.content.pm.PackageParserCacheHelper.ReadHelper; import android.content.pm.PackageParserCacheHelper.WriteHelper; import android.os.Bundle; import android.os.Parcel; +import android.platform.test.annotations.Presubmit; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; @@ -29,6 +30,7 @@ import androidx.test.runner.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; +@Presubmit @SmallTest @RunWith(AndroidJUnit4.class) public class PackageParserCacheHelperTest { diff --git a/core/tests/coretests/src/android/content/pm/PackagePartitionsTest.java b/core/tests/coretests/src/android/content/pm/PackagePartitionsTest.java index 570b713479eed..2986d61d46fc9 100644 --- a/core/tests/coretests/src/android/content/pm/PackagePartitionsTest.java +++ b/core/tests/coretests/src/android/content/pm/PackagePartitionsTest.java @@ -22,6 +22,7 @@ import static java.util.function.Function.identity; import android.content.pm.PackagePartitions.SystemPartition; import android.os.SystemProperties; +import android.platform.test.annotations.Presubmit; import androidx.test.runner.AndroidJUnit4; @@ -30,6 +31,7 @@ import org.junit.runner.RunWith; import java.util.ArrayList; +@Presubmit @RunWith(AndroidJUnit4.class) public class PackagePartitionsTest { diff --git a/core/tests/coretests/src/android/content/pm/ParceledListSliceTest.java b/core/tests/coretests/src/android/content/pm/ParceledListSliceTest.java index 8874525ebc774..01907fb099270 100644 --- a/core/tests/coretests/src/android/content/pm/ParceledListSliceTest.java +++ b/core/tests/coretests/src/android/content/pm/ParceledListSliceTest.java @@ -18,6 +18,7 @@ package android.content.pm; import android.os.Parcel; import android.os.Parcelable; +import android.platform.test.annotations.Presubmit; import androidx.test.filters.LargeTest; @@ -27,6 +28,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; +@Presubmit @LargeTest public class ParceledListSliceTest extends TestCase { diff --git a/core/tests/coretests/src/android/content/pm/PermissionInfoTest.java b/core/tests/coretests/src/android/content/pm/PermissionInfoTest.java index 606e81d642895..587909257f238 100644 --- a/core/tests/coretests/src/android/content/pm/PermissionInfoTest.java +++ b/core/tests/coretests/src/android/content/pm/PermissionInfoTest.java @@ -21,6 +21,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import android.os.Parcel; +import android.platform.test.annotations.Presubmit; import android.util.ArraySet; import androidx.test.ext.junit.runners.AndroidJUnit4; @@ -28,6 +29,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; +@Presubmit @RunWith(AndroidJUnit4.class) public final class PermissionInfoTest { private static final String KNOWN_CERT_DIGEST_1 = diff --git a/core/tests/coretests/src/android/content/pm/RegisteredServicesCacheTest.java b/core/tests/coretests/src/android/content/pm/RegisteredServicesCacheTest.java index e04d9034d2c13..fa4952e1634fa 100644 --- a/core/tests/coretests/src/android/content/pm/RegisteredServicesCacheTest.java +++ b/core/tests/coretests/src/android/content/pm/RegisteredServicesCacheTest.java @@ -21,6 +21,7 @@ import android.os.FileUtils; import android.os.Parcel; import android.os.Parcelable; import android.os.UserHandle; +import android.platform.test.annotations.Presubmit; import android.test.AndroidTestCase; import android.util.AttributeSet; import android.util.SparseArray; @@ -45,6 +46,7 @@ import java.util.Set; /** * Tests for {@link android.content.pm.RegisteredServicesCache} */ +@Presubmit @LargeTest public class RegisteredServicesCacheTest extends AndroidTestCase { private static final int U0 = 0; diff --git a/core/tests/coretests/src/android/content/pm/SignatureTest.java b/core/tests/coretests/src/android/content/pm/SignatureTest.java index 19458da796e8f..fb0a4358d3628 100644 --- a/core/tests/coretests/src/android/content/pm/SignatureTest.java +++ b/core/tests/coretests/src/android/content/pm/SignatureTest.java @@ -16,10 +16,13 @@ package android.content.pm; +import android.platform.test.annotations.Presubmit; + import androidx.test.filters.LargeTest; import junit.framework.TestCase; +@Presubmit @LargeTest public class SignatureTest extends TestCase { diff --git a/core/tests/coretests/src/android/content/pm/SigningDetailsTest.java b/core/tests/coretests/src/android/content/pm/SigningDetailsTest.java index cf7e5c663ba78..d5223492a83c0 100644 --- a/core/tests/coretests/src/android/content/pm/SigningDetailsTest.java +++ b/core/tests/coretests/src/android/content/pm/SigningDetailsTest.java @@ -27,6 +27,7 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import android.platform.test.annotations.Presubmit; import android.util.ArraySet; import android.util.PackageUtils; @@ -38,6 +39,7 @@ import org.junit.runner.RunWith; import java.util.Set; +@Presubmit @RunWith(AndroidJUnit4.class) @SmallTest public class SigningDetailsTest { diff --git a/core/tests/coretests/src/android/content/pm/TEST_MAPPING b/core/tests/coretests/src/android/content/pm/TEST_MAPPING new file mode 100644 index 0000000000000..15e04d11acf76 --- /dev/null +++ b/core/tests/coretests/src/android/content/pm/TEST_MAPPING @@ -0,0 +1,40 @@ +{ + "presubmit-large": [ + { + "name": "FrameworksCoreTests", + "options": [ + { + "include-filter": "android.content.pm." + }, + { + "include-annotation": "android.platform.test.annotations.Presubmit" + }, + { + "exclude-annotation": "androidx.test.filters.FlakyTest" + }, + { + "exclude-annotation": "org.junit.Ignore" + } + ] + } + ], + "postsubmit": [ + { + "name": "FrameworksCoreTests", + "options": [ + { + "include-filter": "android.content.pm." + }, + { + "include-annotation": "android.platform.test.annotations.Postsubmit" + }, + { + "exclude-annotation": "androidx.test.filters.FlakyTest" + }, + { + "exclude-annotation": "org.junit.Ignore" + } + ] + } + ] +} diff --git a/core/tests/coretests/src/android/content/pm/VerifierDeviceIdentityTest.java b/core/tests/coretests/src/android/content/pm/VerifierDeviceIdentityTest.java index e7cd02d866d5d..c05828046c554 100644 --- a/core/tests/coretests/src/android/content/pm/VerifierDeviceIdentityTest.java +++ b/core/tests/coretests/src/android/content/pm/VerifierDeviceIdentityTest.java @@ -17,11 +17,15 @@ package android.content.pm; import android.os.Parcel; +import android.platform.test.annotations.Presubmit; import androidx.test.filters.LargeTest; +import org.junit.Ignore; + import java.util.Random; +@Presubmit @LargeTest public class VerifierDeviceIdentityTest extends android.test.AndroidTestCase { private static final long TEST_1 = 0x7A5F00FF5A55AAA5L; @@ -151,6 +155,7 @@ public class VerifierDeviceIdentityTest extends android.test.AndroidTestCase { } } + @Ignore("b/208373220") public void testVerifierDeviceIdentity_Generate_MinValue() { VerifierDeviceIdentity id1 = new VerifierDeviceIdentity(TEST_MINVALUE); @@ -162,6 +167,7 @@ public class VerifierDeviceIdentityTest extends android.test.AndroidTestCase { + " should be the same", id1, id2); } + @Ignore("b/208373220") public void testVerifierDeviceIdentity_Generate_Random() { VerifierDeviceIdentity id1 = new VerifierDeviceIdentity(TEST_1); diff --git a/core/tests/coretests/src/android/content/pm/parsing/result/ParseInputAndResultTest.kt b/core/tests/coretests/src/android/content/pm/parsing/result/ParseInputAndResultTest.kt index 9ad63adda6b7e..19f470a6c66df 100644 --- a/core/tests/coretests/src/android/content/pm/parsing/result/ParseInputAndResultTest.kt +++ b/core/tests/coretests/src/android/content/pm/parsing/result/ParseInputAndResultTest.kt @@ -18,6 +18,7 @@ package android.content.pm.parsing.result import android.content.pm.PackageManager import android.os.Build +import android.platform.test.annotations.Presubmit import com.google.common.truth.Truth.assertThat import org.junit.After import org.junit.Assume.assumeFalse @@ -34,6 +35,7 @@ import org.mockito.Mockito.verify import org.mockito.Mockito.verifyNoMoreInteractions import java.io.IOException +@Presubmit class ParseInputAndResultTest { companion object { diff --git a/services/core/java/com/android/server/pm/TEST_MAPPING b/services/core/java/com/android/server/pm/TEST_MAPPING index d54acb7d6bd60..f71866907d1e4 100644 --- a/services/core/java/com/android/server/pm/TEST_MAPPING +++ b/services/core/java/com/android/server/pm/TEST_MAPPING @@ -129,17 +129,6 @@ } ] }, - { - "name": "FrameworksCoreTests", - "options": [ - { - "include-filter": "android.content.pm.PackageManagerTests" - }, - { - "exclude-annotation": "androidx.test.filters.Suppress" - } - ] - }, { "name": "PackageManagerServiceHostTests", "options": [