Show error message when inputting invalid audio sharing password.

Test: atest
Bug: b/356071394
Flag: com.android.settingslib.flags.enable_le_audio_sharing
Change-Id: I6e1ff6d32175ad6e4286db922645d608a2708c45
This commit is contained in:
chelseahao
2024-10-28 17:14:19 +08:00
committed by Chelsea Hao
parent 75e2dc4b21
commit ae7acae24c
6 changed files with 82 additions and 4 deletions

View File

@@ -320,16 +320,37 @@ public class AudioSharingPasswordPreferenceControllerTest {
}
@Test
public void idTextValid_emptyString() {
public void isTextValid_emptyString() {
boolean valid = mController.isTextValid("");
assertThat(valid).isFalse();
}
@Test
public void idTextValid_validPassword() {
public void isTextValid_emptyString_showEditTextFormatAlert() {
mController.displayPreference(mScreen);
ShadowLooper.idleMainLooper();
boolean valid = mController.isTextValid("");
assertThat(valid).isFalse();
verify(mPreference).showEditTextFormatAlert(true);
}
@Test
public void isTextValid_validPassword() {
boolean valid = mController.isTextValid(BROADCAST_PASSWORD);
assertThat(valid).isTrue();
}
@Test
public void isTextValid_validPassword_hideEditTextFormatAlert() {
mController.displayPreference(mScreen);
ShadowLooper.idleMainLooper();
boolean valid = mController.isTextValid(BROADCAST_PASSWORD);
assertThat(valid).isTrue();
verify(mPreference).showEditTextFormatAlert(false);
}
}

View File

@@ -71,10 +71,12 @@ public class AudioSharingPasswordPreferenceTest {
var editText = view.findViewById(android.R.id.edit);
var checkBox = view.findViewById(R.id.audio_sharing_stream_password_checkbox);
var dialogMessage = view.findViewById(android.R.id.message);
var editTextAlertMessage = view.findViewById(R.id.edit_alert_message);
assertThat(editText).isNotNull();
assertThat(checkBox).isNotNull();
assertThat(dialogMessage).isNotNull();
assertThat(editTextAlertMessage).isNotNull();
}
@Test
@@ -147,6 +149,34 @@ public class AudioSharingPasswordPreferenceTest {
assertThat(checkBox.isChecked()).isFalse();
}
@Test
public void showEditTextFormatAlert_show() {
View view =
LayoutInflater.from(mContext).inflate(R.layout.audio_sharing_password_dialog, null);
mPreference.onBindDialogView(view);
var editTextAlertMessage = view.findViewById(R.id.edit_alert_message);
mPreference.showEditTextFormatAlert(true);
assertThat(editTextAlertMessage).isNotNull();
assertThat(editTextAlertMessage.getVisibility()).isEqualTo(VISIBLE);
}
@Test
public void showEditTextFormatAlert_hide() {
View view =
LayoutInflater.from(mContext).inflate(R.layout.audio_sharing_password_dialog, null);
mPreference.onBindDialogView(view);
var editTextAlertMessage = view.findViewById(R.id.edit_alert_message);
mPreference.showEditTextFormatAlert(false);
assertThat(editTextAlertMessage).isNotNull();
assertThat(editTextAlertMessage.getVisibility()).isEqualTo(GONE);
}
@Test
public void onDialogEventListener_onClick_positiveButton() {
AudioSharingPasswordPreference.OnDialogEventListener listener =