Merge "Fix a bug in show surface updates"
This commit is contained in:
committed by
Android (Google) Code Review
commit
65103007c8
@@ -81,8 +81,12 @@ public class ShowSurfaceUpdatesPreferenceController extends DeveloperOptionsPref
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onDeveloperOptionsSwitchDisabled() {
|
protected void onDeveloperOptionsSwitchDisabled() {
|
||||||
writeShowUpdatesSetting(false);
|
if (mPreference.isChecked()) {
|
||||||
mPreference.setChecked(false);
|
// Writing false to the preference when the setting is already off will have a
|
||||||
|
// side effect of turning on the preference that we wish to avoid
|
||||||
|
writeShowUpdatesSetting(false);
|
||||||
|
mPreference.setChecked(false);
|
||||||
|
}
|
||||||
mPreference.setEnabled(false);
|
mPreference.setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -24,6 +24,7 @@ import static org.mockito.ArgumentMatchers.anyBoolean;
|
|||||||
import static org.mockito.ArgumentMatchers.eq;
|
import static org.mockito.ArgumentMatchers.eq;
|
||||||
import static org.mockito.Mockito.doNothing;
|
import static org.mockito.Mockito.doNothing;
|
||||||
import static org.mockito.Mockito.doReturn;
|
import static org.mockito.Mockito.doReturn;
|
||||||
|
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;
|
||||||
@@ -110,7 +111,18 @@ public class ShowSurfaceUpdatesPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void onDeveloperOptionsSwitchDisabled_shouldDisablePreference() {
|
public void onDeveloperOptionsSwitchDisabled_preferenceUnchecked_shouldNotTurnOffPreference() {
|
||||||
|
when(mPreference.isChecked()).thenReturn(false);
|
||||||
|
mController.onDeveloperOptionsSwitchDisabled();
|
||||||
|
|
||||||
|
verify(mController, never()).writeShowUpdatesSetting(anyBoolean());
|
||||||
|
verify(mPreference, never()).setChecked(anyBoolean());
|
||||||
|
verify(mPreference).setEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void onDeveloperOptionsSwitchDisabled_preferenceChecked_shouldTurnOffPreference() {
|
||||||
|
when(mPreference.isChecked()).thenReturn(true);
|
||||||
mController.onDeveloperOptionsSwitchDisabled();
|
mController.onDeveloperOptionsSwitchDisabled();
|
||||||
|
|
||||||
verify(mController).writeShowUpdatesSetting(false);
|
verify(mController).writeShowUpdatesSetting(false);
|
||||||
|
Reference in New Issue
Block a user