Update network object when wifi meterness is changed
The new wifi disconnect behavior is introduced. When wifi
network is changed from unmetered to metered, the wifi
network will disconnect and reconnect. Update the test to
verify the same SSID wifi is connected and also update the
target network to verfiy the metered preference.
Bug: 153400606
Test: atest CtsNetTestCases:android.net.cts.ConnectivityManagerTest\
#testGetMultipathPreference
Change-Id: Ic298d3d85d8c6b77c8df7614a945f2c22dcdff38
This commit is contained in:
@@ -709,7 +709,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(
|
||||
@@ -721,6 +721,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,
|
||||
@@ -736,6 +740,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);
|
||||
|
||||
Reference in New Issue
Block a user