Merge "Fix popup dialog show wrong device name"

This commit is contained in:
Raff Tsai
2018-09-17 01:31:21 +00:00
committed by Android (Google) Code Review
5 changed files with 42 additions and 19 deletions

View File

@@ -114,7 +114,7 @@ public class DeviceNamePreferenceControllerTest {
@Test
public void setDeviceName_preferenceUpdatedWhenDeviceNameUpdated() {
forceAcceptDeviceName();
acceptDeviceName(true);
mController.displayPreference(mScreen);
mController.onPreferenceChange(mPreference, TESTING_STRING);
@@ -123,7 +123,7 @@ public class DeviceNamePreferenceControllerTest {
@Test
public void setDeviceName_bluetoothNameUpdatedWhenDeviceNameUpdated() {
forceAcceptDeviceName();
acceptDeviceName(true);
mController.displayPreference(mScreen);
mController.onPreferenceChange(mPreference, TESTING_STRING);
@@ -132,7 +132,7 @@ public class DeviceNamePreferenceControllerTest {
@Test
public void setDeviceName_wifiTetherNameUpdatedWhenDeviceNameUpdated() {
forceAcceptDeviceName();
acceptDeviceName(true);
mController.displayPreference(mScreen);
mController.onPreferenceChange(mPreference, TESTING_STRING);
@@ -150,21 +150,39 @@ public class DeviceNamePreferenceControllerTest {
@Test
public void setDeviceName_ignoresIfCancelPressed() {
forceAcceptDeviceName();
acceptDeviceName(true);
mController.displayPreference(mScreen);
mController.onPreferenceChange(mPreference, TESTING_STRING);
assertThat(mBluetoothAdapter.getName()).isEqualTo(TESTING_STRING);
}
private void forceAcceptDeviceName() {
@Test
public void setDeviceName_okInDeviceNameWarningDialog_shouldChangePreferenceText() {
acceptDeviceName(true);
mController.displayPreference(mScreen);
mController.onPreferenceChange(mPreference, TESTING_STRING);
assertThat(mPreference.getSummary()).isEqualTo(TESTING_STRING);
}
@Test
public void setDeviceName_cancelInDeviceNameWarningDialog_shouldNotChangePreferenceText() {
acceptDeviceName(false);
mController.displayPreference(mScreen);
mController.onPreferenceChange(mPreference, TESTING_STRING);
assertThat(mPreference.getSummary()).isNotEqualTo(TESTING_STRING);
assertThat(mPreference.getText()).isEqualTo(mPreference.getSummary());
}
private void acceptDeviceName(boolean accept) {
mController.setHost(
new DeviceNamePreferenceController.DeviceNamePreferenceHost() {
@Override
public void showDeviceNameWarningDialog(String deviceName) {
mController.confirmDeviceName();
mController.updateDeviceName(accept);
}
});
}
}

View File

@@ -30,7 +30,7 @@ public class DeviceNameWarningDialogTest {
fragmentController.create().start().resume();
fragment.onClick(null, DialogInterface.BUTTON_POSITIVE);
verify(deviceInfoFragment).onSetDeviceNameConfirm();
verify(deviceInfoFragment).onSetDeviceNameConfirm(true);
}
@Test
@@ -43,6 +43,6 @@ public class DeviceNameWarningDialogTest {
fragmentController.create().start().resume();
fragment.onClick(null, DialogInterface.BUTTON_NEGATIVE);
verify(deviceInfoFragment, never()).onSetDeviceNameConfirm();
verify(deviceInfoFragment).onSetDeviceNameConfirm(false);
}
}