Merge changes from topic "b234146317_statusbar_network_improved_dumpsys-tm-qpr-dev" into tm-qpr-dev
* changes: Logs aux dump of status bar telephony broadcasts. Adds logging for signal controller set changes Adds active mobile data sub to dumpsys
This commit is contained in:
committed by
Android (Google) Code Review
commit
cb727584bc
@@ -251,4 +251,14 @@ public class LogModule {
|
|||||||
return new LogcatEchoTrackerProd();
|
return new LogcatEchoTrackerProd();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provides a {@link LogBuffer} for use by the status bar network controller.
|
||||||
|
*/
|
||||||
|
@Provides
|
||||||
|
@SysUISingleton
|
||||||
|
@StatusBarNetworkControllerLog
|
||||||
|
public static LogBuffer provideStatusBarNetworkControllerBuffer(LogBufferFactory factory) {
|
||||||
|
return factory.create("StatusBarNetworkControllerLog", 20);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2022 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.android.systemui.log.dagger;
|
||||||
|
|
||||||
|
import static java.lang.annotation.RetentionPolicy.RUNTIME;
|
||||||
|
|
||||||
|
import com.android.systemui.log.LogBuffer;
|
||||||
|
|
||||||
|
import java.lang.annotation.Documented;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
|
||||||
|
import javax.inject.Qualifier;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A {@link LogBuffer} for {@link com.android.systemui.statusbar.connectivity.NetworkController}
|
||||||
|
*/
|
||||||
|
@Qualifier
|
||||||
|
@Documented
|
||||||
|
@Retention(RUNTIME)
|
||||||
|
public @interface StatusBarNetworkControllerLog {
|
||||||
|
}
|
||||||
@@ -73,6 +73,9 @@ import com.android.systemui.demomode.DemoModeController;
|
|||||||
import com.android.systemui.dump.DumpManager;
|
import com.android.systemui.dump.DumpManager;
|
||||||
import com.android.systemui.flags.FeatureFlags;
|
import com.android.systemui.flags.FeatureFlags;
|
||||||
import com.android.systemui.flags.Flags;
|
import com.android.systemui.flags.Flags;
|
||||||
|
import com.android.systemui.log.LogBuffer;
|
||||||
|
import com.android.systemui.log.LogLevel;
|
||||||
|
import com.android.systemui.log.dagger.StatusBarNetworkControllerLog;
|
||||||
import com.android.systemui.qs.tiles.dialog.InternetDialogFactory;
|
import com.android.systemui.qs.tiles.dialog.InternetDialogFactory;
|
||||||
import com.android.systemui.settings.CurrentUserTracker;
|
import com.android.systemui.settings.CurrentUserTracker;
|
||||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
@@ -94,9 +97,12 @@ import java.util.Comparator;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.concurrent.Executor;
|
import java.util.concurrent.Executor;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
|
|
||||||
|
import kotlin.Unit;
|
||||||
|
|
||||||
/** Platform implementation of the network controller. **/
|
/** Platform implementation of the network controller. **/
|
||||||
@SysUISingleton
|
@SysUISingleton
|
||||||
public class NetworkControllerImpl extends BroadcastReceiver
|
public class NetworkControllerImpl extends BroadcastReceiver
|
||||||
@@ -133,6 +139,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
private final CarrierConfigTracker mCarrierConfigTracker;
|
private final CarrierConfigTracker mCarrierConfigTracker;
|
||||||
private final FeatureFlags mFeatureFlags;
|
private final FeatureFlags mFeatureFlags;
|
||||||
private final DumpManager mDumpManager;
|
private final DumpManager mDumpManager;
|
||||||
|
private final LogBuffer mLogBuffer;
|
||||||
|
|
||||||
private TelephonyCallback.ActiveDataSubscriptionIdListener mPhoneStateListener;
|
private TelephonyCallback.ActiveDataSubscriptionIdListener mPhoneStateListener;
|
||||||
private int mActiveMobileDataSubscription = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
private int mActiveMobileDataSubscription = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||||
@@ -231,7 +238,8 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
@Main Handler handler,
|
@Main Handler handler,
|
||||||
InternetDialogFactory internetDialogFactory,
|
InternetDialogFactory internetDialogFactory,
|
||||||
FeatureFlags featureFlags,
|
FeatureFlags featureFlags,
|
||||||
DumpManager dumpManager) {
|
DumpManager dumpManager,
|
||||||
|
@StatusBarNetworkControllerLog LogBuffer logBuffer) {
|
||||||
this(context, connectivityManager,
|
this(context, connectivityManager,
|
||||||
telephonyManager,
|
telephonyManager,
|
||||||
telephonyListenerManager,
|
telephonyListenerManager,
|
||||||
@@ -251,7 +259,8 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
trackerFactory,
|
trackerFactory,
|
||||||
handler,
|
handler,
|
||||||
featureFlags,
|
featureFlags,
|
||||||
dumpManager);
|
dumpManager,
|
||||||
|
logBuffer);
|
||||||
mReceiverHandler.post(mRegisterListeners);
|
mReceiverHandler.post(mRegisterListeners);
|
||||||
mInternetDialogFactory = internetDialogFactory;
|
mInternetDialogFactory = internetDialogFactory;
|
||||||
}
|
}
|
||||||
@@ -276,7 +285,8 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
WifiStatusTrackerFactory trackerFactory,
|
WifiStatusTrackerFactory trackerFactory,
|
||||||
@Main Handler handler,
|
@Main Handler handler,
|
||||||
FeatureFlags featureFlags,
|
FeatureFlags featureFlags,
|
||||||
DumpManager dumpManager
|
DumpManager dumpManager,
|
||||||
|
LogBuffer logBuffer
|
||||||
) {
|
) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mTelephonyListenerManager = telephonyListenerManager;
|
mTelephonyListenerManager = telephonyListenerManager;
|
||||||
@@ -297,6 +307,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
mCarrierConfigTracker = carrierConfigTracker;
|
mCarrierConfigTracker = carrierConfigTracker;
|
||||||
mFeatureFlags = featureFlags;
|
mFeatureFlags = featureFlags;
|
||||||
mDumpManager = dumpManager;
|
mDumpManager = dumpManager;
|
||||||
|
mLogBuffer = logBuffer;
|
||||||
|
|
||||||
// telephony
|
// telephony
|
||||||
mPhone = telephonyManager;
|
mPhone = telephonyManager;
|
||||||
@@ -770,6 +781,17 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
Log.d(TAG, "onReceive: intent=" + intent);
|
Log.d(TAG, "onReceive: intent=" + intent);
|
||||||
}
|
}
|
||||||
final String action = intent.getAction();
|
final String action = intent.getAction();
|
||||||
|
mLogBuffer.log(
|
||||||
|
TAG,
|
||||||
|
LogLevel.INFO,
|
||||||
|
logMessage -> {
|
||||||
|
logMessage.setStr1(action);
|
||||||
|
return Unit.INSTANCE;
|
||||||
|
},
|
||||||
|
logMessage -> String.format(
|
||||||
|
Locale.US,
|
||||||
|
"Received broadcast with action \"%s\"",
|
||||||
|
logMessage.getStr1()));
|
||||||
switch (action) {
|
switch (action) {
|
||||||
case ConnectivityManager.CONNECTIVITY_ACTION:
|
case ConnectivityManager.CONNECTIVITY_ACTION:
|
||||||
updateConnectivity();
|
updateConnectivity();
|
||||||
@@ -937,6 +959,12 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
: lhs.getSimSlotIndex() - rhs.getSimSlotIndex();
|
: lhs.getSimSlotIndex() - rhs.getSimSlotIndex();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Log.i(
|
||||||
|
TAG,
|
||||||
|
String.format(
|
||||||
|
Locale.US,
|
||||||
|
"Subscriptions changed: %s",
|
||||||
|
createSubscriptionChangeStatement(mCurrentSubscriptions, subscriptions)));
|
||||||
mCurrentSubscriptions = subscriptions;
|
mCurrentSubscriptions = subscriptions;
|
||||||
|
|
||||||
SparseArray<MobileSignalController> cachedControllers =
|
SparseArray<MobileSignalController> cachedControllers =
|
||||||
@@ -1154,6 +1182,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
pw.print(" hasVoiceCallingFeature()=");
|
pw.print(" hasVoiceCallingFeature()=");
|
||||||
pw.println(hasVoiceCallingFeature());
|
pw.println(hasVoiceCallingFeature());
|
||||||
pw.println(" mListening=" + mListening);
|
pw.println(" mListening=" + mListening);
|
||||||
|
pw.println(" mActiveMobileDataSubscription=" + mActiveMobileDataSubscription);
|
||||||
|
|
||||||
pw.println(" - connectivity ------");
|
pw.println(" - connectivity ------");
|
||||||
pw.print(" mConnectedTransports=");
|
pw.print(" mConnectedTransports=");
|
||||||
@@ -1473,4 +1502,23 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
* get created will also run on the BG Looper.
|
* get created will also run on the BG Looper.
|
||||||
*/
|
*/
|
||||||
private final Runnable mRegisterListeners = () -> registerListeners();
|
private final Runnable mRegisterListeners = () -> registerListeners();
|
||||||
|
|
||||||
|
/** Returns a logging statement for the given old and new list of {@link SubscriptionInfo} */
|
||||||
|
private static String createSubscriptionChangeStatement(
|
||||||
|
final @Nullable List<SubscriptionInfo> oldSubscriptions,
|
||||||
|
final @Nullable List<SubscriptionInfo> newSubscriptions) {
|
||||||
|
return String.format(
|
||||||
|
Locale.US,
|
||||||
|
"old=%s, new=%s",
|
||||||
|
toSubscriptionIds(oldSubscriptions),
|
||||||
|
toSubscriptionIds(newSubscriptions));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Returns to a list of subscription IDs for the given list of {@link SubscriptionInfo} */
|
||||||
|
@Nullable
|
||||||
|
private static List<Integer> toSubscriptionIds(
|
||||||
|
final @Nullable List<SubscriptionInfo> subscriptions) {
|
||||||
|
return subscriptions != null ? subscriptions.stream().map(
|
||||||
|
SubscriptionInfo::getSubscriptionId).collect(Collectors.toList()) : null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,6 +72,7 @@ import com.android.systemui.demomode.DemoModeController;
|
|||||||
import com.android.systemui.dump.DumpManager;
|
import com.android.systemui.dump.DumpManager;
|
||||||
import com.android.systemui.flags.FeatureFlags;
|
import com.android.systemui.flags.FeatureFlags;
|
||||||
import com.android.systemui.flags.Flags;
|
import com.android.systemui.flags.Flags;
|
||||||
|
import com.android.systemui.log.LogBuffer;
|
||||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController.DeviceProvisionedListener;
|
import com.android.systemui.statusbar.policy.DeviceProvisionedController.DeviceProvisionedListener;
|
||||||
import com.android.systemui.telephony.TelephonyListenerManager;
|
import com.android.systemui.telephony.TelephonyListenerManager;
|
||||||
@@ -244,7 +245,8 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
|
|||||||
mWifiStatusTrackerFactory,
|
mWifiStatusTrackerFactory,
|
||||||
mMainHandler,
|
mMainHandler,
|
||||||
mFeatureFlags,
|
mFeatureFlags,
|
||||||
mock(DumpManager.class)
|
mock(DumpManager.class),
|
||||||
|
mock(LogBuffer.class)
|
||||||
);
|
);
|
||||||
setupNetworkController();
|
setupNetworkController();
|
||||||
|
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ import android.testing.TestableLooper.RunWithLooper;
|
|||||||
import com.android.settingslib.mobile.TelephonyIcons;
|
import com.android.settingslib.mobile.TelephonyIcons;
|
||||||
import com.android.settingslib.net.DataUsageController;
|
import com.android.settingslib.net.DataUsageController;
|
||||||
import com.android.systemui.dump.DumpManager;
|
import com.android.systemui.dump.DumpManager;
|
||||||
|
import com.android.systemui.log.LogBuffer;
|
||||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||||
import com.android.systemui.util.CarrierConfigTracker;
|
import com.android.systemui.util.CarrierConfigTracker;
|
||||||
|
|
||||||
@@ -125,16 +126,29 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest {
|
|||||||
public void test4gDataIcon() {
|
public void test4gDataIcon() {
|
||||||
// Switch to showing 4g icon and re-initialize the NetworkController.
|
// Switch to showing 4g icon and re-initialize the NetworkController.
|
||||||
mConfig.show4gForLte = true;
|
mConfig.show4gForLte = true;
|
||||||
mNetworkController = new NetworkControllerImpl(mContext, mMockCm, mMockTm,
|
mNetworkController = new NetworkControllerImpl(
|
||||||
mTelephonyListenerManager, mMockWm,
|
mContext,
|
||||||
mMockSm, mConfig, Looper.getMainLooper(), mFakeExecutor, mCallbackHandler,
|
mMockCm,
|
||||||
|
mMockTm,
|
||||||
|
mTelephonyListenerManager,
|
||||||
|
mMockWm,
|
||||||
|
mMockSm,
|
||||||
|
mConfig,
|
||||||
|
Looper.getMainLooper(),
|
||||||
|
mFakeExecutor,
|
||||||
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
mock(DataUsageController.class), mMockSubDefaults,
|
mock(DataUsageController.class),
|
||||||
mock(DeviceProvisionedController.class), mMockBd, mDemoModeController,
|
mMockSubDefaults,
|
||||||
|
mock(DeviceProvisionedController.class),
|
||||||
|
mMockBd,
|
||||||
|
mDemoModeController,
|
||||||
mock(CarrierConfigTracker.class),
|
mock(CarrierConfigTracker.class),
|
||||||
mWifiStatusTrackerFactory,
|
mWifiStatusTrackerFactory,
|
||||||
new Handler(TestableLooper.get(this).getLooper()),
|
new Handler(TestableLooper.get(this).getLooper()),
|
||||||
mFeatureFlags, mock(DumpManager.class));
|
mFeatureFlags,
|
||||||
|
mock(DumpManager.class),
|
||||||
|
mock(LogBuffer.class));
|
||||||
setupNetworkController();
|
setupNetworkController();
|
||||||
|
|
||||||
setupDefaultSignal();
|
setupDefaultSignal();
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ import com.android.settingslib.mobile.TelephonyIcons;
|
|||||||
import com.android.settingslib.net.DataUsageController;
|
import com.android.settingslib.net.DataUsageController;
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
import com.android.systemui.dump.DumpManager;
|
import com.android.systemui.dump.DumpManager;
|
||||||
|
import com.android.systemui.log.LogBuffer;
|
||||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||||
import com.android.systemui.util.CarrierConfigTracker;
|
import com.android.systemui.util.CarrierConfigTracker;
|
||||||
|
|
||||||
@@ -86,7 +87,8 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
mWifiStatusTrackerFactory,
|
mWifiStatusTrackerFactory,
|
||||||
mMainHandler,
|
mMainHandler,
|
||||||
mFeatureFlags,
|
mFeatureFlags,
|
||||||
mock(DumpManager.class)
|
mock(DumpManager.class),
|
||||||
|
mock(LogBuffer.class)
|
||||||
);
|
);
|
||||||
TestableLooper.get(this).processAllMessages();
|
TestableLooper.get(this).processAllMessages();
|
||||||
|
|
||||||
@@ -100,7 +102,8 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
when(mMockProvisionController.isCurrentUserSetup()).thenReturn(true);
|
when(mMockProvisionController.isCurrentUserSetup()).thenReturn(true);
|
||||||
|
|
||||||
// WHEN - a NetworkController is created
|
// WHEN - a NetworkController is created
|
||||||
mNetworkController = new NetworkControllerImpl(mContext,
|
mNetworkController = new NetworkControllerImpl(
|
||||||
|
mContext,
|
||||||
mMockCm,
|
mMockCm,
|
||||||
mMockTm,
|
mMockTm,
|
||||||
mTelephonyListenerManager,
|
mTelephonyListenerManager,
|
||||||
@@ -120,8 +123,8 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
mWifiStatusTrackerFactory,
|
mWifiStatusTrackerFactory,
|
||||||
mMainHandler,
|
mMainHandler,
|
||||||
mFeatureFlags,
|
mFeatureFlags,
|
||||||
mock(DumpManager.class)
|
mock(DumpManager.class),
|
||||||
);
|
mock(LogBuffer.class));
|
||||||
TestableLooper.get(this).processAllMessages();
|
TestableLooper.get(this).processAllMessages();
|
||||||
|
|
||||||
// THEN - NetworkController claims the user is not setup
|
// THEN - NetworkController claims the user is not setup
|
||||||
@@ -133,15 +136,29 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
// Turn off mobile network support.
|
// Turn off mobile network support.
|
||||||
when(mMockTm.isDataCapable()).thenReturn(false);
|
when(mMockTm.isDataCapable()).thenReturn(false);
|
||||||
// Create a new NetworkController as this is currently handled in constructor.
|
// Create a new NetworkController as this is currently handled in constructor.
|
||||||
mNetworkController = new NetworkControllerImpl(mContext, mMockCm, mMockTm,
|
mNetworkController = new NetworkControllerImpl(
|
||||||
mTelephonyListenerManager, mMockWm, mMockSm, mConfig,
|
mContext,
|
||||||
Looper.getMainLooper(), mFakeExecutor, mCallbackHandler,
|
mMockCm,
|
||||||
mock(AccessPointControllerImpl.class), mock(DataUsageController.class),
|
mMockTm,
|
||||||
mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd,
|
mTelephonyListenerManager,
|
||||||
mDemoModeController, mock(CarrierConfigTracker.class),
|
mMockWm,
|
||||||
|
mMockSm,
|
||||||
|
mConfig,
|
||||||
|
Looper.getMainLooper(),
|
||||||
|
mFakeExecutor,
|
||||||
|
mCallbackHandler,
|
||||||
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(DataUsageController.class),
|
||||||
|
mMockSubDefaults,
|
||||||
|
mock(DeviceProvisionedController.class),
|
||||||
|
mMockBd,
|
||||||
|
mDemoModeController,
|
||||||
|
mock(CarrierConfigTracker.class),
|
||||||
mWifiStatusTrackerFactory,
|
mWifiStatusTrackerFactory,
|
||||||
mMainHandler, mFeatureFlags,
|
mMainHandler,
|
||||||
mock(DumpManager.class));
|
mFeatureFlags,
|
||||||
|
mock(DumpManager.class),
|
||||||
|
mock(LogBuffer.class));
|
||||||
setupNetworkController();
|
setupNetworkController();
|
||||||
|
|
||||||
verifyLastMobileDataIndicators(false, -1, 0);
|
verifyLastMobileDataIndicators(false, -1, 0);
|
||||||
@@ -156,14 +173,29 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
when(mMockTm.getServiceState()).thenReturn(mServiceState);
|
when(mMockTm.getServiceState()).thenReturn(mServiceState);
|
||||||
when(mMockSm.getCompleteActiveSubscriptionInfoList()).thenReturn(Collections.emptyList());
|
when(mMockSm.getCompleteActiveSubscriptionInfoList()).thenReturn(Collections.emptyList());
|
||||||
|
|
||||||
mNetworkController = new NetworkControllerImpl(mContext, mMockCm, mMockTm,
|
mNetworkController = new NetworkControllerImpl(
|
||||||
mTelephonyListenerManager, mMockWm, mMockSm, mConfig,
|
mContext,
|
||||||
Looper.getMainLooper(), mFakeExecutor, mCallbackHandler,
|
mMockCm,
|
||||||
mock(AccessPointControllerImpl.class), mock(DataUsageController.class),
|
mMockTm,
|
||||||
mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd,
|
mTelephonyListenerManager,
|
||||||
mDemoModeController, mock(CarrierConfigTracker.class),
|
mMockWm,
|
||||||
|
mMockSm,
|
||||||
|
mConfig,
|
||||||
|
Looper.getMainLooper(),
|
||||||
|
mFakeExecutor,
|
||||||
|
mCallbackHandler,
|
||||||
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(DataUsageController.class),
|
||||||
|
mMockSubDefaults,
|
||||||
|
mock(DeviceProvisionedController.class),
|
||||||
|
mMockBd,
|
||||||
|
mDemoModeController,
|
||||||
|
mock(CarrierConfigTracker.class),
|
||||||
mWifiStatusTrackerFactory,
|
mWifiStatusTrackerFactory,
|
||||||
mMainHandler, mFeatureFlags, mock(DumpManager.class));
|
mMainHandler,
|
||||||
|
mFeatureFlags,
|
||||||
|
mock(DumpManager.class),
|
||||||
|
mock(LogBuffer.class));
|
||||||
mNetworkController.registerListeners();
|
mNetworkController.registerListeners();
|
||||||
|
|
||||||
// Wait for the main looper to execute the previous command
|
// Wait for the main looper to execute the previous command
|
||||||
@@ -226,14 +258,29 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
// Turn off mobile network support.
|
// Turn off mobile network support.
|
||||||
when(mMockTm.isDataCapable()).thenReturn(false);
|
when(mMockTm.isDataCapable()).thenReturn(false);
|
||||||
// Create a new NetworkController as this is currently handled in constructor.
|
// Create a new NetworkController as this is currently handled in constructor.
|
||||||
mNetworkController = new NetworkControllerImpl(mContext, mMockCm, mMockTm,
|
mNetworkController = new NetworkControllerImpl(
|
||||||
mTelephonyListenerManager, mMockWm, mMockSm, mConfig,
|
mContext,
|
||||||
Looper.getMainLooper(), mFakeExecutor, mCallbackHandler,
|
mMockCm,
|
||||||
mock(AccessPointControllerImpl.class), mock(DataUsageController.class),
|
mMockTm,
|
||||||
mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd,
|
mTelephonyListenerManager,
|
||||||
mDemoModeController, mock(CarrierConfigTracker.class),
|
mMockWm,
|
||||||
|
mMockSm,
|
||||||
|
mConfig,
|
||||||
|
Looper.getMainLooper(),
|
||||||
|
mFakeExecutor,
|
||||||
|
mCallbackHandler,
|
||||||
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(DataUsageController.class),
|
||||||
|
mMockSubDefaults,
|
||||||
|
mock(DeviceProvisionedController.class),
|
||||||
|
mMockBd,
|
||||||
|
mDemoModeController,
|
||||||
|
mock(CarrierConfigTracker.class),
|
||||||
mWifiStatusTrackerFactory,
|
mWifiStatusTrackerFactory,
|
||||||
mMainHandler, mFeatureFlags, mock(DumpManager.class));
|
mMainHandler,
|
||||||
|
mFeatureFlags,
|
||||||
|
mock(DumpManager.class),
|
||||||
|
mock(LogBuffer.class));
|
||||||
setupNetworkController();
|
setupNetworkController();
|
||||||
|
|
||||||
// No Subscriptions.
|
// No Subscriptions.
|
||||||
|
|||||||
Reference in New Issue
Block a user