Fix the state didn't reset after the size change and rotation.

Action:
Immediately take the effect of updating the progress to avoid waiting for receiving the event to delay update.

Bug: 244979646
Test: make RunSettingsRoboTests ROBOTEST_FILTER=PreviewSizeSeekBarControllerTest
Change-Id: I6b78555c8536b666a3f015e41574c65e15879d1d
This commit is contained in:
Peter Liang
2022-12-11 14:35:34 +08:00
parent 2c2a826c3f
commit 3ef603e622
2 changed files with 31 additions and 9 deletions

View File

@@ -54,6 +54,9 @@ public class PreviewSizeSeekBarControllerTest {
@Mock
private PreferenceScreen mPreferenceScreen;
@Mock
private PreviewSizeSeekBarController.ProgressInteractionListener mInteractionListener;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
@@ -65,6 +68,8 @@ public class PreviewSizeSeekBarControllerTest {
mSeekBarPreference = spy(new LabeledSeekBarPreference(mContext, /* attrs= */ null));
when(mPreferenceScreen.findPreference(anyString())).thenReturn(mSeekBarPreference);
mSeekBarController.setInteractionListener(mInteractionListener);
}
@Test
@@ -98,4 +103,12 @@ public class PreviewSizeSeekBarControllerTest {
assertThat(mSeekBarPreference.getProgress()).isEqualTo(defaultProgress);
}
@Test
public void resetState_verifyOnProgressChanged() {
mSeekBarController.displayPreference(mPreferenceScreen);
mSeekBarController.resetState();
verify(mInteractionListener).onProgressChanged();
}
}