Fix Wi-Fi anonymous ID UI issue

- Do not reset the anonymous default ID after retrieving the previous value from WifiConfiguration.

Fix: 267517525
Flag: None
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=WifiConfigController2Test

Change-Id: Ic10d6953f6657836e18eab6884df2af0f35a20c4
This commit is contained in:
Weng Su
2024-01-23 06:44:46 +08:00
parent 495ab9d09e
commit dd1947c078
2 changed files with 19 additions and 1 deletions

View File

@@ -1382,7 +1382,11 @@ public class WifiConfigController2 implements TextWatcher,
@VisibleForTesting @VisibleForTesting
void setAnonymousIdVisible() { void setAnonymousIdVisible() {
mView.findViewById(R.id.l_anonymous).setVisibility(View.VISIBLE); View view = mView.findViewById(R.id.l_anonymous);
if (view.getVisibility() == View.VISIBLE) {
return;
}
view.setVisibility(View.VISIBLE);
mEapAnonymousView.setText(DEFAULT_ANONYMOUS_ID); mEapAnonymousView.setText(DEFAULT_ANONYMOUS_ID);
} }

View File

@@ -21,9 +21,11 @@ import static com.android.settings.wifi.WifiConfigController2.WIFI_EAP_METHOD_SI
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.eq; import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy; import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
@@ -997,6 +999,18 @@ public class WifiConfigController2Test {
assertThat(anonymousId.getText().toString()).isEqualTo(DEFAULT_ANONYMOUS_ID); assertThat(anonymousId.getText().toString()).isEqualTo(DEFAULT_ANONYMOUS_ID);
} }
@Test
public void setAnonymousIdVisible_viewIsVisible_doNotSetText() {
createController(mWifiEntry, WifiConfigUiBase2.MODE_CONNECT, false);
View anonymousLayout = mView.findViewById(R.id.l_anonymous);
mController.mEapAnonymousView = mock(TextView.class);
anonymousLayout.setVisibility(View.VISIBLE);
mController.setAnonymousIdVisible();
verify(mController.mEapAnonymousView, never()).setText(any(String.class));
}
private void setUpModifyingSavedCertificateConfigController(String savedCaCertificate, private void setUpModifyingSavedCertificateConfigController(String savedCaCertificate,
String savedUserCertificate) { String savedUserCertificate) {
final WifiConfiguration mockWifiConfig = spy(new WifiConfiguration()); final WifiConfiguration mockWifiConfig = spy(new WifiConfiguration());