[PasspointV2] Clear feature flag settings_wifi_details_saved_screen
Clear feature flag settings_wifi_details_saved_screen Bug: b/128369527 Test: make RunSettingsRoboTests -j32 ROBOTEST_FILTER=com.android.settings.wifi Change-Id: Ib8fc9c9eb52bee12d6501a2041c32aa60c80e70e
This commit is contained in:
@@ -26,7 +26,6 @@ public class FeatureFlags {
|
|||||||
public static final String MOBILE_NETWORK_V2 = "settings_mobile_network_v2";
|
public static final String MOBILE_NETWORK_V2 = "settings_mobile_network_v2";
|
||||||
public static final String NETWORK_INTERNET_V2 = "settings_network_and_internet_v2";
|
public static final String NETWORK_INTERNET_V2 = "settings_network_and_internet_v2";
|
||||||
public static final String SLICE_INJECTION = "settings_slice_injection";
|
public static final String SLICE_INJECTION = "settings_slice_injection";
|
||||||
public static final String WIFI_DETAILS_SAVED_SCREEN = "settings_wifi_details_saved_screen";
|
|
||||||
public static final String WIFI_DETAILS_DATAUSAGE_HEADER =
|
public static final String WIFI_DETAILS_DATAUSAGE_HEADER =
|
||||||
"settings_wifi_details_datausage_header";
|
"settings_wifi_details_datausage_header";
|
||||||
}
|
}
|
||||||
|
@@ -71,7 +71,6 @@ import com.android.settings.wifi.WifiDialog;
|
|||||||
import com.android.settings.wifi.WifiDialog.WifiDialogListener;
|
import com.android.settings.wifi.WifiDialog.WifiDialogListener;
|
||||||
import com.android.settings.wifi.WifiUtils;
|
import com.android.settings.wifi.WifiUtils;
|
||||||
import com.android.settings.wifi.dpp.WifiDppUtils;
|
import com.android.settings.wifi.dpp.WifiDppUtils;
|
||||||
import com.android.settings.wifi.savedaccesspoints.SavedAccessPointsWifiSettings;
|
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
import com.android.settingslib.core.AbstractPreferenceController;
|
||||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
@@ -259,9 +258,9 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
public void onLost(Network network) {
|
public void onLost(Network network) {
|
||||||
final boolean lostCurrentNetwork = network.equals(mNetwork);
|
final boolean lostCurrentNetwork = network.equals(mNetwork);
|
||||||
if (lostCurrentNetwork) {
|
if (lostCurrentNetwork) {
|
||||||
// If support detail page for saved network, should update as disconnect but not
|
// Should update as disconnect but not exit. Except for ephemeral network which
|
||||||
// exit. Except for ephemeral network which should not show on saved network list.
|
// should not show on saved network list.
|
||||||
if (SavedAccessPointsWifiSettings.usingDetailsFragment(mContext) && !mIsEphemeral) {
|
if (!mIsEphemeral) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -351,16 +350,12 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
mLifecycle = lifecycle;
|
mLifecycle = lifecycle;
|
||||||
lifecycle.addObserver(this);
|
lifecycle.addObserver(this);
|
||||||
|
|
||||||
if (SavedAccessPointsWifiSettings.usingDetailsFragment(mContext)) {
|
mWifiTracker = WifiTrackerFactory.create(
|
||||||
mWifiTracker = WifiTrackerFactory.create(
|
mFragment.getActivity(),
|
||||||
mFragment.getActivity(),
|
mWifiListener,
|
||||||
mWifiListener,
|
mLifecycle,
|
||||||
mLifecycle,
|
true /*includeSaved*/,
|
||||||
true /*includeSaved*/,
|
true /*includeScans*/);
|
||||||
true /*includeScans*/);
|
|
||||||
} else {
|
|
||||||
mWifiTracker = null;
|
|
||||||
}
|
|
||||||
mConnected = mAccessPoint.isActive();
|
mConnected = mAccessPoint.isActive();
|
||||||
// When lost the network connection, WifiInfo/NetworkInfo will be clear. So causes we
|
// When lost the network connection, WifiInfo/NetworkInfo will be clear. So causes we
|
||||||
// could not check if the AccessPoint is ephemeral. Need to cache it in first.
|
// could not check if the AccessPoint is ephemeral. Need to cache it in first.
|
||||||
@@ -545,11 +540,6 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
if (mNetwork == null || mNetworkInfo == null || mWifiInfo == null) {
|
if (mNetwork == null || mNetworkInfo == null || mWifiInfo == null) {
|
||||||
// Once connected, can't get mNetworkInfo immediately, return false and wait for
|
// Once connected, can't get mNetworkInfo immediately, return false and wait for
|
||||||
// next time to update UI.
|
// next time to update UI.
|
||||||
if (SavedAccessPointsWifiSettings.usingDetailsFragment(mContext)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
exitActivity();
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -761,8 +751,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
|
|
||||||
private boolean canConnectNetwork() {
|
private boolean canConnectNetwork() {
|
||||||
// Display connect button for disconnected AP even not in the range.
|
// Display connect button for disconnected AP even not in the range.
|
||||||
return SavedAccessPointsWifiSettings.usingDetailsFragment(mContext)
|
return !mAccessPoint.isActive();
|
||||||
&& !mAccessPoint.isActive();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void refreshIpLayerInfo() {
|
private void refreshIpLayerInfo() {
|
||||||
|
@@ -92,7 +92,7 @@ public class SavedAccessPointsPreferenceController extends BasePreferenceControl
|
|||||||
@Override
|
@Override
|
||||||
public boolean onPreferenceClick(Preference preference) {
|
public boolean onPreferenceClick(Preference preference) {
|
||||||
if (mHost != null) {
|
if (mHost != null) {
|
||||||
mHost.showWifiDialog((AccessPointPreference) preference);
|
mHost.showWifiPage((AccessPointPreference) preference);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@@ -41,12 +41,10 @@ import com.android.settingslib.wifi.AccessPointPreference;
|
|||||||
/**
|
/**
|
||||||
* UI to manage saved networks/access points.
|
* UI to manage saved networks/access points.
|
||||||
*/
|
*/
|
||||||
public class SavedAccessPointsWifiSettings extends DashboardFragment
|
public class SavedAccessPointsWifiSettings extends DashboardFragment {
|
||||||
implements WifiDialog.WifiDialogListener, DialogInterface.OnCancelListener {
|
|
||||||
|
|
||||||
private static final String TAG = "SavedAccessPoints";
|
private static final String TAG = "SavedAccessPoints";
|
||||||
|
|
||||||
private WifiManager mWifiManager;
|
|
||||||
private Bundle mAccessPointSavedState;
|
private Bundle mAccessPointSavedState;
|
||||||
private AccessPoint mSelectedAccessPoint;
|
private AccessPoint mSelectedAccessPoint;
|
||||||
|
|
||||||
@@ -71,8 +69,6 @@ public class SavedAccessPointsWifiSettings extends DashboardFragment
|
|||||||
@Override
|
@Override
|
||||||
public void onAttach(Context context) {
|
public void onAttach(Context context) {
|
||||||
super.onAttach(context);
|
super.onAttach(context);
|
||||||
mWifiManager = (WifiManager) getContext()
|
|
||||||
.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
|
|
||||||
use(SavedAccessPointsPreferenceController.class)
|
use(SavedAccessPointsPreferenceController.class)
|
||||||
.setHost(this);
|
.setHost(this);
|
||||||
use(SubscribedAccessPointsPreferenceController.class)
|
use(SubscribedAccessPointsPreferenceController.class)
|
||||||
@@ -90,7 +86,7 @@ public class SavedAccessPointsWifiSettings extends DashboardFragment
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showWifiDialog(@Nullable AccessPointPreference accessPoint) {
|
public void showWifiPage(@Nullable AccessPointPreference accessPoint) {
|
||||||
removeDialog(WifiSettings.WIFI_DIALOG_ID);
|
removeDialog(WifiSettings.WIFI_DIALOG_ID);
|
||||||
|
|
||||||
if (accessPoint != null) {
|
if (accessPoint != null) {
|
||||||
@@ -102,52 +98,18 @@ public class SavedAccessPointsWifiSettings extends DashboardFragment
|
|||||||
mAccessPointSavedState = null;
|
mAccessPointSavedState = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (usingDetailsFragment(getContext())) {
|
if (mSelectedAccessPoint == null) {
|
||||||
if (mSelectedAccessPoint == null) {
|
mSelectedAccessPoint = new AccessPoint(getActivity(), mAccessPointSavedState);
|
||||||
mSelectedAccessPoint = new AccessPoint(getActivity(), mAccessPointSavedState);
|
|
||||||
}
|
|
||||||
final Bundle savedState = new Bundle();
|
|
||||||
mSelectedAccessPoint.saveWifiState(savedState);
|
|
||||||
|
|
||||||
new SubSettingLauncher(getContext())
|
|
||||||
.setTitleText(mSelectedAccessPoint.getTitle())
|
|
||||||
.setDestination(WifiNetworkDetailsFragment.class.getName())
|
|
||||||
.setArguments(savedState)
|
|
||||||
.setSourceMetricsCategory(getMetricsCategory())
|
|
||||||
.launch();
|
|
||||||
} else {
|
|
||||||
showDialog(WifiSettings.WIFI_DIALOG_ID);
|
|
||||||
}
|
}
|
||||||
}
|
final Bundle savedState = new Bundle();
|
||||||
|
mSelectedAccessPoint.saveWifiState(savedState);
|
||||||
|
|
||||||
@Override
|
new SubSettingLauncher(getContext())
|
||||||
public Dialog onCreateDialog(int dialogId) {
|
.setTitleText(mSelectedAccessPoint.getTitle())
|
||||||
switch (dialogId) {
|
.setDestination(WifiNetworkDetailsFragment.class.getName())
|
||||||
case WifiSettings.WIFI_DIALOG_ID:
|
.setArguments(savedState)
|
||||||
// Modify network
|
.setSourceMetricsCategory(getMetricsCategory())
|
||||||
if (mSelectedAccessPoint == null) {
|
.launch();
|
||||||
// Restore AP from save state
|
|
||||||
mSelectedAccessPoint = new AccessPoint(getActivity(), mAccessPointSavedState);
|
|
||||||
// Reset the saved access point data
|
|
||||||
mAccessPointSavedState = null;
|
|
||||||
}
|
|
||||||
final WifiDialog dialog = WifiDialog.createModal(
|
|
||||||
getActivity(), this, mSelectedAccessPoint, WifiConfigUiBase.MODE_VIEW);
|
|
||||||
dialog.setOnCancelListener(this);
|
|
||||||
|
|
||||||
return dialog;
|
|
||||||
}
|
|
||||||
return super.onCreateDialog(dialogId);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getDialogMetricsCategory(int dialogId) {
|
|
||||||
switch (dialogId) {
|
|
||||||
case WifiSettings.WIFI_DIALOG_ID:
|
|
||||||
return SettingsEnums.DIALOG_WIFI_SAVED_AP_EDIT;
|
|
||||||
default:
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -162,45 +124,6 @@ public class SavedAccessPointsWifiSettings extends DashboardFragment
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onForget(WifiDialog dialog) {
|
|
||||||
if (mSelectedAccessPoint != null) {
|
|
||||||
if (mSelectedAccessPoint.isPasspointConfig()) {
|
|
||||||
try {
|
|
||||||
mWifiManager.removePasspointConfiguration(
|
|
||||||
mSelectedAccessPoint.getPasspointFqdn());
|
|
||||||
} catch (RuntimeException e) {
|
|
||||||
Log.e(TAG, "Failed to remove Passpoint configuration for "
|
|
||||||
+ mSelectedAccessPoint.getConfigName());
|
|
||||||
}
|
|
||||||
if (isSubscriptionsFeatureEnabled()) {
|
|
||||||
use(SubscribedAccessPointsPreferenceController.class)
|
|
||||||
.postRefreshSubscribedAccessPoints();
|
|
||||||
} else {
|
|
||||||
use(SavedAccessPointsPreferenceController.class)
|
|
||||||
.postRefreshSavedAccessPoints();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// both onSuccess/onFailure will call postRefreshSavedAccessPoints
|
|
||||||
mWifiManager.forget(mSelectedAccessPoint.getConfig().networkId,
|
|
||||||
use(SavedAccessPointsPreferenceController.class));
|
|
||||||
}
|
|
||||||
mSelectedAccessPoint = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCancel(DialogInterface dialog) {
|
|
||||||
mSelectedAccessPoint = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Checks if showing WifiNetworkDetailsFragment when clicking saved network item.
|
|
||||||
*/
|
|
||||||
public static boolean usingDetailsFragment(Context context) {
|
|
||||||
return FeatureFlagUtils.isEnabled(context, FeatureFlags.WIFI_DETAILS_SAVED_SCREEN);
|
|
||||||
}
|
|
||||||
|
|
||||||
boolean isSubscriptionsFeatureEnabled() {
|
boolean isSubscriptionsFeatureEnabled() {
|
||||||
return FeatureFlagUtils.isEnabled(getContext(), FeatureFlags.MOBILE_NETWORK_V2)
|
return FeatureFlagUtils.isEnabled(getContext(), FeatureFlags.MOBILE_NETWORK_V2)
|
||||||
&& FeatureFlagPersistent.isEnabled(getContext(), FeatureFlags.NETWORK_INTERNET_V2);
|
&& FeatureFlagPersistent.isEnabled(getContext(), FeatureFlags.NETWORK_INTERNET_V2);
|
||||||
|
@@ -91,7 +91,7 @@ public class SubscribedAccessPointsPreferenceController extends BasePreferenceCo
|
|||||||
@Override
|
@Override
|
||||||
public boolean onPreferenceClick(Preference preference) {
|
public boolean onPreferenceClick(Preference preference) {
|
||||||
if (mHost != null) {
|
if (mHost != null) {
|
||||||
mHost.showWifiDialog((AccessPointPreference) preference);
|
mHost.showWifiPage((AccessPointPreference) preference);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@@ -290,16 +290,12 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
|
|
||||||
setupMockedPreferenceScreen();
|
setupMockedPreferenceScreen();
|
||||||
|
|
||||||
// Disable saved network detail page feature for this test
|
|
||||||
FeatureFlagUtils.setEnabled(mContext, FeatureFlags.WIFI_DETAILS_SAVED_SCREEN, false);
|
|
||||||
when(mockAccessPoint.isActive()).thenReturn(true);
|
when(mockAccessPoint.isActive()).thenReturn(true);
|
||||||
|
|
||||||
mController = newWifiDetailPreferenceController();
|
mController = newWifiDetailPreferenceController();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setUpForConnectedNetwork() {
|
private void setUpForConnectedNetwork() {
|
||||||
// Enable saved network detail page feature for this test
|
|
||||||
FeatureFlagUtils.setEnabled(mContext, FeatureFlags.WIFI_DETAILS_SAVED_SCREEN, true);
|
|
||||||
when(mockAccessPoint.isActive()).thenReturn(true);
|
when(mockAccessPoint.isActive()).thenReturn(true);
|
||||||
ArrayList list = new ArrayList<>();
|
ArrayList list = new ArrayList<>();
|
||||||
list.add(mockAccessPoint);
|
list.add(mockAccessPoint);
|
||||||
@@ -312,8 +308,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setUpForDisconnectedNetwork() {
|
private void setUpForDisconnectedNetwork() {
|
||||||
// Enable saved network detail page feature for this test
|
|
||||||
FeatureFlagUtils.setEnabled(mContext, FeatureFlags.WIFI_DETAILS_SAVED_SCREEN, true);
|
|
||||||
when(mockAccessPoint.isActive()).thenReturn(false);
|
when(mockAccessPoint.isActive()).thenReturn(false);
|
||||||
ArrayList list = new ArrayList<>();
|
ArrayList list = new ArrayList<>();
|
||||||
list.add(mockAccessPoint);
|
list.add(mockAccessPoint);
|
||||||
@@ -326,8 +320,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void setUpForNotInRangeNetwork() {
|
private void setUpForNotInRangeNetwork() {
|
||||||
// Enable saved network detail page feature for this test
|
|
||||||
FeatureFlagUtils.setEnabled(mContext, FeatureFlags.WIFI_DETAILS_SAVED_SCREEN, true);
|
|
||||||
when(mockAccessPoint.isActive()).thenReturn(false);
|
when(mockAccessPoint.isActive()).thenReturn(false);
|
||||||
ArrayList list = new ArrayList<>();
|
ArrayList list = new ArrayList<>();
|
||||||
list.add(mockAccessPoint);
|
list.add(mockAccessPoint);
|
||||||
@@ -494,15 +486,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
.unregisterNetworkCallback(mCallbackCaptor.getValue());
|
.unregisterNetworkCallback(mCallbackCaptor.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void entityHeader_shouldHaveIconSet() {
|
|
||||||
Drawable expectedIcon = mockIconInjector.getIcon(LEVEL);
|
|
||||||
|
|
||||||
displayAndResume();
|
|
||||||
|
|
||||||
verify(mockHeaderController).setIcon(expectedIcon);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void entityHeader_shouldHaveIconSetForConnectedNetwork() {
|
public void entityHeader_shouldHaveIconSetForConnectedNetwork() {
|
||||||
setUpForConnectedNetwork();
|
setUpForConnectedNetwork();
|
||||||
@@ -552,13 +535,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
verify(mockHeaderController).setSummary(summary);
|
verify(mockHeaderController).setSummary(summary);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void signalStrengthPref_shouldHaveIconSet() {
|
|
||||||
displayAndResume();
|
|
||||||
|
|
||||||
verify(mockSignalStrengthPref).setIcon(any(Drawable.class));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void signalStrengthPref_shouldHaveIconSetForConnectedNetwork() {
|
public void signalStrengthPref_shouldHaveIconSetForConnectedNetwork() {
|
||||||
setUpForConnectedNetwork();
|
setUpForConnectedNetwork();
|
||||||
@@ -586,16 +562,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
verify(mockSignalStrengthPref, never()).setIcon(any(Drawable.class));
|
verify(mockSignalStrengthPref, never()).setIcon(any(Drawable.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void signalStrengthPref_shouldHaveDetailTextSet() {
|
|
||||||
String expectedStrength =
|
|
||||||
mContext.getResources().getStringArray(R.array.wifi_signal)[LEVEL];
|
|
||||||
|
|
||||||
displayAndResume();
|
|
||||||
|
|
||||||
verify(mockSignalStrengthPref).setSummary(expectedStrength);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void signalStrengthPref_shouldHaveDetailTextSetForConnectedNetwork() {
|
public void signalStrengthPref_shouldHaveDetailTextSetForConnectedNetwork() {
|
||||||
setUpForConnectedNetwork();
|
setUpForConnectedNetwork();
|
||||||
@@ -917,17 +883,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
verify(mockDnsPref).setVisible(false);
|
verify(mockDnsPref).setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void noCurrentNetwork_shouldFinishActivity() {
|
|
||||||
// If WifiManager#getCurrentNetwork() returns null, then the network is neither connected
|
|
||||||
// nor connecting and WifiStateMachine has not reached L2ConnectedState.
|
|
||||||
when(mockWifiManager.getCurrentNetwork()).thenReturn(null);
|
|
||||||
|
|
||||||
displayAndResume();
|
|
||||||
|
|
||||||
verify(mockActivity).finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void noCurrentNetwork_shouldNotFinishActivityForConnectedNetwork() {
|
public void noCurrentNetwork_shouldNotFinishActivityForConnectedNetwork() {
|
||||||
// For new feature for display detail page for saved network for disconnected network,
|
// For new feature for display detail page for saved network for disconnected network,
|
||||||
@@ -1306,16 +1261,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
verify(mockWifiManager, times(2)).getConnectionInfo();
|
verify(mockWifiManager, times(2)).getConnectionInfo();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void networkDisconnectedState_shouldFinishActivity() {
|
|
||||||
displayAndResume();
|
|
||||||
|
|
||||||
when(mockConnectivityManager.getNetworkInfo(any(Network.class))).thenReturn(null);
|
|
||||||
mContext.sendBroadcast(new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION));
|
|
||||||
|
|
||||||
verify(mockActivity).finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void networkDisconnectedState_shouldNotFinishActivityForConnectedNetwork() {
|
public void networkDisconnectedState_shouldNotFinishActivityForConnectedNetwork() {
|
||||||
setUpForConnectedNetwork();
|
setUpForConnectedNetwork();
|
||||||
@@ -1328,15 +1273,6 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
verify(mockActivity, never()).finish();
|
verify(mockActivity, never()).finish();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void networkOnLost_shouldFinishActivity() {
|
|
||||||
displayAndResume();
|
|
||||||
|
|
||||||
mCallbackCaptor.getValue().onLost(mockNetwork);
|
|
||||||
|
|
||||||
verify(mockActivity).finish();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void networkOnLost_shouldNotFinishActivityForConnectedNetwork() {
|
public void networkOnLost_shouldNotFinishActivityForConnectedNetwork() {
|
||||||
setUpForConnectedNetwork();
|
setUpForConnectedNetwork();
|
||||||
@@ -1428,23 +1364,25 @@ public class WifiDetailPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testRefreshRssiViews_shouldNotUpdateIfLevelIsSame() {
|
public void testRefreshRssiViews_shouldNotUpdateIfLevelIsSameForConnectedNetwork() {
|
||||||
|
setUpForConnectedNetwork();
|
||||||
displayAndResume();
|
displayAndResume();
|
||||||
|
|
||||||
mContext.sendBroadcast(new Intent(WifiManager.RSSI_CHANGED_ACTION));
|
mContext.sendBroadcast(new Intent(WifiManager.RSSI_CHANGED_ACTION));
|
||||||
|
|
||||||
verify(mockAccessPoint, times(2)).getLevel();
|
verify(mockAccessPoint, times(3)).getLevel();
|
||||||
verify(mockIconInjector, times(1)).getIcon(anyInt());
|
verify(mockIconInjector, times(1)).getIcon(anyInt());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testRefreshRssiViews_shouldUpdateOnLevelChange() {
|
public void testRefreshRssiViews_shouldUpdateOnLevelChangeForConnectedNetwork() {
|
||||||
|
setUpForConnectedNetwork();
|
||||||
displayAndResume();
|
displayAndResume();
|
||||||
|
|
||||||
when(mockAccessPoint.getLevel()).thenReturn(0);
|
when(mockAccessPoint.getLevel()).thenReturn(0);
|
||||||
mContext.sendBroadcast(new Intent(WifiManager.RSSI_CHANGED_ACTION));
|
mContext.sendBroadcast(new Intent(WifiManager.RSSI_CHANGED_ACTION));
|
||||||
|
|
||||||
verify(mockAccessPoint, times(2)).getLevel();
|
verify(mockAccessPoint, times(4)).getLevel();
|
||||||
verify(mockIconInjector, times(2)).getIcon(anyInt());
|
verify(mockIconInjector, times(2)).getIcon(anyInt());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -17,46 +17,22 @@
|
|||||||
package com.android.settings.wifi.savedaccesspoints;
|
package com.android.settings.wifi.savedaccesspoints;
|
||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import static org.mockito.Mockito.doReturn;
|
import static org.mockito.Mockito.doReturn;
|
||||||
import static org.mockito.Mockito.spy;
|
import static org.mockito.Mockito.spy;
|
||||||
import static org.mockito.Mockito.verify;
|
|
||||||
import static org.mockito.Mockito.when;
|
|
||||||
|
|
||||||
import android.net.wifi.WifiConfiguration;
|
|
||||||
import android.net.wifi.WifiManager;
|
|
||||||
|
|
||||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.FeatureFlags;
|
|
||||||
import com.android.settings.development.featureflags.FeatureFlagPersistent;
|
|
||||||
import com.android.settings.wifi.WifiConfigController;
|
|
||||||
import com.android.settings.wifi.WifiDialog;
|
|
||||||
import com.android.settingslib.core.AbstractPreferenceController;
|
import com.android.settingslib.core.AbstractPreferenceController;
|
||||||
import com.android.settingslib.wifi.AccessPoint;
|
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.MockitoAnnotations;
|
||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
import org.robolectric.RuntimeEnvironment;
|
|
||||||
import org.robolectric.util.ReflectionHelpers;
|
|
||||||
|
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
public class SavedAccessPointsWifiSettingsTest {
|
public class SavedAccessPointsWifiSettingsTest {
|
||||||
|
|
||||||
@Mock
|
|
||||||
private WifiManager mWifiManager;
|
|
||||||
@Mock
|
|
||||||
private WifiDialog mWifiDialog;
|
|
||||||
@Mock
|
|
||||||
private WifiConfigController mConfigController;
|
|
||||||
@Mock
|
|
||||||
private WifiConfiguration mWifiConfiguration;
|
|
||||||
@Mock
|
|
||||||
private AccessPoint mAccessPoint;
|
|
||||||
@Mock
|
@Mock
|
||||||
private SubscribedAccessPointsPreferenceController mSubscribedApController;
|
private SubscribedAccessPointsPreferenceController mSubscribedApController;
|
||||||
@Mock
|
@Mock
|
||||||
@@ -73,45 +49,6 @@ public class SavedAccessPointsWifiSettingsTest {
|
|||||||
.use(SubscribedAccessPointsPreferenceController.class);
|
.use(SubscribedAccessPointsPreferenceController.class);
|
||||||
doReturn(mSavedApController).when(mSettings)
|
doReturn(mSavedApController).when(mSettings)
|
||||||
.use(SavedAccessPointsPreferenceController.class);
|
.use(SavedAccessPointsPreferenceController.class);
|
||||||
|
|
||||||
ReflectionHelpers.setField(mSettings, "mWifiManager", mWifiManager);
|
|
||||||
|
|
||||||
when(mWifiDialog.getController()).thenReturn(mConfigController);
|
|
||||||
when(mConfigController.getConfig()).thenReturn(mWifiConfiguration);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void onForget_isPasspointConfig_shouldRefreshAPList() {
|
|
||||||
FeatureFlagPersistent.setEnabled(RuntimeEnvironment.application,
|
|
||||||
FeatureFlags.NETWORK_INTERNET_V2, false);
|
|
||||||
when(mAccessPoint.isPasspointConfig()).thenReturn(true);
|
|
||||||
ReflectionHelpers.setField(mSettings, "mSelectedAccessPoint", mAccessPoint);
|
|
||||||
|
|
||||||
mSettings.onForget(null);
|
|
||||||
|
|
||||||
verify(mSavedApController).postRefreshSavedAccessPoints();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void onForget_isPasspointConfig_shouldRefreshSubscribedAPList() {
|
|
||||||
FeatureFlagPersistent.setEnabled(RuntimeEnvironment.application,
|
|
||||||
FeatureFlags.NETWORK_INTERNET_V2, true);
|
|
||||||
when(mAccessPoint.isPasspointConfig()).thenReturn(true);
|
|
||||||
ReflectionHelpers.setField(mSettings, "mSelectedAccessPoint", mAccessPoint);
|
|
||||||
|
|
||||||
mSettings.onForget(null);
|
|
||||||
|
|
||||||
verify(mSubscribedApController).postRefreshSubscribedAccessPoints();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void onForget_shouldInvokeForgetApi() {
|
|
||||||
ReflectionHelpers.setField(mSettings, "mSelectedAccessPoint", mAccessPoint);
|
|
||||||
when(mAccessPoint.getConfig()).thenReturn(mWifiConfiguration);
|
|
||||||
|
|
||||||
mSettings.onForget(mWifiDialog);
|
|
||||||
|
|
||||||
verify(mWifiManager).forget(mWifiConfiguration.networkId, mSavedApController);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
Reference in New Issue
Block a user