Merge changes I0fdcc086,I6beaccc5,Ice240ec2 into tm-qpr-dev am: 05b4c5da28
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20612833 Change-Id: I78e476183620ff23566c89e378d65405d991f01c Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -78,6 +78,7 @@ import com.android.systemui.plugins.log.LogBuffer;
|
|||||||
import com.android.systemui.plugins.log.LogLevel;
|
import com.android.systemui.plugins.log.LogLevel;
|
||||||
import com.android.systemui.qs.tiles.dialog.InternetDialogFactory;
|
import com.android.systemui.qs.tiles.dialog.InternetDialogFactory;
|
||||||
import com.android.systemui.settings.UserTracker;
|
import com.android.systemui.settings.UserTracker;
|
||||||
|
import com.android.systemui.statusbar.pipeline.StatusBarPipelineFlags;
|
||||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
import com.android.systemui.statusbar.policy.DataSaverController;
|
import com.android.systemui.statusbar.policy.DataSaverController;
|
||||||
import com.android.systemui.statusbar.policy.DataSaverControllerImpl;
|
import com.android.systemui.statusbar.policy.DataSaverControllerImpl;
|
||||||
@@ -193,6 +194,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
private final Executor mBgExecutor;
|
private final Executor mBgExecutor;
|
||||||
// Handler that all callbacks are made on.
|
// Handler that all callbacks are made on.
|
||||||
private final CallbackHandler mCallbackHandler;
|
private final CallbackHandler mCallbackHandler;
|
||||||
|
private final StatusBarPipelineFlags mStatusBarPipelineFlags;
|
||||||
|
|
||||||
private int mEmergencySource;
|
private int mEmergencySource;
|
||||||
private boolean mIsEmergency;
|
private boolean mIsEmergency;
|
||||||
@@ -243,6 +245,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
TelephonyListenerManager telephonyListenerManager,
|
TelephonyListenerManager telephonyListenerManager,
|
||||||
@Nullable WifiManager wifiManager,
|
@Nullable WifiManager wifiManager,
|
||||||
AccessPointControllerImpl accessPointController,
|
AccessPointControllerImpl accessPointController,
|
||||||
|
StatusBarPipelineFlags statusBarPipelineFlags,
|
||||||
DemoModeController demoModeController,
|
DemoModeController demoModeController,
|
||||||
CarrierConfigTracker carrierConfigTracker,
|
CarrierConfigTracker carrierConfigTracker,
|
||||||
WifiStatusTrackerFactory trackerFactory,
|
WifiStatusTrackerFactory trackerFactory,
|
||||||
@@ -261,6 +264,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
bgExecutor,
|
bgExecutor,
|
||||||
callbackHandler,
|
callbackHandler,
|
||||||
accessPointController,
|
accessPointController,
|
||||||
|
statusBarPipelineFlags,
|
||||||
new DataUsageController(context),
|
new DataUsageController(context),
|
||||||
new SubscriptionDefaults(),
|
new SubscriptionDefaults(),
|
||||||
deviceProvisionedController,
|
deviceProvisionedController,
|
||||||
@@ -288,6 +292,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
Executor bgExecutor,
|
Executor bgExecutor,
|
||||||
CallbackHandler callbackHandler,
|
CallbackHandler callbackHandler,
|
||||||
AccessPointControllerImpl accessPointController,
|
AccessPointControllerImpl accessPointController,
|
||||||
|
StatusBarPipelineFlags statusBarPipelineFlags,
|
||||||
DataUsageController dataUsageController,
|
DataUsageController dataUsageController,
|
||||||
SubscriptionDefaults defaultsHandler,
|
SubscriptionDefaults defaultsHandler,
|
||||||
DeviceProvisionedController deviceProvisionedController,
|
DeviceProvisionedController deviceProvisionedController,
|
||||||
@@ -309,6 +314,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
mBgLooper = bgLooper;
|
mBgLooper = bgLooper;
|
||||||
mBgExecutor = bgExecutor;
|
mBgExecutor = bgExecutor;
|
||||||
mCallbackHandler = callbackHandler;
|
mCallbackHandler = callbackHandler;
|
||||||
|
mStatusBarPipelineFlags = statusBarPipelineFlags;
|
||||||
mDataSaverController = new DataSaverControllerImpl(context);
|
mDataSaverController = new DataSaverControllerImpl(context);
|
||||||
mBroadcastDispatcher = broadcastDispatcher;
|
mBroadcastDispatcher = broadcastDispatcher;
|
||||||
mMobileFactory = mobileFactory;
|
mMobileFactory = mobileFactory;
|
||||||
@@ -1334,7 +1340,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
mWifiSignalController.notifyListeners();
|
mWifiSignalController.notifyListeners();
|
||||||
}
|
}
|
||||||
String sims = args.getString("sims");
|
String sims = args.getString("sims");
|
||||||
if (sims != null) {
|
if (sims != null && !mStatusBarPipelineFlags.useNewMobileIcons()) {
|
||||||
int num = MathUtils.constrain(Integer.parseInt(sims), 1, 8);
|
int num = MathUtils.constrain(Integer.parseInt(sims), 1, 8);
|
||||||
List<SubscriptionInfo> subs = new ArrayList<>();
|
List<SubscriptionInfo> subs = new ArrayList<>();
|
||||||
if (num != mMobileSignalControllers.size()) {
|
if (num != mMobileSignalControllers.size()) {
|
||||||
@@ -1357,7 +1363,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
mCallbackHandler.setNoSims(mHasNoSubs, mSimDetected);
|
mCallbackHandler.setNoSims(mHasNoSubs, mSimDetected);
|
||||||
}
|
}
|
||||||
String mobile = args.getString("mobile");
|
String mobile = args.getString("mobile");
|
||||||
if (mobile != null) {
|
if (mobile != null && !mStatusBarPipelineFlags.useNewMobileIcons()) {
|
||||||
boolean show = mobile.equals("show");
|
boolean show = mobile.equals("show");
|
||||||
String datatype = args.getString("datatype");
|
String datatype = args.getString("datatype");
|
||||||
String slotString = args.getString("slot");
|
String slotString = args.getString("slot");
|
||||||
@@ -1442,7 +1448,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
controller.notifyListeners();
|
controller.notifyListeners();
|
||||||
}
|
}
|
||||||
String carrierNetworkChange = args.getString("carriernetworkchange");
|
String carrierNetworkChange = args.getString("carriernetworkchange");
|
||||||
if (carrierNetworkChange != null) {
|
if (carrierNetworkChange != null && !mStatusBarPipelineFlags.useNewMobileIcons()) {
|
||||||
boolean show = carrierNetworkChange.equals("show");
|
boolean show = carrierNetworkChange.equals("show");
|
||||||
for (int i = 0; i < mMobileSignalControllers.size(); i++) {
|
for (int i = 0; i < mMobileSignalControllers.size(); i++) {
|
||||||
MobileSignalController controller = mMobileSignalControllers.valueAt(i);
|
MobileSignalController controller = mMobileSignalControllers.valueAt(i);
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.android.systemui.statusbar.pipeline.dagger
|
package com.android.systemui.statusbar.pipeline.dagger
|
||||||
|
|
||||||
|
import com.android.systemui.CoreStartable
|
||||||
import com.android.systemui.dagger.SysUISingleton
|
import com.android.systemui.dagger.SysUISingleton
|
||||||
import com.android.systemui.log.table.TableLogBuffer
|
import com.android.systemui.log.table.TableLogBuffer
|
||||||
import com.android.systemui.log.table.TableLogBufferFactory
|
import com.android.systemui.log.table.TableLogBufferFactory
|
||||||
@@ -29,6 +30,7 @@ import com.android.systemui.statusbar.pipeline.mobile.data.repository.UserSetupR
|
|||||||
import com.android.systemui.statusbar.pipeline.mobile.data.repository.UserSetupRepositoryImpl
|
import com.android.systemui.statusbar.pipeline.mobile.data.repository.UserSetupRepositoryImpl
|
||||||
import com.android.systemui.statusbar.pipeline.mobile.domain.interactor.MobileIconsInteractor
|
import com.android.systemui.statusbar.pipeline.mobile.domain.interactor.MobileIconsInteractor
|
||||||
import com.android.systemui.statusbar.pipeline.mobile.domain.interactor.MobileIconsInteractorImpl
|
import com.android.systemui.statusbar.pipeline.mobile.domain.interactor.MobileIconsInteractorImpl
|
||||||
|
import com.android.systemui.statusbar.pipeline.mobile.ui.MobileUiAdapter
|
||||||
import com.android.systemui.statusbar.pipeline.mobile.util.MobileMappingsProxy
|
import com.android.systemui.statusbar.pipeline.mobile.util.MobileMappingsProxy
|
||||||
import com.android.systemui.statusbar.pipeline.mobile.util.MobileMappingsProxyImpl
|
import com.android.systemui.statusbar.pipeline.mobile.util.MobileMappingsProxyImpl
|
||||||
import com.android.systemui.statusbar.pipeline.shared.data.repository.ConnectivityRepository
|
import com.android.systemui.statusbar.pipeline.shared.data.repository.ConnectivityRepository
|
||||||
@@ -40,6 +42,8 @@ import com.android.systemui.statusbar.pipeline.wifi.domain.interactor.WifiIntera
|
|||||||
import dagger.Binds
|
import dagger.Binds
|
||||||
import dagger.Module
|
import dagger.Module
|
||||||
import dagger.Provides
|
import dagger.Provides
|
||||||
|
import dagger.multibindings.ClassKey
|
||||||
|
import dagger.multibindings.IntoMap
|
||||||
|
|
||||||
@Module
|
@Module
|
||||||
abstract class StatusBarPipelineModule {
|
abstract class StatusBarPipelineModule {
|
||||||
@@ -52,8 +56,7 @@ abstract class StatusBarPipelineModule {
|
|||||||
@Binds
|
@Binds
|
||||||
abstract fun connectivityRepository(impl: ConnectivityRepositoryImpl): ConnectivityRepository
|
abstract fun connectivityRepository(impl: ConnectivityRepositoryImpl): ConnectivityRepository
|
||||||
|
|
||||||
@Binds
|
@Binds abstract fun wifiRepository(impl: WifiRepositoryImpl): WifiRepository
|
||||||
abstract fun wifiRepository(impl: WifiRepositoryImpl): WifiRepository
|
|
||||||
|
|
||||||
@Binds
|
@Binds
|
||||||
abstract fun wifiInteractor(impl: WifiInteractorImpl): WifiInteractor
|
abstract fun wifiInteractor(impl: WifiInteractorImpl): WifiInteractor
|
||||||
@@ -63,15 +66,18 @@ abstract class StatusBarPipelineModule {
|
|||||||
impl: MobileConnectionsRepositoryImpl
|
impl: MobileConnectionsRepositoryImpl
|
||||||
): MobileConnectionsRepository
|
): MobileConnectionsRepository
|
||||||
|
|
||||||
@Binds
|
@Binds abstract fun userSetupRepository(impl: UserSetupRepositoryImpl): UserSetupRepository
|
||||||
abstract fun userSetupRepository(impl: UserSetupRepositoryImpl): UserSetupRepository
|
|
||||||
|
|
||||||
@Binds
|
@Binds abstract fun mobileMappingsProxy(impl: MobileMappingsProxyImpl): MobileMappingsProxy
|
||||||
abstract fun mobileMappingsProxy(impl: MobileMappingsProxyImpl): MobileMappingsProxy
|
|
||||||
|
|
||||||
@Binds
|
@Binds
|
||||||
abstract fun mobileIconsInteractor(impl: MobileIconsInteractorImpl): MobileIconsInteractor
|
abstract fun mobileIconsInteractor(impl: MobileIconsInteractorImpl): MobileIconsInteractor
|
||||||
|
|
||||||
|
@Binds
|
||||||
|
@IntoMap
|
||||||
|
@ClassKey(MobileUiAdapter::class)
|
||||||
|
abstract fun bindFeature(impl: MobileUiAdapter): CoreStartable
|
||||||
|
|
||||||
@Module
|
@Module
|
||||||
companion object {
|
companion object {
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import android.telephony.TelephonyManager.DATA_CONNECTED
|
|||||||
import android.telephony.TelephonyManager.DATA_CONNECTING
|
import android.telephony.TelephonyManager.DATA_CONNECTING
|
||||||
import android.telephony.TelephonyManager.DATA_DISCONNECTED
|
import android.telephony.TelephonyManager.DATA_DISCONNECTED
|
||||||
import android.telephony.TelephonyManager.DATA_DISCONNECTING
|
import android.telephony.TelephonyManager.DATA_DISCONNECTING
|
||||||
|
import android.telephony.TelephonyManager.DATA_UNKNOWN
|
||||||
import android.telephony.TelephonyManager.DataState
|
import android.telephony.TelephonyManager.DataState
|
||||||
|
|
||||||
/** Internal enum representation of the telephony data connection states */
|
/** Internal enum representation of the telephony data connection states */
|
||||||
@@ -28,6 +29,7 @@ enum class DataConnectionState(@DataState val dataState: Int) {
|
|||||||
Connecting(DATA_CONNECTING),
|
Connecting(DATA_CONNECTING),
|
||||||
Disconnected(DATA_DISCONNECTED),
|
Disconnected(DATA_DISCONNECTED),
|
||||||
Disconnecting(DATA_DISCONNECTING),
|
Disconnecting(DATA_DISCONNECTING),
|
||||||
|
Unknown(DATA_UNKNOWN),
|
||||||
}
|
}
|
||||||
|
|
||||||
fun @receiver:DataState Int.toDataConnectionType(): DataConnectionState =
|
fun @receiver:DataState Int.toDataConnectionType(): DataConnectionState =
|
||||||
@@ -36,5 +38,6 @@ fun @receiver:DataState Int.toDataConnectionType(): DataConnectionState =
|
|||||||
DATA_CONNECTING -> DataConnectionState.Connecting
|
DATA_CONNECTING -> DataConnectionState.Connecting
|
||||||
DATA_DISCONNECTED -> DataConnectionState.Disconnected
|
DATA_DISCONNECTED -> DataConnectionState.Disconnected
|
||||||
DATA_DISCONNECTING -> DataConnectionState.Disconnecting
|
DATA_DISCONNECTING -> DataConnectionState.Disconnecting
|
||||||
else -> throw IllegalArgumentException("unknown data state received")
|
DATA_UNKNOWN -> DataConnectionState.Unknown
|
||||||
|
else -> throw IllegalArgumentException("unknown data state received $this")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.android.systemui.statusbar.pipeline.mobile.ui
|
package com.android.systemui.statusbar.pipeline.mobile.ui
|
||||||
|
|
||||||
|
import com.android.systemui.CoreStartable
|
||||||
import com.android.systemui.dagger.SysUISingleton
|
import com.android.systemui.dagger.SysUISingleton
|
||||||
import com.android.systemui.dagger.qualifiers.Application
|
import com.android.systemui.dagger.qualifiers.Application
|
||||||
import com.android.systemui.statusbar.phone.StatusBarIconController
|
import com.android.systemui.statusbar.phone.StatusBarIconController
|
||||||
@@ -29,9 +30,10 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
import kotlinx.coroutines.flow.SharingStarted
|
import kotlinx.coroutines.flow.SharingStarted
|
||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
import kotlinx.coroutines.flow.collectLatest
|
||||||
import kotlinx.coroutines.flow.mapLatest
|
import kotlinx.coroutines.flow.mapLatest
|
||||||
import kotlinx.coroutines.flow.onEach
|
|
||||||
import kotlinx.coroutines.flow.stateIn
|
import kotlinx.coroutines.flow.stateIn
|
||||||
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This class is intended to provide a context to collect on the
|
* This class is intended to provide a context to collect on the
|
||||||
@@ -50,9 +52,9 @@ constructor(
|
|||||||
interactor: MobileIconsInteractor,
|
interactor: MobileIconsInteractor,
|
||||||
private val iconController: StatusBarIconController,
|
private val iconController: StatusBarIconController,
|
||||||
private val iconsViewModelFactory: MobileIconsViewModel.Factory,
|
private val iconsViewModelFactory: MobileIconsViewModel.Factory,
|
||||||
@Application scope: CoroutineScope,
|
@Application private val scope: CoroutineScope,
|
||||||
private val statusBarPipelineFlags: StatusBarPipelineFlags,
|
private val statusBarPipelineFlags: StatusBarPipelineFlags,
|
||||||
) {
|
) : CoreStartable {
|
||||||
private val mobileSubIds: Flow<List<Int>> =
|
private val mobileSubIds: Flow<List<Int>> =
|
||||||
interactor.filteredSubscriptions.mapLatest { infos ->
|
interactor.filteredSubscriptions.mapLatest { infos ->
|
||||||
infos.map { subscriptionInfo -> subscriptionInfo.subscriptionId }
|
infos.map { subscriptionInfo -> subscriptionInfo.subscriptionId }
|
||||||
@@ -66,18 +68,19 @@ constructor(
|
|||||||
* NOTE: this should go away as the view presenter learns more about this data pipeline
|
* NOTE: this should go away as the view presenter learns more about this data pipeline
|
||||||
*/
|
*/
|
||||||
private val mobileSubIdsState: StateFlow<List<Int>> =
|
private val mobileSubIdsState: StateFlow<List<Int>> =
|
||||||
mobileSubIds
|
mobileSubIds.stateIn(scope, SharingStarted.WhileSubscribed(), listOf())
|
||||||
.onEach {
|
|
||||||
// Only notify the icon controller if we want to *render* the new icons.
|
override fun start() {
|
||||||
// Note that this flow may still run if
|
// Only notify the icon controller if we want to *render* the new icons.
|
||||||
// [statusBarPipelineFlags.runNewMobileIconsBackend] is true because we may want to
|
// Note that this flow may still run if
|
||||||
// get the logging data without rendering.
|
// [statusBarPipelineFlags.runNewMobileIconsBackend] is true because we may want to
|
||||||
if (statusBarPipelineFlags.useNewMobileIcons()) {
|
// get the logging data without rendering.
|
||||||
// Notify the icon controller here so that it knows to add icons
|
if (statusBarPipelineFlags.useNewMobileIcons()) {
|
||||||
iconController.setNewMobileIconSubIds(it)
|
scope.launch {
|
||||||
}
|
mobileSubIds.collectLatest { iconController.setNewMobileIconSubIds(it) }
|
||||||
}
|
}
|
||||||
.stateIn(scope, SharingStarted.WhileSubscribed(), listOf())
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a MobileIconsViewModel for a given [IconManager], and bind it to to the manager's
|
* Create a MobileIconsViewModel for a given [IconManager], and bind it to to the manager's
|
||||||
|
|||||||
@@ -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.plugins.log.LogBuffer;
|
import com.android.systemui.plugins.log.LogBuffer;
|
||||||
import com.android.systemui.settings.UserTracker;
|
import com.android.systemui.settings.UserTracker;
|
||||||
|
import com.android.systemui.statusbar.pipeline.StatusBarPipelineFlags;
|
||||||
import com.android.systemui.statusbar.pipeline.mobile.util.FakeMobileMappingsProxy;
|
import com.android.systemui.statusbar.pipeline.mobile.util.FakeMobileMappingsProxy;
|
||||||
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;
|
||||||
@@ -245,6 +246,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase {
|
|||||||
mFakeExecutor,
|
mFakeExecutor,
|
||||||
mCallbackHandler,
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(StatusBarPipelineFlags.class),
|
||||||
mock(DataUsageController.class),
|
mock(DataUsageController.class),
|
||||||
mMockSubDefaults,
|
mMockSubDefaults,
|
||||||
mMockProvisionController,
|
mMockProvisionController,
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ 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.plugins.log.LogBuffer;
|
import com.android.systemui.plugins.log.LogBuffer;
|
||||||
|
import com.android.systemui.statusbar.pipeline.StatusBarPipelineFlags;
|
||||||
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;
|
||||||
|
|
||||||
@@ -150,6 +151,7 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest {
|
|||||||
mFakeExecutor,
|
mFakeExecutor,
|
||||||
mCallbackHandler,
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(StatusBarPipelineFlags.class),
|
||||||
mock(DataUsageController.class),
|
mock(DataUsageController.class),
|
||||||
mMockSubDefaults,
|
mMockSubDefaults,
|
||||||
mock(DeviceProvisionedController.class),
|
mock(DeviceProvisionedController.class),
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ 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.plugins.log.LogBuffer;
|
import com.android.systemui.plugins.log.LogBuffer;
|
||||||
|
import com.android.systemui.statusbar.pipeline.StatusBarPipelineFlags;
|
||||||
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;
|
||||||
|
|
||||||
@@ -78,6 +79,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
mFakeExecutor,
|
mFakeExecutor,
|
||||||
mCallbackHandler,
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(StatusBarPipelineFlags.class),
|
||||||
mock(DataUsageController.class),
|
mock(DataUsageController.class),
|
||||||
mMockSubDefaults,
|
mMockSubDefaults,
|
||||||
mMockProvisionController,
|
mMockProvisionController,
|
||||||
@@ -115,6 +117,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
mFakeExecutor,
|
mFakeExecutor,
|
||||||
mCallbackHandler,
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(StatusBarPipelineFlags.class),
|
||||||
mock(DataUsageController.class),
|
mock(DataUsageController.class),
|
||||||
mMockSubDefaults,
|
mMockSubDefaults,
|
||||||
mMockProvisionController,
|
mMockProvisionController,
|
||||||
@@ -150,6 +153,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
mFakeExecutor,
|
mFakeExecutor,
|
||||||
mCallbackHandler,
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(StatusBarPipelineFlags.class),
|
||||||
mock(DataUsageController.class),
|
mock(DataUsageController.class),
|
||||||
mMockSubDefaults,
|
mMockSubDefaults,
|
||||||
mock(DeviceProvisionedController.class),
|
mock(DeviceProvisionedController.class),
|
||||||
@@ -188,6 +192,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
mFakeExecutor,
|
mFakeExecutor,
|
||||||
mCallbackHandler,
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(StatusBarPipelineFlags.class),
|
||||||
mock(DataUsageController.class),
|
mock(DataUsageController.class),
|
||||||
mMockSubDefaults,
|
mMockSubDefaults,
|
||||||
mock(DeviceProvisionedController.class),
|
mock(DeviceProvisionedController.class),
|
||||||
@@ -274,6 +279,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest {
|
|||||||
mFakeExecutor,
|
mFakeExecutor,
|
||||||
mCallbackHandler,
|
mCallbackHandler,
|
||||||
mock(AccessPointControllerImpl.class),
|
mock(AccessPointControllerImpl.class),
|
||||||
|
mock(StatusBarPipelineFlags.class),
|
||||||
mock(DataUsageController.class),
|
mock(DataUsageController.class),
|
||||||
mMockSubDefaults,
|
mMockSubDefaults,
|
||||||
mock(DeviceProvisionedController.class),
|
mock(DeviceProvisionedController.class),
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ import android.telephony.TelephonyManager.DATA_CONNECTED
|
|||||||
import android.telephony.TelephonyManager.DATA_CONNECTING
|
import android.telephony.TelephonyManager.DATA_CONNECTING
|
||||||
import android.telephony.TelephonyManager.DATA_DISCONNECTED
|
import android.telephony.TelephonyManager.DATA_DISCONNECTED
|
||||||
import android.telephony.TelephonyManager.DATA_DISCONNECTING
|
import android.telephony.TelephonyManager.DATA_DISCONNECTING
|
||||||
|
import android.telephony.TelephonyManager.DATA_UNKNOWN
|
||||||
import android.telephony.TelephonyManager.NETWORK_TYPE_LTE
|
import android.telephony.TelephonyManager.NETWORK_TYPE_LTE
|
||||||
import android.telephony.TelephonyManager.NETWORK_TYPE_UNKNOWN
|
import android.telephony.TelephonyManager.NETWORK_TYPE_UNKNOWN
|
||||||
import androidx.test.filters.SmallTest
|
import androidx.test.filters.SmallTest
|
||||||
@@ -220,6 +221,21 @@ class MobileConnectionRepositoryTest : SysuiTestCase() {
|
|||||||
job.cancel()
|
job.cancel()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun testFlowForSubId_dataConnectionState_unknown() =
|
||||||
|
runBlocking(IMMEDIATE) {
|
||||||
|
var latest: MobileSubscriptionModel? = null
|
||||||
|
val job = underTest.subscriptionModelFlow.onEach { latest = it }.launchIn(this)
|
||||||
|
|
||||||
|
val callback =
|
||||||
|
getTelephonyCallbackForType<TelephonyCallback.DataConnectionStateListener>()
|
||||||
|
callback.onDataConnectionStateChanged(DATA_UNKNOWN, 200 /* unused */)
|
||||||
|
|
||||||
|
assertThat(latest?.dataConnectionState).isEqualTo(DataConnectionState.Unknown)
|
||||||
|
|
||||||
|
job.cancel()
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testFlowForSubId_dataActivity() =
|
fun testFlowForSubId_dataActivity() =
|
||||||
runBlocking(IMMEDIATE) {
|
runBlocking(IMMEDIATE) {
|
||||||
|
|||||||
Reference in New Issue
Block a user