Automatically play the gesture video when the setting is launched.
- and save the video pause state on config change so that the paused video will not auto start again on screen rotation. Change-Id: I3f41849ee3063942fb4141e4556e494bc8439226 Fix: 63145847 Test: make RunSettingsRoboTests
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
package com.android.settings.gestures;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.preference.Preference;
|
||||
import android.support.v7.preference.PreferenceScreen;
|
||||
import android.support.v7.preference.TwoStatePreference;
|
||||
@@ -38,6 +39,7 @@ import static org.mockito.Matchers.any;
|
||||
import static org.mockito.Matchers.anyString;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.reset;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
@@ -84,15 +86,29 @@ public class GesturePreferenceControllerTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onStart_shouldStartVideoPreference() {
|
||||
public void onStart_shouldStartVideoPreferenceWithVideoPauseState() {
|
||||
final VideoPreference videoPreference = mock(VideoPreference.class);
|
||||
when(mScreen.findPreference(mController.getVideoPrefKey())).thenReturn(videoPreference);
|
||||
mController.mIsPrefAvailable = true;
|
||||
|
||||
mController.displayPreference(mScreen);
|
||||
mController.onStart();
|
||||
final Bundle savedState = new Bundle();
|
||||
|
||||
verify(videoPreference).onViewVisible();
|
||||
mController.onCreate(null);
|
||||
mController.onStart();
|
||||
verify(videoPreference).onViewVisible(false);
|
||||
|
||||
reset(videoPreference);
|
||||
savedState.putBoolean(mController.KEY_VIDEO_PAUSED, true);
|
||||
mController.onCreate(savedState);
|
||||
mController.onStart();
|
||||
verify(videoPreference).onViewVisible(true);
|
||||
|
||||
reset(videoPreference);
|
||||
savedState.putBoolean(mController.KEY_VIDEO_PAUSED, false);
|
||||
mController.onCreate(savedState);
|
||||
mController.onStart();
|
||||
verify(videoPreference).onViewVisible(false);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -107,6 +123,24 @@ public class GesturePreferenceControllerTest {
|
||||
verify(videoPreference).onViewInvisible();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onSaveInstanceState_shouldSaveVideoPauseState() {
|
||||
final VideoPreference videoPreference = mock(VideoPreference.class);
|
||||
when(mScreen.findPreference(mController.getVideoPrefKey())).thenReturn(videoPreference);
|
||||
mController.mIsPrefAvailable = true;
|
||||
mController.displayPreference(mScreen);
|
||||
final Bundle outState = mock(Bundle.class);
|
||||
|
||||
when(videoPreference.isVideoPaused()).thenReturn(true);
|
||||
mController.onSaveInstanceState(outState);
|
||||
verify(outState).putBoolean(mController.KEY_VIDEO_PAUSED, true);
|
||||
|
||||
reset(outState);
|
||||
when(videoPreference.isVideoPaused()).thenReturn(false);
|
||||
mController.onSaveInstanceState(outState);
|
||||
verify(outState).putBoolean(mController.KEY_VIDEO_PAUSED, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateState_preferenceSetCheckedWhenSettingIsOn() {
|
||||
// Mock a TwoStatePreference
|
||||
|
Reference in New Issue
Block a user