Merge "Update network object when wifi meterness is changed" am: db0b1c13e5 am: 7c111f53bf am: b14bd1af58 am: 4cda12d551 am: 4d5a128eec

Change-Id: Ic37510844dd5a95bda2ca94a3a559388691e3212
This commit is contained in:
Chiachang Wang
2020-04-20 15:15:58 +00:00
committed by Automerger Merge Worker

View File

@@ -718,7 +718,7 @@ public class ConnectivityManagerTest extends AndroidTestCase {
@AppModeFull(reason = "Cannot get WifiManager in instant app mode")
public void testGetMultipathPreference() throws Exception {
final ContentResolver resolver = mContext.getContentResolver();
final Network network = ensureWifiConnected();
ensureWifiConnected();
final String ssid = unquoteSSID(mWifiManager.getConnectionInfo().getSSID());
final String oldMeteredSetting = getWifiMeteredStatus(ssid);
final String oldMeteredMultipathPreference = Settings.Global.getString(
@@ -730,6 +730,10 @@ public class ConnectivityManagerTest extends AndroidTestCase {
Integer.toString(newMeteredPreference));
setWifiMeteredStatus(ssid, "true");
waitForActiveNetworkMetered(true);
// Wifi meterness changes from unmetered to metered will disconnect and reconnect since
// R.
final Network network = mCm.getActiveNetwork();
assertEquals(ssid, unquoteSSID(mWifiManager.getConnectionInfo().getSSID()));
assertEquals(mCm.getNetworkCapabilities(network).hasCapability(
NET_CAPABILITY_NOT_METERED), false);
assertMultipathPreferenceIsEventually(network, initialMeteredPreference,
@@ -745,6 +749,7 @@ public class ConnectivityManagerTest extends AndroidTestCase {
oldMeteredPreference, newMeteredPreference);
setWifiMeteredStatus(ssid, "false");
// No disconnect from unmetered to metered.
waitForActiveNetworkMetered(false);
assertEquals(mCm.getNetworkCapabilities(network).hasCapability(
NET_CAPABILITY_NOT_METERED), true);