From 67b2c16a9a9060d37888bdab4dfadd384a76e9d7 Mon Sep 17 00:00:00 2001 From: Jason Monk Date: Tue, 12 Jan 2016 10:24:09 -0500 Subject: [PATCH] Get data type from service state as well Bug: 26276354 Bug: 26413831 Change-Id: Ic080300db7d5e5200caf611cc2ee1ef3af93736e --- .../statusbar/policy/MobileSignalController.java | 1 + .../policy/NetworkControllerBaseTest.java | 7 ++++--- .../policy/NetworkControllerDataTest.java | 15 +++++++++++++++ 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java index b65bf43314f40..ad8e3bde58b53 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java @@ -440,6 +440,7 @@ public class MobileSignalController extends SignalController< + " dataState=" + state.getDataRegState()); } mServiceState = state; + mDataNetType = state.getDataNetworkType(); updateTelephony(); } diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java index 30c08cdd224a7..61d4e4a15c1a6 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java @@ -59,8 +59,8 @@ public class NetworkControllerBaseTest extends SysuiTestCase { protected NetworkControllerImpl mNetworkController; protected MobileSignalController mMobileSignalController; protected PhoneStateListener mPhoneStateListener; - private SignalStrength mSignalStrength; - private ServiceState mServiceState; + protected SignalStrength mSignalStrength; + protected ServiceState mServiceState; protected ConnectivityManager mMockCm; protected WifiManager mMockWm; protected SubscriptionManager mMockSm; @@ -234,7 +234,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase { mPhoneStateListener.onSignalStrengthsChanged(mSignalStrength); } - private void updateServiceState() { + protected void updateServiceState() { Log.d(TAG, "Sending Service State: " + mServiceState); mPhoneStateListener.onServiceStateChanged(mServiceState); } @@ -245,6 +245,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase { } public void updateDataConnectionState(int dataState, int dataNetType) { + when(mServiceState.getDataNetworkType()).thenReturn(dataNetType); mPhoneStateListener.onDataConnectionStateChanged(dataState, dataNetType); } diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java index 0ec8802f9c602..3e0da3c332116 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java @@ -114,6 +114,21 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest { TelephonyIcons.QS_DATA_4G); } + public void testDataChangeWithoutConnectionState() { + setupDefaultSignal(); + updateDataConnectionState(TelephonyManager.DATA_CONNECTED, + TelephonyManager.NETWORK_TYPE_LTE); + + verifyDataIndicators(TelephonyIcons.DATA_LTE[1][0 /* No direction */], + TelephonyIcons.QS_DATA_LTE); + + Mockito.when(mServiceState.getDataNetworkType()) + .thenReturn(TelephonyManager.NETWORK_TYPE_HSPA); + updateServiceState(); + verifyDataIndicators(TelephonyIcons.DATA_H[1][0 /* No direction */], + TelephonyIcons.QS_DATA_H); + } + public void testDataActivity() { setupDefaultSignal();