diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2019-05-15 23:02:15 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2019-05-15 23:02:15 +0000 |
commit | 4807d725b6620b589bfb057bc9ed96a8b222b27b (patch) | |
tree | b90589ca1ae7ece31f6b7128232298307dc65ac8 | |
parent | 304f02adffb2a8c544ccfc2239f91299b627b94b (diff) | |
parent | ce97e99357bef7fc5fb52564da7eaa6c0b817974 (diff) | |
download | cts-temp_b_132622481_stage-aosp-master.tar.gz |
Merge "DO NOT MERGE - Merge pi-platform-release (PPRL.190505.001) into stage-aosp-master" into stage-aosp-mastertemp_b_132622481_stage-aosp-master
26 files changed, 79 insertions, 79 deletions
diff --git a/common/device-side/util/src/com/android/compatibility/common/util/BusinessLogicConditionalTestCase.java b/common/device-side/util/src/com/android/compatibility/common/util/BusinessLogicConditionalTestCase.java deleted file mode 100644 index d12caa8fe01..00000000000 --- a/common/device-side/util/src/com/android/compatibility/common/util/BusinessLogicConditionalTestCase.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (C) 2017 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.android.compatibility.common.util; - -import org.junit.Before; - -/** - * Device-side base class for tests leveraging the Business Logic service for rules that are - * conditionally added based on the device characteristics. - */ -public class BusinessLogicConditionalTestCase extends BusinessLogicTestCase { - - @Override - @Before - public void handleBusinessLogic() { - super.loadBusinessLogic(); - ensureAuthenticated(); - super.executeBusinessLogic(); - } - - protected void ensureAuthenticated() { - if (!mCanReadBusinessLogic) { - // super class handles the condition that the service is unavailable. - return; - } - - if (!mBusinessLogic.mConditionalTestsEnabled) { - skipTest("Execution of device specific tests is not enabled. " - + "Enable with '--conditional-business-logic-tests-enabled'"); - } - - if (mBusinessLogic.isAuthorized()) { - // Run test as normal. - return; - } - String message = mBusinessLogic.getAuthenticationStatusMessage(); - - // Fail test since request was not authorized. - failTest(String.format("Unable to execute because %s.", message)); - } -} diff --git a/hostsidetests/os/src/android/os/cts/OsHostTests.java b/hostsidetests/os/src/android/os/cts/OsHostTests.java index 086f787cc5a..c557c9eed57 100644 --- a/hostsidetests/os/src/android/os/cts/OsHostTests.java +++ b/hostsidetests/os/src/android/os/cts/OsHostTests.java @@ -86,12 +86,22 @@ public class OsHostTests extends DeviceTestCase implements IBuildReceiver, IAbiR */ @AppModeFull(reason = "Error message is different for instant app (Activity does not exist)") public void testNonExportedActivities() throws Exception { - // Attempt to launch the non-exported activity in the test app - CollectingOutputReceiver outputReceiver = new CollectingOutputReceiver(); - mDevice.executeShellCommand(START_NON_EXPORTED_ACTIVITY_COMMAND, outputReceiver); - final String output = outputReceiver.getOutput(); + // Run as unroot + boolean wasRoot = mDevice.isAdbRoot(); + try { + mDevice.disableAdbRoot(); + // Attempt to launch the non-exported activity in the test app + CollectingOutputReceiver outputReceiver = new CollectingOutputReceiver(); + mDevice.executeShellCommand(START_NON_EXPORTED_ACTIVITY_COMMAND, outputReceiver); + final String output = outputReceiver.getOutput(); - assertTrue(output.contains("Permission Denial") && output.contains(" not exported")); + assertTrue(output.contains("Permission Denial") && output.contains(" not exported")); + } finally { + // Restore back to original root state + if (wasRoot) { + mDevice.enableAdbRoot(); + } + } } public void testIntentFilterHostValidation() throws Exception { diff --git a/hostsidetests/securitybulletin/AndroidTest.xml b/hostsidetests/securitybulletin/AndroidTest.xml index 0f61403feb1..090f4c139e3 100644 --- a/hostsidetests/securitybulletin/AndroidTest.xml +++ b/hostsidetests/securitybulletin/AndroidTest.xml @@ -186,6 +186,6 @@ <test class="com.android.compatibility.common.tradefed.testtype.JarHostTest" > <option name="jar" value="CtsSecurityBulletinHostTestCases.jar" /> - <option name="runtime-hint" value="8m40s" /> + <option name="runtime-hint" value="18m26s" /> </test> </configuration> diff --git a/hostsidetests/securitybulletin/securityPatch/CVE-2017-0477/Android.mk b/hostsidetests/securitybulletin/securityPatch/CVE-2017-0477/Android.mk index 5561115431c..498e85f1ad4 100644 --- a/hostsidetests/securitybulletin/securityPatch/CVE-2017-0477/Android.mk +++ b/hostsidetests/securitybulletin/securityPatch/CVE-2017-0477/Android.mk @@ -22,7 +22,7 @@ LOCAL_MULTILIB := both LOCAL_MODULE_STEM_32 := $(LOCAL_MODULE)32 LOCAL_MODULE_STEM_64 := $(LOCAL_MODULE)64 -LOCAL_COMPATIBILITY_SUITE := cts sts +LOCAL_COMPATIBILITY_SUITE := cts sts vts LOCAL_CTS_TEST_PACKAGE := android.security.cts LOCAL_ARM_MODE := arm diff --git a/hostsidetests/securitybulletin/securityPatch/CVE-2018-9490/Android.mk b/hostsidetests/securitybulletin/securityPatch/CVE-2018-9490/Android.mk index 4a4301f5457..a6a520fb2fc 100644 --- a/hostsidetests/securitybulletin/securityPatch/CVE-2018-9490/Android.mk +++ b/hostsidetests/securitybulletin/securityPatch/CVE-2018-9490/Android.mk @@ -25,7 +25,7 @@ LOCAL_SHARED_LIBRARIES := \ libpac \ # Tag this module as a cts test artifact -LOCAL_COMPATIBILITY_SUITE := cts sts +LOCAL_COMPATIBILITY_SUITE := cts sts vts LOCAL_CTS_TEST_PACKAGE := android.security.cts LOCAL_ARM_MODE := arm diff --git a/hostsidetests/securitybulletin/src/android/security/cts/Poc16_04.java b/hostsidetests/securitybulletin/src/android/security/cts/Poc16_04.java index 4527c0cb3d5..9a7e62acac4 100644 --- a/hostsidetests/securitybulletin/src/android/security/cts/Poc16_04.java +++ b/hostsidetests/securitybulletin/src/android/security/cts/Poc16_04.java @@ -28,7 +28,7 @@ public class Poc16_04 extends SecurityTestCase { AdbUtils.runCommandLine("logcat -c" , getDevice()); AdbUtils.runPoc("CVE-2016-2419", getDevice(), 60); String logcat = AdbUtils.runCommandLine("logcat -d", getDevice()); - assertNotMatches("[\\s\\n\\S]*IOMX_InfoLeak b26323455[\\s\\n\\S]*", logcat); + assertNotMatchesMultiLine("IOMX_InfoLeak b26323455", logcat); } /** diff --git a/hostsidetests/securitybulletin/src/android/security/cts/Poc16_05.java b/hostsidetests/securitybulletin/src/android/security/cts/Poc16_05.java index 886ebafe50a..d866a5a7d74 100644 --- a/hostsidetests/securitybulletin/src/android/security/cts/Poc16_05.java +++ b/hostsidetests/securitybulletin/src/android/security/cts/Poc16_05.java @@ -29,7 +29,7 @@ public class Poc16_05 extends SecurityTestCase { AdbUtils.runPoc("CVE-2016-2460", getDevice(), 60); String logcat = AdbUtils.runCommandLine("logcat -d", getDevice()); - assertNotMatches("[\\s\\n\\S]*IGraphicBufferProducer_Info is Leaked[\\s\\n\\S]*", logcat); + assertNotMatchesMultiLine("IGraphicBufferProducer_Info is Leaked", logcat); } /** diff --git a/hostsidetests/securitybulletin/src/android/security/cts/Poc16_11.java b/hostsidetests/securitybulletin/src/android/security/cts/Poc16_11.java index b6bb97b6fec..bb18b0df32e 100644 --- a/hostsidetests/securitybulletin/src/android/security/cts/Poc16_11.java +++ b/hostsidetests/securitybulletin/src/android/security/cts/Poc16_11.java @@ -29,7 +29,7 @@ public class Poc16_11 extends SecurityTestCase { AdbUtils.runCommandLine("logcat -c", getDevice()); AdbUtils.runPoc("CVE-2012-6702", getDevice(), 60); String logcat = AdbUtils.runCommandLine("logcat -d", getDevice()); - assertNotMatches("[\\s\\n\\S]*fail: encountered same random values![\\s\\n\\S]*", logcat); + assertNotMatchesMultiLine("fail: encountered same random values!", logcat); } /** diff --git a/hostsidetests/securitybulletin/src/android/security/cts/Poc17_02.java b/hostsidetests/securitybulletin/src/android/security/cts/Poc17_02.java index 27ded73df76..e2e51347ee5 100644 --- a/hostsidetests/securitybulletin/src/android/security/cts/Poc17_02.java +++ b/hostsidetests/securitybulletin/src/android/security/cts/Poc17_02.java @@ -27,7 +27,7 @@ public class Poc17_02 extends SecurityTestCase { AdbUtils.runCommandLine("logcat -c", getDevice()); AdbUtils.runPoc("CVE-2017-0426", getDevice(), 60); String logcatOut = AdbUtils.runCommandLine("logcat -d", getDevice()); - assertNotMatches("[\\s\\n\\S]*Bugreports file in wrong path[\\s\\n\\S]*", logcatOut); + assertNotMatchesMultiLine("Bugreports file in wrong path", logcatOut); } /** diff --git a/hostsidetests/securitybulletin/src/android/security/cts/Poc17_11.java b/hostsidetests/securitybulletin/src/android/security/cts/Poc17_11.java index cdeec399947..e1c497724bf 100644 --- a/hostsidetests/securitybulletin/src/android/security/cts/Poc17_11.java +++ b/hostsidetests/securitybulletin/src/android/security/cts/Poc17_11.java @@ -34,8 +34,8 @@ public class Poc17_11 extends SecurityTestCase { // Wait for intent to be processed before checking logcat Thread.sleep(5000); String logcat = AdbUtils.runCommandLine("logcat -d", getDevice()); - assertNotMatches("[\\s\\n\\S]*Fatal signal 11 \\(SIGSEGV\\)" + + assertNotMatchesMultiLine("Fatal signal 11 \\(SIGSEGV\\)" + "[\\s\\n\\S]*>>> /system/bin/" + - "mediaserver <<<[\\s\\n\\S]*", logcat); + "mediaserver <<<", logcat); } } diff --git a/hostsidetests/securitybulletin/src/android/security/cts/Poc18_02.java b/hostsidetests/securitybulletin/src/android/security/cts/Poc18_02.java index a4eb53955f5..c9f48f9436c 100644 --- a/hostsidetests/securitybulletin/src/android/security/cts/Poc18_02.java +++ b/hostsidetests/securitybulletin/src/android/security/cts/Poc18_02.java @@ -46,7 +46,7 @@ public class Poc18_02 extends SecurityTestCase { AdbUtils.runPoc("CVE-2017-13273", getDevice(), 60); String dmesgOut = AdbUtils.runCommandLine("cat /sys/fs/pstore/console-ramoops", getDevice()); - assertNotMatches("[\\s\\n\\S]*CVE-2017-132736 Tainted:" + "[\\s\\n\\S]*" + + assertNotMatchesMultiLine("CVE-2017-132736 Tainted:" + "[\\s\\n\\S]*" + "Kernel panic - not syncing: Fatal exception in interrupt", dmesgOut); } AdbUtils.runCommandLine("setenforce 1",getDevice()); diff --git a/hostsidetests/securitybulletin/src/android/security/cts/Poc18_07.java b/hostsidetests/securitybulletin/src/android/security/cts/Poc18_07.java index 4d8d73be734..9595d5acec4 100644 --- a/hostsidetests/securitybulletin/src/android/security/cts/Poc18_07.java +++ b/hostsidetests/securitybulletin/src/android/security/cts/Poc18_07.java @@ -30,6 +30,6 @@ public class Poc18_07 extends SecurityTestCase { AdbUtils.runCommandLine("logcat -c" , getDevice()); AdbUtils.runPoc("CVE-2018-9424", getDevice(), 60); String result = AdbUtils.runCommandLine("logcat -d", getDevice()); - assertNotMatches("[\\s\\n\\S]*Fatal signal [\\s\\n\\S]*", result); + assertNotMatchesMultiLine("Fatal signal", result); } } diff --git a/tests/framework/base/activitymanager/src/android/server/am/ActivityManagerAmProfileTests.java b/tests/framework/base/activitymanager/src/android/server/am/ActivityManagerAmProfileTests.java index 8c3941f5931..74f454605c3 100644 --- a/tests/framework/base/activitymanager/src/android/server/am/ActivityManagerAmProfileTests.java +++ b/tests/framework/base/activitymanager/src/android/server/am/ActivityManagerAmProfileTests.java @@ -106,10 +106,11 @@ public class ActivityManagerAmProfileTests extends ActivityManagerTestBase { launchActivity(DEBUGGABLE_APP_ACTIVITY); executeShellCommand(getStopProfileCmd(DEBUGGABLE_APP_ACTIVITY)); - // Sleep for 0.1 second (100 milliseconds) so the generation of the profiling + + // Sleep for 0.3 second (300 milliseconds) so the generation of the profiling // file is complete. try { - Thread.sleep(100); + Thread.sleep(300); } catch (InterruptedException e) { //ignored } diff --git a/tests/signature/api-check/system-annotation/Android.mk b/tests/signature/api-check/system-annotation/Android.mk index 2eb3b86c018..429f5f82b6c 100644 --- a/tests/signature/api-check/system-annotation/Android.mk +++ b/tests/signature/api-check/system-annotation/Android.mk @@ -22,6 +22,8 @@ LOCAL_STATIC_JAVA_LIBRARIES := compatibility-device-util-axt LOCAL_SIGNATURE_API_FILES := \ system-current.api \ system-removed.api \ + car-system-current.api \ + car-system-removed.api \ LOCAL_MIN_SDK_VERSION := 27 include $(LOCAL_PATH)/../build_signature_apk.mk diff --git a/tests/signature/api-check/system-annotation/AndroidTest.xml b/tests/signature/api-check/system-annotation/AndroidTest.xml index 286eea3691e..f8d1e92adf4 100644 --- a/tests/signature/api-check/system-annotation/AndroidTest.xml +++ b/tests/signature/api-check/system-annotation/AndroidTest.xml @@ -28,6 +28,12 @@ <target_preparer class="com.android.compatibility.common.tradefed.targetprep.FilePusher"> <option name="push" value="system-removed.api->/data/local/tmp/signature-test/system-removed.api" /> </target_preparer> + <target_preparer class="com.android.compatibility.common.tradefed.targetprep.FilePusher"> + <option name="push" value="car-system-current.api->/data/local/tmp/signature-test/car-system-current.api" /> + </target_preparer> + <target_preparer class="com.android.compatibility.common.tradefed.targetprep.FilePusher"> + <option name="push" value="car-system-removed.api->/data/local/tmp/signature-test/car-system-removed.api" /> + </target_preparer> <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> <option name="cleanup-apks" value="true" /> <option name="test-file-name" value="CtsSystemApiAnnotationTestCases.apk" /> @@ -36,7 +42,7 @@ <option name="package" value="android.signature.cts.api.system_annotation" /> <option name="runner" value="repackaged.android.test.InstrumentationTestRunner" /> <option name="class" value="android.signature.cts.api.AnnotationTest" /> - <option name="instrumentation-arg" key="expected-api-files" value="system-current.api,system-removed.api" /> + <option name="instrumentation-arg" key="expected-api-files" value="system-current.api,system-removed.api,car-system-current.api,car-system-removed.api" /> <option name="instrumentation-arg" key="annotation-for-exact-match" value="android.annotation.SystemApi" /> <option name="runtime-hint" value="30s" /> </test> diff --git a/tests/tests/location/src/android/location/cts/TestMeasurementUtil.java b/tests/tests/location/src/android/location/cts/TestMeasurementUtil.java index 7986af214b0..26aedf8d70b 100644 --- a/tests/tests/location/src/android/location/cts/TestMeasurementUtil.java +++ b/tests/tests/location/src/android/location/cts/TestMeasurementUtil.java @@ -24,6 +24,7 @@ import android.location.GnssNavigationMessage; import android.location.GnssStatus; import android.location.LocationManager; import android.os.Build; +import android.os.SystemProperties; import android.util.Log; import java.util.Arrays; @@ -55,7 +56,6 @@ public final class TestMeasurementUtil { private static final int YEAR_2016 = 2016; private static final int YEAR_2017 = 2017; - private static final int YEAR_2018 = 2018; private enum GnssBand { GNSS_L1, @@ -816,10 +816,10 @@ public final class TestMeasurementUtil { public static void verifyGnssCarrierFrequency(SoftAssert softAssert, TestLocationManager testLocationManager, boolean hasCarrierFrequency, float carrierFrequencyHz) { - // Enforcing CarrierFrequencyHz check only for year 2018+ - if (testLocationManager.getLocationManager().getGnssYearOfHardware() >= YEAR_2018) { + // Enforcing CarrierFrequencyHz present only for devices shipped with P+. + if (SystemProperties.getInt("ro.product.first_api_level", 0) >= Build.VERSION_CODES.P) { softAssert.assertTrue("Measurement has Carrier Frequency: " + hasCarrierFrequency, - hasCarrierFrequency); + hasCarrierFrequency); } if (hasCarrierFrequency) { diff --git a/tests/tests/nativehardware/jni/AHardwareBufferTest.cpp b/tests/tests/nativehardware/jni/AHardwareBufferTest.cpp index 324ab9e064c..116771ad9b0 100644 --- a/tests/tests/nativehardware/jni/AHardwareBufferTest.cpp +++ b/tests/tests/nativehardware/jni/AHardwareBufferTest.cpp @@ -324,7 +324,7 @@ TEST(AHardwareBufferTest, ProtectedContentAndCpuReadIncompatible) { AHardwareBuffer* buffer = NULL; AHardwareBuffer_Desc desc = {}; desc.width = 120; - desc.width = 240; + desc.height = 240; desc.layers = 1; desc.usage = AHARDWAREBUFFER_USAGE_GPU_COLOR_OUTPUT | AHARDWAREBUFFER_USAGE_CPU_READ_OFTEN; desc.format = AHARDWAREBUFFER_FORMAT_R8G8B8A8_UNORM; diff --git a/tests/tests/security/AndroidTest.xml b/tests/tests/security/AndroidTest.xml index 208b50c494e..0160b8b5120 100644 --- a/tests/tests/security/AndroidTest.xml +++ b/tests/tests/security/AndroidTest.xml @@ -25,7 +25,7 @@ <target_preparer class="com.android.compatibility.common.tradefed.targetprep.CrashReporter" /> <test class="com.android.tradefed.testtype.AndroidJUnitTest" > <option name="package" value="android.security.cts" /> - <option name="runtime-hint" value="1h8m15s" /> + <option name="runtime-hint" value="1h40m18s" /> <!-- test-timeout unit is ms, value = 15 min --> <option name="test-timeout" value="900000" /> <option name="hidden-api-checks" value="false" /> diff --git a/tests/tests/security/res/raw/cve_2017_17773.mp4 b/tests/tests/security/res/raw/cve_2017_17773.mp4 Binary files differnew file mode 100644 index 00000000000..09e32c9f213 --- /dev/null +++ b/tests/tests/security/res/raw/cve_2017_17773.mp4 diff --git a/tests/tests/security/res/raw/cve_2017_18074.wma b/tests/tests/security/res/raw/cve_2017_18074.wma Binary files differnew file mode 100644 index 00000000000..2634a4d5c41 --- /dev/null +++ b/tests/tests/security/res/raw/cve_2017_18074.wma diff --git a/tests/tests/security/res/raw/cve_2018_5874.mp4 b/tests/tests/security/res/raw/cve_2018_5874.mp4 Binary files differnew file mode 100644 index 00000000000..f1656bf136d --- /dev/null +++ b/tests/tests/security/res/raw/cve_2018_5874.mp4 diff --git a/tests/tests/security/res/raw/cve_2018_5875.mp4 b/tests/tests/security/res/raw/cve_2018_5875.mp4 Binary files differnew file mode 100644 index 00000000000..c07d5d5a2f6 --- /dev/null +++ b/tests/tests/security/res/raw/cve_2018_5875.mp4 diff --git a/tests/tests/security/res/raw/cve_2018_5876.mp4 b/tests/tests/security/res/raw/cve_2018_5876.mp4 Binary files differnew file mode 100644 index 00000000000..7f656a4cf73 --- /dev/null +++ b/tests/tests/security/res/raw/cve_2018_5876.mp4 diff --git a/tests/tests/security/res/raw/cve_2018_5882.flac b/tests/tests/security/res/raw/cve_2018_5882.flac Binary files differnew file mode 100644 index 00000000000..5089aea67d7 --- /dev/null +++ b/tests/tests/security/res/raw/cve_2018_5882.flac diff --git a/tests/tests/security/res/raw/cve_2018_5894.mp4 b/tests/tests/security/res/raw/cve_2018_5894.mp4 Binary files differnew file mode 100644 index 00000000000..09720c6ec80 --- /dev/null +++ b/tests/tests/security/res/raw/cve_2018_5894.mp4 diff --git a/tests/tests/security/src/android/security/cts/StagefrightTest.java b/tests/tests/security/src/android/security/cts/StagefrightTest.java index 6c44889c0b1..5b9e8e36c45 100644 --- a/tests/tests/security/src/android/security/cts/StagefrightTest.java +++ b/tests/tests/security/src/android/security/cts/StagefrightTest.java @@ -928,6 +928,41 @@ public class StagefrightTest extends InstrumentationTestCase { before any existing test methods ***********************************************************/ + @SecurityTest(minPatchLevel = "2018-03") + public void testStagefright_cve_2017_17773() throws Exception { + doStagefrightTest(R.raw.cve_2017_17773); + } + + @SecurityTest(minPatchLevel = "2018-04") + public void testStagefright_cve_2017_18074() throws Exception { + doStagefrightTest(R.raw.cve_2017_18074); + } + + @SecurityTest(minPatchLevel = "2018-06") + public void testStagefright_cve_2018_5894() throws Exception { + doStagefrightTest(R.raw.cve_2018_5894); + } + + @SecurityTest(minPatchLevel = "2018-07") + public void testStagefright_cve_2018_5874() throws Exception { + doStagefrightTest(R.raw.cve_2018_5874); + } + + @SecurityTest(minPatchLevel = "2018-07") + public void testStagefright_cve_2018_5875() throws Exception { + doStagefrightTest(R.raw.cve_2018_5875); + } + + @SecurityTest(minPatchLevel = "2018-07") + public void testStagefright_cve_2018_5876() throws Exception { + doStagefrightTest(R.raw.cve_2018_5876); + } + + @SecurityTest(minPatchLevel = "2018-07") + public void testStagefright_cve_2018_5882() throws Exception { + doStagefrightTest(R.raw.cve_2018_5882); + } + @SecurityTest(minPatchLevel = "2017-12") public void testBug_65186291() throws Exception { int[] frameSizes = getFrameSizes(R.raw.bug_65186291_framelen); |