Merge "Check target transport type for meterness change" am: ac551dff33 am: 63592fd781 am: 8167ede0fd am: 82debfd479 am: 4f97f84178
Change-Id: I044f18a677d4dbd7a5a1457f90992164ca7e07ea
This commit is contained in:
@@ -648,11 +648,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();
|
||||
@@ -729,10 +732,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);
|
||||
@@ -750,7 +753,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,
|
||||
|
||||
Reference in New Issue
Block a user