Merge "Fix a NPE when forget wifi network" into sc-dev
This commit is contained in:
@@ -958,9 +958,11 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle
|
|||||||
mWifiEntry.forget(this);
|
mWifiEntry.forget(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
mMetricsFeatureProvider.action(
|
final Activity activity = mFragment.getActivity();
|
||||||
mFragment.getActivity(), SettingsEnums.ACTION_WIFI_FORGET);
|
if (activity != null) {
|
||||||
mFragment.getActivity().finish();
|
mMetricsFeatureProvider.action(activity, SettingsEnums.ACTION_WIFI_FORGET);
|
||||||
|
activity.finish();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
@@ -1135,8 +1137,11 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle
|
|||||||
Log.e(TAG, "Forget Wi-Fi network failed");
|
Log.e(TAG, "Forget Wi-Fi network failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
mMetricsFeatureProvider.action(mFragment.getActivity(), SettingsEnums.ACTION_WIFI_FORGET);
|
final Activity activity = mFragment.getActivity();
|
||||||
mFragment.getActivity().finish();
|
if (activity != null) {
|
||||||
|
mMetricsFeatureProvider.action(activity, SettingsEnums.ACTION_WIFI_FORGET);
|
||||||
|
activity.finish();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -1273,6 +1273,18 @@ public class WifiDetailPreferenceController2Test {
|
|||||||
Settings.Global.WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN, 1);
|
Settings.Global.WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void forgetNetwork_activityGone_ignoreFinish() {
|
||||||
|
setUpForConnectedNetwork();
|
||||||
|
setUpSpyController();
|
||||||
|
displayAndResume();
|
||||||
|
when(mMockFragment.getActivity()).thenReturn(null);
|
||||||
|
|
||||||
|
mForgetClickListener.getValue().onClick(null);
|
||||||
|
|
||||||
|
verify(mMockActivity, never()).finish();
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void forgetNetwork_standardWifiNetwork_forget() {
|
public void forgetNetwork_standardWifiNetwork_forget() {
|
||||||
setUpForConnectedNetwork();
|
setUpForConnectedNetwork();
|
||||||
|
Reference in New Issue
Block a user