Merge "Inject mocks in RemoteVolumeControllerTest via constructor" into main

This commit is contained in:
Treehugger Robot
2024-01-02 14:03:43 +00:00
committed by Android (Google) Code Review
2 changed files with 20 additions and 3 deletions

View File

@@ -16,6 +16,8 @@
package com.android.settings.notification;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.content.Context;
import android.content.Intent;
import android.media.MediaRouter2Manager;
@@ -53,6 +55,7 @@ public class RemoteVolumeGroupController extends BasePreferenceController implem
@VisibleForTesting
static final String SWITCHER_PREFIX = "OUTPUT_SWITCHER";
@Nullable
private PreferenceCategory mPreferenceCategory;
private final List<RoutingSessionInfo> mRoutingSessionInfos = new ArrayList<>();
@@ -61,6 +64,7 @@ public class RemoteVolumeGroupController extends BasePreferenceController implem
@VisibleForTesting
MediaRouter2Manager mRouterManager;
// Called via reflection from BasePreferenceController#createInstance().
public RemoteVolumeGroupController(Context context, String preferenceKey) {
super(context, preferenceKey);
if (mLocalMediaManager == null) {
@@ -71,6 +75,19 @@ public class RemoteVolumeGroupController extends BasePreferenceController implem
mRouterManager = MediaRouter2Manager.getInstance(context);
}
@VisibleForTesting
/* package */ RemoteVolumeGroupController(
@NonNull Context context,
@NonNull String preferenceKey,
@NonNull LocalMediaManager localMediaManager,
@NonNull MediaRouter2Manager mediaRouter2Manager) {
super(context, preferenceKey);
mLocalMediaManager = localMediaManager;
mRouterManager = mediaRouter2Manager;
mLocalMediaManager.registerCallback(this);
mLocalMediaManager.startScan();
}
@Override
public int getAvailabilityStatus() {
if (mRoutingSessionInfos.isEmpty()) {