Loading packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputController.java +16 −4 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.NotificationEntry; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.statusbar.phone.SystemUIDialog; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import dagger.assisted.Assisted; import dagger.assisted.AssistedFactory; Loading Loading @@ -173,6 +174,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, private float mActiveRadius; private FeatureFlags mFeatureFlags; private UserTracker mUserTracker; private VolumePanelGlobalStateInteractor mVolumePanelGlobalStateInteractor; public enum BroadcastNotifyDialog { ACTION_FIRST_LAUNCH, Loading @@ -195,6 +197,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, PowerExemptionManager powerExemptionManager, KeyguardManager keyGuardManager, FeatureFlags featureFlags, VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor, UserTracker userTracker) { mContext = context; mPackageName = packageName; Loading @@ -209,6 +212,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, mFeatureFlags = featureFlags; mUserTracker = userTracker; mToken = token; mVolumePanelGlobalStateInteractor = volumePanelGlobalStateInteractor; InfoMediaManager imm = InfoMediaManager.createInstance(mContext, packageName, userHandle, lbm, token); mLocalMediaManager = new LocalMediaManager(mContext, lbm, imm, packageName); Loading Loading @@ -436,7 +440,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, launchIntent.putExtra(EXTRA_ROUTE_ID, routeId); launchIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); mCallback.dismissDialog(); mActivityStarter.startActivity(launchIntent, true, controller); startActivity(launchIntent, controller); } } Loading @@ -447,7 +451,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, if (launchIntent != null) { launchIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); mCallback.dismissDialog(); mActivityStarter.startActivity(launchIntent, true, controller); startActivity(launchIntent, controller); } } Loading Loading @@ -951,10 +955,10 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, deepLinkIntent.putExtra( Settings.EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY, PAGE_CONNECTED_DEVICES_KEY); mActivityStarter.startActivity(deepLinkIntent, true, controller); startActivity(deepLinkIntent, controller); return; } mActivityStarter.startActivity(launchIntent, true, controller); startActivity(launchIntent, controller); } void launchLeBroadcastNotifyDialog(View mediaOutputDialog, BroadcastSender broadcastSender, Loading Loading @@ -998,6 +1002,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, mPowerExemptionManager, mKeyGuardManager, mFeatureFlags, mVolumePanelGlobalStateInteractor, mUserTracker); MediaOutputBroadcastDialog dialog = new MediaOutputBroadcastDialog(mContext, true, broadcastSender, controller); Loading Loading @@ -1244,6 +1249,13 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, return !device.isVolumeFixed(); } private void startActivity(Intent intent, ActivityTransitionAnimator.Controller controller) { // Media Output dialog can be shown from the volume panel. This makes sure the panel is // closed when navigating to another activity, so it doesn't stays on top of it mVolumePanelGlobalStateInteractor.setVisible(false); mActivityStarter.startActivity(intent, true, controller); } @Override public void onDevicesUpdated(List<NearbyDevice> nearbyDevices) throws RemoteException { mNearbyDeviceInfoMap.clear(); Loading packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBaseDialogTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -50,14 +50,18 @@ import com.android.settingslib.bluetooth.LocalBluetoothManager; import com.android.settingslib.bluetooth.LocalBluetoothProfileManager; import com.android.settingslib.media.LocalMediaManager; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.broadcast.BroadcastSender; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import org.junit.Before; import org.junit.Test; Loading @@ -73,6 +77,8 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase { private static final String TEST_PACKAGE = "test_package"; private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); // Mock private MediaOutputBaseAdapter mMediaOutputBaseAdapter = mock(MediaOutputBaseAdapter.class); private MediaController mMediaController = mock(MediaController.class); Loading Loading @@ -122,6 +128,9 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase { when(mMediaController.getPackageName()).thenReturn(TEST_PACKAGE); mMediaControllers.add(mMediaController); when(mMediaSessionManager.getActiveSessions(any())).thenReturn(mMediaControllers); VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); mMediaOutputController = new MediaOutputController( Loading @@ -139,6 +148,7 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, volumePanelGlobalStateInteractor, mUserTracker); // Using a fake package will cause routing operations to fail, so we intercept Loading packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -51,14 +51,18 @@ import com.android.settingslib.media.BluetoothMediaDevice; import com.android.settingslib.media.LocalMediaManager; import com.android.settingslib.media.MediaDevice; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.broadcast.BroadcastSender; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import com.google.common.base.Strings; Loading @@ -81,6 +85,8 @@ public class MediaOutputBroadcastDialogTest extends SysuiTestCase { private static final String BROADCAST_CODE_TEST = "112233"; private static final String BROADCAST_CODE_UPDATE_TEST = "11223344"; private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); // Mock private final MediaSessionManager mMediaSessionManager = mock(MediaSessionManager.class); private final LocalBluetoothManager mLocalBluetoothManager = mock(LocalBluetoothManager.class); Loading Loading @@ -123,6 +129,9 @@ public class MediaOutputBroadcastDialogTest extends SysuiTestCase { when(mLocalBluetoothLeBroadcast.getProgramInfo()).thenReturn(BROADCAST_NAME_TEST); when(mLocalBluetoothLeBroadcast.getBroadcastCode()).thenReturn( BROADCAST_CODE_TEST.getBytes(StandardCharsets.UTF_8)); VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); mMediaOutputController = new MediaOutputController( Loading @@ -140,6 +149,7 @@ public class MediaOutputBroadcastDialogTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, volumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.mLocalMediaManager = mLocalMediaManager; mMediaOutputBroadcastDialog = new MediaOutputBroadcastDialog(mContext, false, Loading packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputControllerTest.java +19 −0 Original line number Diff line number Diff line Loading @@ -72,15 +72,19 @@ import com.android.settingslib.bluetooth.LocalBluetoothManager; import com.android.settingslib.media.LocalMediaManager; import com.android.settingslib.media.MediaDevice; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.ActivityTransitionAnimator; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.NotificationEntry; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import com.google.common.collect.ImmutableList; Loading Loading @@ -158,11 +162,16 @@ public class MediaOutputControllerTest extends SysuiTestCase { @Mock private UserTracker mUserTracker; private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); private FeatureFlags mFlags = mock(FeatureFlags.class); private View mDialogLaunchView = mock(View.class); private MediaOutputController.Callback mCallback = mock(MediaOutputController.Callback.class); final Notification mNotification = mock(Notification.class); private final VolumePanelGlobalStateInteractor mVolumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); private Context mSpyContext; private String mPackageName = null; Loading Loading @@ -194,6 +203,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { when(mLocalBluetoothManager.getCachedDeviceManager()).thenReturn( mCachedBluetoothDeviceManager); mMediaOutputController = new MediaOutputController( mSpyContext, Loading @@ -210,6 +220,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); mLocalMediaManager = spy(mMediaOutputController.mLocalMediaManager); when(mLocalMediaManager.isPreferenceRouteListingExist()).thenReturn(false); Loading Loading @@ -304,6 +315,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.start(mCb); Loading Loading @@ -346,6 +358,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.start(mCb); Loading Loading @@ -602,6 +615,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); testMediaOutputController.start(mCb); reset(mCb); Loading Loading @@ -636,6 +650,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); testMediaOutputController.start(mCb); reset(mCb); Loading Loading @@ -683,6 +698,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); LocalMediaManager mockLocalMediaManager = mock(LocalMediaManager.class); Loading Loading @@ -710,6 +726,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); LocalMediaManager mockLocalMediaManager = mock(LocalMediaManager.class); Loading Loading @@ -990,6 +1007,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); assertThat(mMediaOutputController.getNotificationIcon()).isNull(); Loading Loading @@ -1193,6 +1211,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); testMediaOutputController.setTemporaryAllowListExceptionIfNeeded(mMediaDevice2); Loading packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -54,14 +54,18 @@ import com.android.settingslib.flags.Flags; import com.android.settingslib.media.LocalMediaManager; import com.android.settingslib.media.MediaDevice; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.broadcast.BroadcastSender; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import org.junit.After; import org.junit.Before; Loading @@ -84,6 +88,8 @@ public class MediaOutputDialogTest extends SysuiTestCase { @Rule public final CheckFlagsRule mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule(); private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); // Mock private final MediaSessionManager mMediaSessionManager = mock(MediaSessionManager.class); private MediaController mMediaController = mock(MediaController.class); Loading Loading @@ -136,6 +142,9 @@ public class MediaOutputDialogTest extends SysuiTestCase { when(mMediaSessionManager.getActiveSessionsForUser(any(), Mockito.eq(userHandle))).thenReturn( mMediaControllers); VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); mMediaOutputController = new MediaOutputController( Loading @@ -153,6 +162,7 @@ public class MediaOutputDialogTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, volumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.mLocalMediaManager = mLocalMediaManager; mMediaOutputDialog = makeTestDialog(mMediaOutputController); Loading Loading
packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputController.java +16 −4 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.NotificationEntry; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.statusbar.phone.SystemUIDialog; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import dagger.assisted.Assisted; import dagger.assisted.AssistedFactory; Loading Loading @@ -173,6 +174,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, private float mActiveRadius; private FeatureFlags mFeatureFlags; private UserTracker mUserTracker; private VolumePanelGlobalStateInteractor mVolumePanelGlobalStateInteractor; public enum BroadcastNotifyDialog { ACTION_FIRST_LAUNCH, Loading @@ -195,6 +197,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, PowerExemptionManager powerExemptionManager, KeyguardManager keyGuardManager, FeatureFlags featureFlags, VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor, UserTracker userTracker) { mContext = context; mPackageName = packageName; Loading @@ -209,6 +212,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, mFeatureFlags = featureFlags; mUserTracker = userTracker; mToken = token; mVolumePanelGlobalStateInteractor = volumePanelGlobalStateInteractor; InfoMediaManager imm = InfoMediaManager.createInstance(mContext, packageName, userHandle, lbm, token); mLocalMediaManager = new LocalMediaManager(mContext, lbm, imm, packageName); Loading Loading @@ -436,7 +440,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, launchIntent.putExtra(EXTRA_ROUTE_ID, routeId); launchIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); mCallback.dismissDialog(); mActivityStarter.startActivity(launchIntent, true, controller); startActivity(launchIntent, controller); } } Loading @@ -447,7 +451,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, if (launchIntent != null) { launchIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); mCallback.dismissDialog(); mActivityStarter.startActivity(launchIntent, true, controller); startActivity(launchIntent, controller); } } Loading Loading @@ -951,10 +955,10 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, deepLinkIntent.putExtra( Settings.EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY, PAGE_CONNECTED_DEVICES_KEY); mActivityStarter.startActivity(deepLinkIntent, true, controller); startActivity(deepLinkIntent, controller); return; } mActivityStarter.startActivity(launchIntent, true, controller); startActivity(launchIntent, controller); } void launchLeBroadcastNotifyDialog(View mediaOutputDialog, BroadcastSender broadcastSender, Loading Loading @@ -998,6 +1002,7 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, mPowerExemptionManager, mKeyGuardManager, mFeatureFlags, mVolumePanelGlobalStateInteractor, mUserTracker); MediaOutputBroadcastDialog dialog = new MediaOutputBroadcastDialog(mContext, true, broadcastSender, controller); Loading Loading @@ -1244,6 +1249,13 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback, return !device.isVolumeFixed(); } private void startActivity(Intent intent, ActivityTransitionAnimator.Controller controller) { // Media Output dialog can be shown from the volume panel. This makes sure the panel is // closed when navigating to another activity, so it doesn't stays on top of it mVolumePanelGlobalStateInteractor.setVisible(false); mActivityStarter.startActivity(intent, true, controller); } @Override public void onDevicesUpdated(List<NearbyDevice> nearbyDevices) throws RemoteException { mNearbyDeviceInfoMap.clear(); Loading
packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBaseDialogTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -50,14 +50,18 @@ import com.android.settingslib.bluetooth.LocalBluetoothManager; import com.android.settingslib.bluetooth.LocalBluetoothProfileManager; import com.android.settingslib.media.LocalMediaManager; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.broadcast.BroadcastSender; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import org.junit.Before; import org.junit.Test; Loading @@ -73,6 +77,8 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase { private static final String TEST_PACKAGE = "test_package"; private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); // Mock private MediaOutputBaseAdapter mMediaOutputBaseAdapter = mock(MediaOutputBaseAdapter.class); private MediaController mMediaController = mock(MediaController.class); Loading Loading @@ -122,6 +128,9 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase { when(mMediaController.getPackageName()).thenReturn(TEST_PACKAGE); mMediaControllers.add(mMediaController); when(mMediaSessionManager.getActiveSessions(any())).thenReturn(mMediaControllers); VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); mMediaOutputController = new MediaOutputController( Loading @@ -139,6 +148,7 @@ public class MediaOutputBaseDialogTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, volumePanelGlobalStateInteractor, mUserTracker); // Using a fake package will cause routing operations to fail, so we intercept Loading
packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputBroadcastDialogTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -51,14 +51,18 @@ import com.android.settingslib.media.BluetoothMediaDevice; import com.android.settingslib.media.LocalMediaManager; import com.android.settingslib.media.MediaDevice; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.broadcast.BroadcastSender; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import com.google.common.base.Strings; Loading @@ -81,6 +85,8 @@ public class MediaOutputBroadcastDialogTest extends SysuiTestCase { private static final String BROADCAST_CODE_TEST = "112233"; private static final String BROADCAST_CODE_UPDATE_TEST = "11223344"; private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); // Mock private final MediaSessionManager mMediaSessionManager = mock(MediaSessionManager.class); private final LocalBluetoothManager mLocalBluetoothManager = mock(LocalBluetoothManager.class); Loading Loading @@ -123,6 +129,9 @@ public class MediaOutputBroadcastDialogTest extends SysuiTestCase { when(mLocalBluetoothLeBroadcast.getProgramInfo()).thenReturn(BROADCAST_NAME_TEST); when(mLocalBluetoothLeBroadcast.getBroadcastCode()).thenReturn( BROADCAST_CODE_TEST.getBytes(StandardCharsets.UTF_8)); VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); mMediaOutputController = new MediaOutputController( Loading @@ -140,6 +149,7 @@ public class MediaOutputBroadcastDialogTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, volumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.mLocalMediaManager = mLocalMediaManager; mMediaOutputBroadcastDialog = new MediaOutputBroadcastDialog(mContext, false, Loading
packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputControllerTest.java +19 −0 Original line number Diff line number Diff line Loading @@ -72,15 +72,19 @@ import com.android.settingslib.bluetooth.LocalBluetoothManager; import com.android.settingslib.media.LocalMediaManager; import com.android.settingslib.media.MediaDevice; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.ActivityTransitionAnimator; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.NotificationEntry; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import com.google.common.collect.ImmutableList; Loading Loading @@ -158,11 +162,16 @@ public class MediaOutputControllerTest extends SysuiTestCase { @Mock private UserTracker mUserTracker; private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); private FeatureFlags mFlags = mock(FeatureFlags.class); private View mDialogLaunchView = mock(View.class); private MediaOutputController.Callback mCallback = mock(MediaOutputController.Callback.class); final Notification mNotification = mock(Notification.class); private final VolumePanelGlobalStateInteractor mVolumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); private Context mSpyContext; private String mPackageName = null; Loading Loading @@ -194,6 +203,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { when(mLocalBluetoothManager.getCachedDeviceManager()).thenReturn( mCachedBluetoothDeviceManager); mMediaOutputController = new MediaOutputController( mSpyContext, Loading @@ -210,6 +220,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); mLocalMediaManager = spy(mMediaOutputController.mLocalMediaManager); when(mLocalMediaManager.isPreferenceRouteListingExist()).thenReturn(false); Loading Loading @@ -304,6 +315,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.start(mCb); Loading Loading @@ -346,6 +358,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.start(mCb); Loading Loading @@ -602,6 +615,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); testMediaOutputController.start(mCb); reset(mCb); Loading Loading @@ -636,6 +650,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); testMediaOutputController.start(mCb); reset(mCb); Loading Loading @@ -683,6 +698,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); LocalMediaManager mockLocalMediaManager = mock(LocalMediaManager.class); Loading Loading @@ -710,6 +726,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); LocalMediaManager mockLocalMediaManager = mock(LocalMediaManager.class); Loading Loading @@ -990,6 +1007,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); assertThat(mMediaOutputController.getNotificationIcon()).isNull(); Loading Loading @@ -1193,6 +1211,7 @@ public class MediaOutputControllerTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, mVolumePanelGlobalStateInteractor, mUserTracker); testMediaOutputController.setTemporaryAllowListExceptionIfNeeded(mMediaDevice2); Loading
packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -54,14 +54,18 @@ import com.android.settingslib.flags.Flags; import com.android.settingslib.media.LocalMediaManager; import com.android.settingslib.media.MediaDevice; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestCaseExtKt; import com.android.systemui.animation.DialogTransitionAnimator; import com.android.systemui.broadcast.BroadcastSender; import com.android.systemui.flags.FeatureFlags; import com.android.systemui.kosmos.Kosmos; import com.android.systemui.media.nearby.NearbyMediaDevicesManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.res.R; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.notification.collection.notifcollection.CommonNotifCollection; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractor; import com.android.systemui.volume.panel.domain.interactor.VolumePanelGlobalStateInteractorKosmosKt; import org.junit.After; import org.junit.Before; Loading @@ -84,6 +88,8 @@ public class MediaOutputDialogTest extends SysuiTestCase { @Rule public final CheckFlagsRule mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule(); private final Kosmos mKosmos = SysuiTestCaseExtKt.testKosmos(this); // Mock private final MediaSessionManager mMediaSessionManager = mock(MediaSessionManager.class); private MediaController mMediaController = mock(MediaController.class); Loading Loading @@ -136,6 +142,9 @@ public class MediaOutputDialogTest extends SysuiTestCase { when(mMediaSessionManager.getActiveSessionsForUser(any(), Mockito.eq(userHandle))).thenReturn( mMediaControllers); VolumePanelGlobalStateInteractor volumePanelGlobalStateInteractor = VolumePanelGlobalStateInteractorKosmosKt.getVolumePanelGlobalStateInteractor( mKosmos); mMediaOutputController = new MediaOutputController( Loading @@ -153,6 +162,7 @@ public class MediaOutputDialogTest extends SysuiTestCase { mPowerExemptionManager, mKeyguardManager, mFlags, volumePanelGlobalStateInteractor, mUserTracker); mMediaOutputController.mLocalMediaManager = mLocalMediaManager; mMediaOutputDialog = makeTestDialog(mMediaOutputController); Loading