Merge "[Provider Model] Fix the issue of turning off carrier network" into sc-qpr1-dev
This commit is contained in:
@@ -25,7 +25,6 @@ import android.content.BroadcastReceiver;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.res.Configuration;
|
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.graphics.PixelFormat;
|
import android.graphics.PixelFormat;
|
||||||
@@ -73,6 +72,7 @@ import com.android.settingslib.net.SignalStrengthUtil;
|
|||||||
import com.android.settingslib.wifi.WifiUtils;
|
import com.android.settingslib.wifi.WifiUtils;
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
import com.android.systemui.broadcast.BroadcastDispatcher;
|
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||||
|
import com.android.systemui.dagger.qualifiers.Background;
|
||||||
import com.android.systemui.dagger.qualifiers.Main;
|
import com.android.systemui.dagger.qualifiers.Main;
|
||||||
import com.android.systemui.plugins.ActivityStarter;
|
import com.android.systemui.plugins.ActivityStarter;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||||
@@ -80,6 +80,7 @@ import com.android.systemui.statusbar.policy.NetworkController;
|
|||||||
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
||||||
import com.android.systemui.toast.SystemUIToast;
|
import com.android.systemui.toast.SystemUIToast;
|
||||||
import com.android.systemui.toast.ToastFactory;
|
import com.android.systemui.toast.ToastFactory;
|
||||||
|
import com.android.systemui.util.CarrierConfigTracker;
|
||||||
import com.android.systemui.util.settings.GlobalSettings;
|
import com.android.systemui.util.settings.GlobalSettings;
|
||||||
import com.android.wifitrackerlib.MergedCarrierEntry;
|
import com.android.wifitrackerlib.MergedCarrierEntry;
|
||||||
import com.android.wifitrackerlib.WifiEntry;
|
import com.android.wifitrackerlib.WifiEntry;
|
||||||
@@ -125,10 +126,12 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
private SubscriptionManager mSubscriptionManager;
|
private SubscriptionManager mSubscriptionManager;
|
||||||
private TelephonyManager mTelephonyManager;
|
private TelephonyManager mTelephonyManager;
|
||||||
private ConnectivityManager mConnectivityManager;
|
private ConnectivityManager mConnectivityManager;
|
||||||
|
private CarrierConfigTracker mCarrierConfigTracker;
|
||||||
private TelephonyDisplayInfo mTelephonyDisplayInfo =
|
private TelephonyDisplayInfo mTelephonyDisplayInfo =
|
||||||
new TelephonyDisplayInfo(TelephonyManager.NETWORK_TYPE_UNKNOWN,
|
new TelephonyDisplayInfo(TelephonyManager.NETWORK_TYPE_UNKNOWN,
|
||||||
TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_NONE);
|
TelephonyDisplayInfo.OVERRIDE_NETWORK_TYPE_NONE);
|
||||||
private Handler mHandler;
|
private Handler mHandler;
|
||||||
|
private Handler mWorkerHandler;
|
||||||
private MobileMappings.Config mConfig = null;
|
private MobileMappings.Config mConfig = null;
|
||||||
private Executor mExecutor;
|
private Executor mExecutor;
|
||||||
private AccessPointController mAccessPointController;
|
private AccessPointController mAccessPointController;
|
||||||
@@ -191,11 +194,14 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
@Main Handler handler, @Main Executor mainExecutor,
|
@Main Handler handler, @Main Executor mainExecutor,
|
||||||
BroadcastDispatcher broadcastDispatcher, KeyguardUpdateMonitor keyguardUpdateMonitor,
|
BroadcastDispatcher broadcastDispatcher, KeyguardUpdateMonitor keyguardUpdateMonitor,
|
||||||
GlobalSettings globalSettings, KeyguardStateController keyguardStateController,
|
GlobalSettings globalSettings, KeyguardStateController keyguardStateController,
|
||||||
WindowManager windowManager, ToastFactory toastFactory) {
|
WindowManager windowManager, ToastFactory toastFactory,
|
||||||
|
@Background Handler workerHandler,
|
||||||
|
CarrierConfigTracker carrierConfigTracker) {
|
||||||
if (DEBUG) {
|
if (DEBUG) {
|
||||||
Log.d(TAG, "Init InternetDialogController");
|
Log.d(TAG, "Init InternetDialogController");
|
||||||
}
|
}
|
||||||
mHandler = handler;
|
mHandler = handler;
|
||||||
|
mWorkerHandler = workerHandler;
|
||||||
mExecutor = mainExecutor;
|
mExecutor = mainExecutor;
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mGlobalSettings = globalSettings;
|
mGlobalSettings = globalSettings;
|
||||||
@@ -203,6 +209,7 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
mTelephonyManager = telephonyManager;
|
mTelephonyManager = telephonyManager;
|
||||||
mConnectivityManager = connectivityManager;
|
mConnectivityManager = connectivityManager;
|
||||||
mSubscriptionManager = subscriptionManager;
|
mSubscriptionManager = subscriptionManager;
|
||||||
|
mCarrierConfigTracker = carrierConfigTracker;
|
||||||
mBroadcastDispatcher = broadcastDispatcher;
|
mBroadcastDispatcher = broadcastDispatcher;
|
||||||
mKeyguardUpdateMonitor = keyguardUpdateMonitor;
|
mKeyguardUpdateMonitor = keyguardUpdateMonitor;
|
||||||
mKeyguardStateController = keyguardStateController;
|
mKeyguardStateController = keyguardStateController;
|
||||||
@@ -611,6 +618,24 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
return mergedCarrierEntry != null && mergedCarrierEntry.isDefaultNetwork();
|
return mergedCarrierEntry != null && mergedCarrierEntry.isDefaultNetwork();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@WorkerThread
|
||||||
|
void setMergedCarrierWifiEnabledIfNeed(int subId, boolean enabled) {
|
||||||
|
// If the Carrier Provisions Wi-Fi Merged Networks enabled, do not set the merged carrier
|
||||||
|
// Wi-Fi state together.
|
||||||
|
if (mCarrierConfigTracker.getCarrierProvisionsWifiMergedNetworksBool(subId)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
final MergedCarrierEntry entry = mAccessPointController.getMergedCarrierEntry();
|
||||||
|
if (entry == null) {
|
||||||
|
if (DEBUG) {
|
||||||
|
Log.d(TAG, "MergedCarrierEntry is null, can not set the status.");
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
entry.setEnabled(enabled);
|
||||||
|
}
|
||||||
|
|
||||||
WifiManager getWifiManager() {
|
WifiManager getWifiManager() {
|
||||||
return mWifiManager;
|
return mWifiManager;
|
||||||
}
|
}
|
||||||
@@ -685,6 +710,7 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
mWorkerHandler.post(() -> setMergedCarrierWifiEnabledIfNeed(subId, enabled));
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean isDataStateInService() {
|
boolean isDataStateInService() {
|
||||||
|
|||||||
@@ -23,8 +23,9 @@ import android.content.IntentFilter;
|
|||||||
import android.os.PersistableBundle;
|
import android.os.PersistableBundle;
|
||||||
import android.telephony.CarrierConfigManager;
|
import android.telephony.CarrierConfigManager;
|
||||||
import android.telephony.SubscriptionManager;
|
import android.telephony.SubscriptionManager;
|
||||||
import android.util.SparseArray;
|
import android.util.SparseBooleanArray;
|
||||||
|
|
||||||
|
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||||
import com.android.systemui.dagger.SysUISingleton;
|
import com.android.systemui.dagger.SysUISingleton;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
@@ -34,39 +35,54 @@ import javax.inject.Inject;
|
|||||||
*/
|
*/
|
||||||
@SysUISingleton
|
@SysUISingleton
|
||||||
public class CarrierConfigTracker extends BroadcastReceiver {
|
public class CarrierConfigTracker extends BroadcastReceiver {
|
||||||
private final SparseArray<Boolean> mCallStrengthConfigs = new SparseArray<>();
|
private final SparseBooleanArray mCallStrengthConfigs = new SparseBooleanArray();
|
||||||
private final SparseArray<Boolean> mNoCallingConfigs = new SparseArray<>();
|
private final SparseBooleanArray mNoCallingConfigs = new SparseBooleanArray();
|
||||||
|
private final SparseBooleanArray mCarrierProvisionsWifiMergedNetworks =
|
||||||
|
new SparseBooleanArray();
|
||||||
private final CarrierConfigManager mCarrierConfigManager;
|
private final CarrierConfigManager mCarrierConfigManager;
|
||||||
private boolean mDefaultCallStrengthConfigLoaded;
|
private boolean mDefaultCallStrengthConfigLoaded;
|
||||||
private boolean mDefaultCallStrengthConfig;
|
private boolean mDefaultCallStrengthConfig;
|
||||||
private boolean mDefaultNoCallingConfigLoaded;
|
private boolean mDefaultNoCallingConfigLoaded;
|
||||||
private boolean mDefaultNoCallingConfig;
|
private boolean mDefaultNoCallingConfig;
|
||||||
|
private boolean mDefaultCarrierProvisionsWifiMergedNetworksLoaded;
|
||||||
|
private boolean mDefaultCarrierProvisionsWifiMergedNetworks;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public CarrierConfigTracker(Context context) {
|
public CarrierConfigTracker(Context context, BroadcastDispatcher broadcastDispatcher) {
|
||||||
mCarrierConfigManager = context.getSystemService(CarrierConfigManager.class);
|
mCarrierConfigManager = context.getSystemService(CarrierConfigManager.class);
|
||||||
context.registerReceiver(
|
broadcastDispatcher.registerReceiver(
|
||||||
this, new IntentFilter(CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED));
|
this, new IntentFilter(CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
if (intent.getAction() == CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED) {
|
if (!CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED.equals(intent.getAction())) {
|
||||||
int subId = intent.getIntExtra(
|
return;
|
||||||
CarrierConfigManager.EXTRA_SUBSCRIPTION_INDEX,
|
}
|
||||||
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
|
||||||
if (!SubscriptionManager.isValidSubscriptionId(subId)) {
|
final int subId = intent.getIntExtra(
|
||||||
return;
|
CarrierConfigManager.EXTRA_SUBSCRIPTION_INDEX,
|
||||||
}
|
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
||||||
PersistableBundle b = mCarrierConfigManager.getConfigForSubId(subId);
|
if (!SubscriptionManager.isValidSubscriptionId(subId)) {
|
||||||
if (b != null) {
|
return;
|
||||||
boolean hideNoCallingConfig = b.getBoolean(
|
}
|
||||||
CarrierConfigManager.KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL);
|
|
||||||
boolean displayCallStrengthIcon = b.getBoolean(
|
final PersistableBundle config = mCarrierConfigManager.getConfigForSubId(subId);
|
||||||
CarrierConfigManager.KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL);
|
if (config == null) {
|
||||||
mCallStrengthConfigs.put(subId, displayCallStrengthIcon);
|
return;
|
||||||
mNoCallingConfigs.put(subId, hideNoCallingConfig);
|
}
|
||||||
}
|
|
||||||
|
synchronized (mCallStrengthConfigs) {
|
||||||
|
mCallStrengthConfigs.put(subId, config.getBoolean(
|
||||||
|
CarrierConfigManager.KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL));
|
||||||
|
}
|
||||||
|
synchronized (mNoCallingConfigs) {
|
||||||
|
mNoCallingConfigs.put(subId, config.getBoolean(
|
||||||
|
CarrierConfigManager.KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL));
|
||||||
|
}
|
||||||
|
synchronized (mCarrierProvisionsWifiMergedNetworks) {
|
||||||
|
mCarrierProvisionsWifiMergedNetworks.put(subId, config.getBoolean(
|
||||||
|
CarrierConfigManager.KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -74,8 +90,10 @@ public class CarrierConfigTracker extends BroadcastReceiver {
|
|||||||
* Returns the KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL value for the given subId.
|
* Returns the KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL value for the given subId.
|
||||||
*/
|
*/
|
||||||
public boolean getCallStrengthConfig(int subId) {
|
public boolean getCallStrengthConfig(int subId) {
|
||||||
if (mCallStrengthConfigs.indexOfKey(subId) >= 0) {
|
synchronized (mCallStrengthConfigs) {
|
||||||
return mCallStrengthConfigs.get(subId);
|
if (mCallStrengthConfigs.indexOfKey(subId) >= 0) {
|
||||||
|
return mCallStrengthConfigs.get(subId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!mDefaultCallStrengthConfigLoaded) {
|
if (!mDefaultCallStrengthConfigLoaded) {
|
||||||
mDefaultCallStrengthConfig =
|
mDefaultCallStrengthConfig =
|
||||||
@@ -90,8 +108,10 @@ public class CarrierConfigTracker extends BroadcastReceiver {
|
|||||||
* Returns the KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL value for the given subId.
|
* Returns the KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL value for the given subId.
|
||||||
*/
|
*/
|
||||||
public boolean getNoCallingConfig(int subId) {
|
public boolean getNoCallingConfig(int subId) {
|
||||||
if (mNoCallingConfigs.indexOfKey(subId) >= 0) {
|
synchronized (mNoCallingConfigs) {
|
||||||
return mNoCallingConfigs.get(subId);
|
if (mNoCallingConfigs.indexOfKey(subId) >= 0) {
|
||||||
|
return mNoCallingConfigs.get(subId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!mDefaultNoCallingConfigLoaded) {
|
if (!mDefaultNoCallingConfigLoaded) {
|
||||||
mDefaultNoCallingConfig =
|
mDefaultNoCallingConfig =
|
||||||
@@ -101,4 +121,22 @@ public class CarrierConfigTracker extends BroadcastReceiver {
|
|||||||
}
|
}
|
||||||
return mDefaultNoCallingConfig;
|
return mDefaultNoCallingConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL value for the given subId.
|
||||||
|
*/
|
||||||
|
public boolean getCarrierProvisionsWifiMergedNetworksBool(int subId) {
|
||||||
|
synchronized (mCarrierProvisionsWifiMergedNetworks) {
|
||||||
|
if (mCarrierProvisionsWifiMergedNetworks.indexOfKey(subId) >= 0) {
|
||||||
|
return mCarrierProvisionsWifiMergedNetworks.get(subId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!mDefaultCarrierProvisionsWifiMergedNetworksLoaded) {
|
||||||
|
mDefaultCarrierProvisionsWifiMergedNetworks =
|
||||||
|
CarrierConfigManager.getDefaultConfig().getBoolean(
|
||||||
|
CarrierConfigManager.KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL);
|
||||||
|
mDefaultCarrierProvisionsWifiMergedNetworksLoaded = true;
|
||||||
|
}
|
||||||
|
return mDefaultCarrierProvisionsWifiMergedNetworks;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ import static org.mockito.Mockito.doReturn;
|
|||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.never;
|
||||||
import static org.mockito.Mockito.reset;
|
import static org.mockito.Mockito.reset;
|
||||||
import static org.mockito.Mockito.spy;
|
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
@@ -34,10 +33,6 @@ import android.testing.AndroidTestingRunner;
|
|||||||
import android.testing.TestableLooper;
|
import android.testing.TestableLooper;
|
||||||
import android.testing.TestableResources;
|
import android.testing.TestableResources;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.view.LayoutInflater;
|
|
||||||
import android.view.View;
|
|
||||||
import android.view.WindowManager;
|
|
||||||
import android.widget.TextView;
|
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
@@ -58,6 +53,7 @@ import com.android.systemui.statusbar.policy.NetworkController;
|
|||||||
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
||||||
import com.android.systemui.toast.SystemUIToast;
|
import com.android.systemui.toast.SystemUIToast;
|
||||||
import com.android.systemui.toast.ToastFactory;
|
import com.android.systemui.toast.ToastFactory;
|
||||||
|
import com.android.systemui.util.CarrierConfigTracker;
|
||||||
import com.android.systemui.util.concurrency.FakeExecutor;
|
import com.android.systemui.util.concurrency.FakeExecutor;
|
||||||
import com.android.systemui.util.settings.GlobalSettings;
|
import com.android.systemui.util.settings.GlobalSettings;
|
||||||
import com.android.systemui.util.time.FakeSystemClock;
|
import com.android.systemui.util.time.FakeSystemClock;
|
||||||
@@ -68,7 +64,6 @@ import org.junit.Before;
|
|||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.ArgumentCaptor;
|
import org.mockito.ArgumentCaptor;
|
||||||
import org.mockito.Captor;
|
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.MockitoAnnotations;
|
||||||
|
|
||||||
@@ -99,6 +94,8 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
@Mock
|
@Mock
|
||||||
private Handler mHandler;
|
private Handler mHandler;
|
||||||
@Mock
|
@Mock
|
||||||
|
private Handler mWorkerHandler;
|
||||||
|
@Mock
|
||||||
private ActivityStarter mActivityStarter;
|
private ActivityStarter mActivityStarter;
|
||||||
@Mock
|
@Mock
|
||||||
private GlobalSettings mGlobalSettings;
|
private GlobalSettings mGlobalSettings;
|
||||||
@@ -136,6 +133,8 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
private View mToastView;
|
private View mToastView;
|
||||||
@Mock
|
@Mock
|
||||||
private Animator mAnimator;
|
private Animator mAnimator;
|
||||||
|
@Mock
|
||||||
|
private CarrierConfigTracker mCarrierConfigTracker;
|
||||||
|
|
||||||
private TestableResources mTestableResources;
|
private TestableResources mTestableResources;
|
||||||
private MockInternetDialogController mInternetDialogController;
|
private MockInternetDialogController mInternetDialogController;
|
||||||
@@ -157,6 +156,7 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
when(mWifiEntry4.getConnectedState()).thenReturn(WifiEntry.CONNECTED_STATE_DISCONNECTED);
|
when(mWifiEntry4.getConnectedState()).thenReturn(WifiEntry.CONNECTED_STATE_DISCONNECTED);
|
||||||
mAccessPoints.add(mConnectedEntry);
|
mAccessPoints.add(mConnectedEntry);
|
||||||
mAccessPoints.add(mWifiEntry1);
|
mAccessPoints.add(mWifiEntry1);
|
||||||
|
when(mAccessPointController.getMergedCarrierEntry()).thenReturn(mMergedCarrierEntry);
|
||||||
when(mSubscriptionManager.getActiveSubscriptionIdList()).thenReturn(new int[]{SUB_ID});
|
when(mSubscriptionManager.getActiveSubscriptionIdList()).thenReturn(new int[]{SUB_ID});
|
||||||
when(mAccessPointController.getMergedCarrierEntry()).thenReturn(mMergedCarrierEntry);
|
when(mAccessPointController.getMergedCarrierEntry()).thenReturn(mMergedCarrierEntry);
|
||||||
when(mToastFactory.createToast(any(), anyString(), anyString(), anyInt(), anyInt()))
|
when(mToastFactory.createToast(any(), anyString(), anyString(), anyInt(), anyInt()))
|
||||||
@@ -170,7 +170,7 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
mSubscriptionManager, mTelephonyManager, mWifiManager,
|
mSubscriptionManager, mTelephonyManager, mWifiManager,
|
||||||
mock(ConnectivityManager.class), mHandler, mExecutor, mBroadcastDispatcher,
|
mock(ConnectivityManager.class), mHandler, mExecutor, mBroadcastDispatcher,
|
||||||
mock(KeyguardUpdateMonitor.class), mGlobalSettings, mKeyguardStateController,
|
mock(KeyguardUpdateMonitor.class), mGlobalSettings, mKeyguardStateController,
|
||||||
mWindowManager, mToastFactory);
|
mWindowManager, mToastFactory, mWorkerHandler, mCarrierConfigTracker);
|
||||||
mSubscriptionManager.addOnSubscriptionsChangedListener(mExecutor,
|
mSubscriptionManager.addOnSubscriptionsChangedListener(mExecutor,
|
||||||
mInternetDialogController.mOnSubscriptionsChangedListener);
|
mInternetDialogController.mOnSubscriptionsChangedListener);
|
||||||
mInternetDialogController.onStart(mInternetDialogCallback, true);
|
mInternetDialogController.onStart(mInternetDialogCallback, true);
|
||||||
@@ -569,6 +569,39 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
.onAccessPointsChanged(mWifiEntries, null /* connectedEntry */);
|
.onAccessPointsChanged(mWifiEntries, null /* connectedEntry */);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void setMergedCarrierWifiEnabledIfNeed_carrierProvisionsEnabled_doNothing() {
|
||||||
|
when(mCarrierConfigTracker.getCarrierProvisionsWifiMergedNetworksBool(SUB_ID))
|
||||||
|
.thenReturn(true);
|
||||||
|
|
||||||
|
mInternetDialogController.setMergedCarrierWifiEnabledIfNeed(SUB_ID, true);
|
||||||
|
|
||||||
|
verify(mMergedCarrierEntry, never()).setEnabled(anyBoolean());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void setMergedCarrierWifiEnabledIfNeed_mergedCarrierEntryEmpty_doesntCrash() {
|
||||||
|
when(mCarrierConfigTracker.getCarrierProvisionsWifiMergedNetworksBool(SUB_ID))
|
||||||
|
.thenReturn(false);
|
||||||
|
when(mAccessPointController.getMergedCarrierEntry()).thenReturn(null);
|
||||||
|
|
||||||
|
mInternetDialogController.setMergedCarrierWifiEnabledIfNeed(SUB_ID, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void setMergedCarrierWifiEnabledIfNeed_neededSetMergedCarrierEntry_setTogether() {
|
||||||
|
when(mCarrierConfigTracker.getCarrierProvisionsWifiMergedNetworksBool(SUB_ID))
|
||||||
|
.thenReturn(false);
|
||||||
|
|
||||||
|
mInternetDialogController.setMergedCarrierWifiEnabledIfNeed(SUB_ID, true);
|
||||||
|
|
||||||
|
verify(mMergedCarrierEntry).setEnabled(true);
|
||||||
|
|
||||||
|
mInternetDialogController.setMergedCarrierWifiEnabledIfNeed(SUB_ID, false);
|
||||||
|
|
||||||
|
verify(mMergedCarrierEntry).setEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
private String getResourcesString(String name) {
|
private String getResourcesString(String name) {
|
||||||
return mContext.getResources().getString(getResourcesId(name));
|
return mContext.getResources().getString(getResourcesId(name));
|
||||||
}
|
}
|
||||||
@@ -591,11 +624,13 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
BroadcastDispatcher broadcastDispatcher,
|
BroadcastDispatcher broadcastDispatcher,
|
||||||
KeyguardUpdateMonitor keyguardUpdateMonitor, GlobalSettings globalSettings,
|
KeyguardUpdateMonitor keyguardUpdateMonitor, GlobalSettings globalSettings,
|
||||||
KeyguardStateController keyguardStateController, WindowManager windowManager,
|
KeyguardStateController keyguardStateController, WindowManager windowManager,
|
||||||
ToastFactory toastFactory) {
|
ToastFactory toastFactory, Handler workerHandler,
|
||||||
|
CarrierConfigTracker carrierConfigTracker) {
|
||||||
super(context, uiEventLogger, starter, accessPointController, subscriptionManager,
|
super(context, uiEventLogger, starter, accessPointController, subscriptionManager,
|
||||||
telephonyManager, wifiManager, connectivityManager, handler, mainExecutor,
|
telephonyManager, wifiManager, connectivityManager, handler, mainExecutor,
|
||||||
broadcastDispatcher, keyguardUpdateMonitor, globalSettings,
|
broadcastDispatcher, keyguardUpdateMonitor, globalSettings,
|
||||||
keyguardStateController, windowManager, toastFactory);
|
keyguardStateController, windowManager, toastFactory, workerHandler,
|
||||||
|
carrierConfigTracker);
|
||||||
mGlobalSettings = globalSettings;
|
mGlobalSettings = globalSettings;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user