Merge "Check target transport type for meterness change" am: ac551dff33 am: 63592fd781 am: 8167ede0fd am: 82debfd479

Change-Id: Ic9bdc557210f41b92b861b876fa5dc22bcb449dc
This commit is contained in:
Chiachang Wang
2020-04-22 06:53:18 +00:00
committed by Automerger Merge Worker

View File

@@ -639,11 +639,14 @@ public class ConnectivityManagerTest extends AndroidTestCase {
}
}
private void waitForActiveNetworkMetered(boolean requestedMeteredness) throws Exception {
private void waitForActiveNetworkMetered(int targetTransportType, boolean requestedMeteredness)
throws Exception {
final CountDownLatch latch = new CountDownLatch(1);
final NetworkCallback networkCallback = new NetworkCallback() {
@Override
public void onCapabilitiesChanged(Network network, NetworkCapabilities nc) {
if (!nc.hasTransport(targetTransportType)) return;
final boolean metered = !nc.hasCapability(NET_CAPABILITY_NOT_METERED);
if (metered == requestedMeteredness) {
latch.countDown();
@@ -720,10 +723,10 @@ public class ConnectivityManagerTest extends AndroidTestCase {
Settings.Global.putString(resolver, NETWORK_METERED_MULTIPATH_PREFERENCE,
Integer.toString(newMeteredPreference));
setWifiMeteredStatus(ssid, "true");
waitForActiveNetworkMetered(true);
waitForActiveNetworkMetered(TRANSPORT_WIFI, true);
// Wifi meterness changes from unmetered to metered will disconnect and reconnect since
// R.
final Network network = mCm.getActiveNetwork();
final Network network = ensureWifiConnected();
assertEquals(ssid, unquoteSSID(mWifiManager.getConnectionInfo().getSSID()));
assertEquals(mCm.getNetworkCapabilities(network).hasCapability(
NET_CAPABILITY_NOT_METERED), false);
@@ -741,7 +744,7 @@ public class ConnectivityManagerTest extends AndroidTestCase {
setWifiMeteredStatus(ssid, "false");
// No disconnect from unmetered to metered.
waitForActiveNetworkMetered(false);
waitForActiveNetworkMetered(TRANSPORT_WIFI, false);
assertEquals(mCm.getNetworkCapabilities(network).hasCapability(
NET_CAPABILITY_NOT_METERED), true);
assertMultipathPreferenceIsEventually(network, newMeteredPreference,