Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ac14416 authored by Tim Peng's avatar Tim Peng
Browse files

No media status is visible in Output Switcher

-Reflash header when get latest media controller

Bug: 152606491
Test: make -j42 RunSettingsRoboTests
Change-Id: I14542a7f8ba921c9d1dbaacf7e01c3ee673527b2
parent 0747e57f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -220,6 +220,7 @@ public class MediaOutputPanel implements PanelContent, LocalMediaManager.DeviceC
                if (TextUtils.equals(controller.getPackageName(), mPackageName)) {
                    mMediaController = controller;
                    mMediaController.registerCallback(mCb);
                    mCallback.onHeaderChanged();
                    break;
                }
            }
+19 −1
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ 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.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

@@ -58,6 +59,7 @@ import java.util.List;
public class MediaOutputPanelTest {

    private static final String TEST_PACKAGENAME = "com.test.packagename";
    private static final String TEST_PACKAGENAME2 = "com.test.packagename2";
    private static final String TEST_ARTIST = "test_artist";
    private static final String TEST_SONG = "test_song";

@@ -131,6 +133,21 @@ public class MediaOutputPanelTest {
        verify(mLocalMediaManager).startScan();
    }

    @Test
    public void onStart_activeSession_verifyOnHeaderChanged() {
        mPanel.onStart();

        verify(mCallback).onHeaderChanged();
    }

    @Test
    public void onStart_noMatchedActiveSession_verifyNeverOnHeaderChanged() {
        when(mMediaController.getPackageName()).thenReturn(TEST_PACKAGENAME2);
        mPanel.onStart();

        verify(mCallback, never()).onHeaderChanged();
    }

    @Test
    public void onStop_shouldUnregisterCallback() {
        mPanel.onStop();
@@ -255,12 +272,13 @@ public class MediaOutputPanelTest {
    @Test
    public void onMetadataChanged_verifyCallOnHeaderChanged() {
        mPanel.onStart();
        verify(mCallback).onHeaderChanged();
        verify(mMediaController).registerCallback(mControllerCbs.capture());
        final MediaController.Callback controllerCallbacks = mControllerCbs.getValue();

        controllerCallbacks.onMetadataChanged(mMediaMetadata);

        verify(mCallback).onHeaderChanged();
        verify(mCallback, times(2)).onHeaderChanged();
    }

    @Test