diff options
author | android-build-prod (mdb) <android-build-team-robot@google.com> | 2021-01-13 23:44:59 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2021-01-13 23:44:59 +0000 |
commit | d1cba2ed4bcdd58623d2037f2ca4ea30cf8f609b (patch) | |
tree | 776593b88c70ce3d9e19ab010050dcbeff05e755 | |
parent | 62bb80a338a8afee3e9ccc2c113e01cf44640db9 (diff) | |
parent | efb31cd54b22deec5b6aa3b960054d4a37b5f34a (diff) | |
download | cts-oreo-cts-release.tar.gz |
Merge "Snap for 7025793 from fa96b1ec373444b601a0b516b494152d7c908cad to oreo-cts-release" into oreo-cts-releaseandroid-cts-8.0_r26oreo-cts-release
6 files changed, 52 insertions, 15 deletions
diff --git a/apps/CtsVerifier/AndroidManifest.xml b/apps/CtsVerifier/AndroidManifest.xml index a119a978a9d..c5124012792 100644 --- a/apps/CtsVerifier/AndroidManifest.xml +++ b/apps/CtsVerifier/AndroidManifest.xml @@ -18,7 +18,7 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.cts.verifier" android:versionCode="5" - android:versionName="8.0_r25"> + android:versionName="8.0_r26"> <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="26"/> diff --git a/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java b/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java index 37744fa618f..6f65faf4e05 100644 --- a/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java +++ b/hostsidetests/appsecurity/test-apps/EncryptionApp/src/com/android/cts/encryptionapp/EncryptionAppTest.java @@ -172,6 +172,9 @@ public class EncryptionAppTest extends InstrumentationTestCase { mDevice.pressMenu(); mDevice.waitForIdle(); enterTestPin(); + mDevice.waitForIdle(); + mDevice.pressHome(); + mDevice.waitForIdle(); } public void assertLocked() throws Exception { diff --git a/tests/tests/net/jni/NativeMultinetworkJni.c b/tests/tests/net/jni/NativeMultinetworkJni.c index c2dff8dbefa..8d721e0e796 100644 --- a/tests/tests/net/jni/NativeMultinetworkJni.c +++ b/tests/tests/net/jni/NativeMultinetworkJni.c @@ -179,20 +179,16 @@ JNIEXPORT jint Java_android_net_cts_MultinetworkApiTest_runDatagramCheck( setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &timeo, sizeof(timeo)); // For reference see: - // https://tools.ietf.org/html/draft-tsvwg-quic-protocol#section-6.1 + // https://datatracker.ietf.org/doc/html/draft-ietf-quic-invariants uint8_t quic_packet[1200] = { - 0x0d, // public flags: - // - version present (0x01), - // - 64bit connection ID (0x0c), - // - 1 byte packet number (0x00) + 0xc0, // long header + 0xaa, 0xda, 0xca, 0xca, // reserved-space version number + 0x08, // destination connection ID length 0, 0, 0, 0, 0, 0, 0, 0, // 64bit connection ID - 0xaa, 0xda, 0xca, 0xaa, // reserved-space version number - 1, // 1 byte packet number - 0x00, // private flags - 0x07, // PING frame (cuz why not) + 0x00, // source connection ID length }; - arc4random_buf(quic_packet + 1, 8); // random connection ID + arc4random_buf(quic_packet + 6, 8); // random connection ID uint8_t response[1500]; ssize_t sent, rcvd; @@ -217,7 +213,7 @@ JNIEXPORT jint Java_android_net_cts_MultinetworkApiTest_runDatagramCheck( i + 1, MAX_RETRIES, rcvd, errnum); } } - if (rcvd < 9) { + if (rcvd < 15) { ALOGD("QUIC UDP %s: sent=%zd but rcvd=%zd, errno=%d", kPort, sent, rcvd, errnum); if (rcvd <= 0) { ALOGD("Does this network block UDP port %s?", kPort); @@ -226,7 +222,7 @@ JNIEXPORT jint Java_android_net_cts_MultinetworkApiTest_runDatagramCheck( return -EPROTO; } - int conn_id_cmp = memcmp(quic_packet + 1, response + 1, 8); + int conn_id_cmp = memcmp(quic_packet + 6, response + 7, 8); if (conn_id_cmp != 0) { ALOGD("sent and received connection IDs do not match"); close(fd); diff --git a/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java b/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java index 44b49c0274d..6dd6fc0302c 100644 --- a/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java +++ b/tests/tests/net/src/android/net/wifi/cts/WifiManagerTest.java @@ -32,6 +32,7 @@ import android.net.wifi.WifiManager.WifiLock; import android.net.wifi.hotspot2.PasspointConfiguration; import android.net.wifi.hotspot2.pps.Credential; import android.net.wifi.hotspot2.pps.HomeSp; +import android.os.Build; import android.os.SystemClock; import android.provider.Settings; import android.test.AndroidTestCase; @@ -43,6 +44,7 @@ import java.net.HttpURLConnection; import java.net.URL; import java.security.MessageDigest; import java.security.cert.X509Certificate; +import java.time.LocalDate; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -125,6 +127,14 @@ public class WifiManagerTest extends AndroidTestCase { } }; + private static final LocalDate SECURITY_PATCH_DATE_2020_12 = LocalDate.of(2020, 12, 1); + + private static boolean doesDeviceHave2020_12SecurityPatch() { + LocalDate deviceSecurityPatchDate = LocalDate.parse(Build.VERSION.SECURITY_PATCH); + // LocalDate#isBefore() is exclusive, so use workaround: !(a < b) <=> (b <= a) + return !deviceSecurityPatchDate.isBefore(SECURITY_PATCH_DATE_2020_12); + } + @Override protected void setUp() throws Exception { super.setUp(); @@ -411,12 +421,36 @@ public class WifiManagerTest extends AndroidTestCase { assertFalse(existSSID(SSID1)); assertTrue(existSSID(SSID2)); + // Need an effectively-final holder because we need to modify inner Intent in callback. + class IntentHolder { + Intent intent; + } + IntentHolder intentHolder = new IntentHolder(); + mContext.registerReceiver(new BroadcastReceiver() { + @Override + public void onReceive(Context context, Intent intent) { + Log.i(TAG, "Received CONFIGURED_NETWORKS_CHANGED_ACTION broadcast: " + intent); + intentHolder.intent = intent; + } + }, new IntentFilter(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION)); + // Remove a WifiConfig assertTrue(mWifiManager.removeNetwork(netId)); assertFalse(mWifiManager.removeNetwork(notExist)); assertFalse(existSSID(SSID1)); assertFalse(existSSID(SSID2)); + if (doesDeviceHave2020_12SecurityPatch()) { + // wait 10 seconds to ensure that broadcast wasn't received + Thread.sleep(DURATION); + Intent intent = intentHolder.intent; + // Broadcast shouldn't be received because although CtsNetTestCases has + // ACCESS_WIFI_STATE permission, it doesn't have ACCESS_FINE_LOCATION permission. + // Receivers need both permissions to get the broadcast. + assertNull("Unexpected received CONFIGURED_NETWORKS_CHANGED_ACTION broadcast!", + intent); + } + assertTrue(mWifiManager.saveConfiguration()); } finally { reEnableNetworks(enabledSsids, mWifiManager.getConfiguredNetworks()); diff --git a/tests/tests/security/src/android/security/cts/StagefrightTest.java b/tests/tests/security/src/android/security/cts/StagefrightTest.java index c2d16355af1..db020d4aa52 100644 --- a/tests/tests/security/src/android/security/cts/StagefrightTest.java +++ b/tests/tests/security/src/android/security/cts/StagefrightTest.java @@ -919,7 +919,11 @@ public class StagefrightTest extends InstrumentationTestCase { codec.release(); } } - ex.unselectTrack(t); + try { + ex.unselectTrack(t); + } catch (IllegalArgumentException e) { + // since we're just cleaning up, we don't care if it fails + } } ex.release(); String cve = rname.replace("_", "-").toUpperCase(); diff --git a/tools/cts-tradefed/Android.mk b/tools/cts-tradefed/Android.mk index 07d8cfb5bd1..324f36efd0b 100644 --- a/tools/cts-tradefed/Android.mk +++ b/tools/cts-tradefed/Android.mk @@ -25,7 +25,7 @@ LOCAL_SUITE_BUILD_NUMBER := $(BUILD_NUMBER_FROM_FILE) LOCAL_SUITE_TARGET_ARCH := $(TARGET_ARCH) LOCAL_SUITE_NAME := CTS LOCAL_SUITE_FULLNAME := "Compatibility Test Suite" -LOCAL_SUITE_VERSION := 8.0_r25 +LOCAL_SUITE_VERSION := 8.0_r26 LOCAL_MODULE := cts-tradefed LOCAL_COMPATIBILITY_SUITE := general-tests |