Close panel when media stop
-Add forceClose callback to finish panel -Add test cases Bug: 151396986 Test: make -j50 RunSettingsRoboTests Change-Id: Ic0ac2880a4ff412382816ccb41b4fbb60dbdf519
This commit is contained in:
@@ -22,6 +22,7 @@ import static com.google.common.truth.Truth.assertThat;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
@@ -30,6 +31,7 @@ import android.content.Context;
|
||||
import android.media.MediaMetadata;
|
||||
import android.media.session.MediaController;
|
||||
import android.media.session.MediaSessionManager;
|
||||
import android.media.session.PlaybackState;
|
||||
import android.net.Uri;
|
||||
|
||||
import com.android.settings.R;
|
||||
@@ -67,6 +69,8 @@ public class MediaOutputPanelTest {
|
||||
private LocalMediaManager mLocalMediaManager;
|
||||
@Mock
|
||||
private PanelContentCallback mCallback;
|
||||
@Mock
|
||||
private PlaybackState mPlaybackState;
|
||||
|
||||
private MediaOutputPanel mPanel;
|
||||
private Context mContext;
|
||||
@@ -259,4 +263,19 @@ public class MediaOutputPanelTest {
|
||||
|
||||
verify(mCallback).onHeaderChanged();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onPlaybackStateChanged_stateFromPlayingToStopped_verifyCallForceClose() {
|
||||
mPanel.onStart();
|
||||
verify(mMediaController).registerCallback(mControllerCbs.capture());
|
||||
final MediaController.Callback controllerCallbacks = mControllerCbs.getValue();
|
||||
when(mPlaybackState.getState()).thenReturn(PlaybackState.STATE_PLAYING);
|
||||
controllerCallbacks.onPlaybackStateChanged(mPlaybackState);
|
||||
verify(mCallback, never()).forceClose();
|
||||
|
||||
when(mPlaybackState.getState()).thenReturn(PlaybackState.STATE_STOPPED);
|
||||
controllerCallbacks.onPlaybackStateChanged(mPlaybackState);
|
||||
|
||||
verify(mCallback).forceClose();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user