Remove wrapper for EUICCManager
Bug: 76167422 Test: robotests Change-Id: I2a6687ffab780493fca7b2146cf73cbc7f634081
This commit is contained in:
@@ -17,6 +17,7 @@
|
|||||||
package com.android.settings.deviceinfo.simstatus;
|
package com.android.settings.deviceinfo.simstatus;
|
||||||
|
|
||||||
import static android.content.Context.CARRIER_CONFIG_SERVICE;
|
import static android.content.Context.CARRIER_CONFIG_SERVICE;
|
||||||
|
import static android.content.Context.EUICC_SERVICE;
|
||||||
import static android.content.Context.TELEPHONY_SERVICE;
|
import static android.content.Context.TELEPHONY_SERVICE;
|
||||||
|
|
||||||
import android.Manifest;
|
import android.Manifest;
|
||||||
@@ -39,13 +40,13 @@ import android.telephony.SignalStrength;
|
|||||||
import android.telephony.SubscriptionInfo;
|
import android.telephony.SubscriptionInfo;
|
||||||
import android.telephony.SubscriptionManager;
|
import android.telephony.SubscriptionManager;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
|
import android.telephony.euicc.EuiccManager;
|
||||||
import android.text.BidiFormatter;
|
import android.text.BidiFormatter;
|
||||||
import android.text.TextDirectionHeuristics;
|
import android.text.TextDirectionHeuristics;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.wrapper.EuiccManagerWrapper;
|
|
||||||
import com.android.settingslib.DeviceInfoUtils;
|
import com.android.settingslib.DeviceInfoUtils;
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
@@ -101,7 +102,7 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
|
|||||||
private final SubscriptionInfo mSubscriptionInfo;
|
private final SubscriptionInfo mSubscriptionInfo;
|
||||||
private final TelephonyManager mTelephonyManager;
|
private final TelephonyManager mTelephonyManager;
|
||||||
private final CarrierConfigManager mCarrierConfigManager;
|
private final CarrierConfigManager mCarrierConfigManager;
|
||||||
private final EuiccManagerWrapper mEuiccManager;
|
private final EuiccManager mEuiccManager;
|
||||||
private final Resources mRes;
|
private final Resources mRes;
|
||||||
private final Context mContext;
|
private final Context mContext;
|
||||||
|
|
||||||
@@ -137,7 +138,7 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
|
|||||||
TELEPHONY_SERVICE);
|
TELEPHONY_SERVICE);
|
||||||
mCarrierConfigManager = (CarrierConfigManager) mContext.getSystemService(
|
mCarrierConfigManager = (CarrierConfigManager) mContext.getSystemService(
|
||||||
CARRIER_CONFIG_SERVICE);
|
CARRIER_CONFIG_SERVICE);
|
||||||
mEuiccManager = new EuiccManagerWrapper(mContext);
|
mEuiccManager = (EuiccManager) mContext.getSystemService(EUICC_SERVICE);
|
||||||
|
|
||||||
mRes = mContext.getResources();
|
mRes = mContext.getResources();
|
||||||
|
|
||||||
|
@@ -1,49 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (C) 2018 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.settings.wrapper;
|
|
||||||
|
|
||||||
import android.annotation.Nullable;
|
|
||||||
import android.content.Context;
|
|
||||||
import android.telephony.euicc.EuiccManager;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This class replicates a subset of the {@link android.telephony.euicc.EuiccManager}.
|
|
||||||
* The interface exists so that we can use a thin wrapper around the EuiccManager in
|
|
||||||
* production code and a mock in tests.
|
|
||||||
*/
|
|
||||||
public class EuiccManagerWrapper {
|
|
||||||
|
|
||||||
private final EuiccManager mEuiccManager;
|
|
||||||
|
|
||||||
public EuiccManagerWrapper(Context context) {
|
|
||||||
mEuiccManager = (EuiccManager) context.getSystemService(Context.EUICC_SERVICE);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns the EID identifying the eUICC hardware.
|
|
||||||
*
|
|
||||||
* <p>Requires that the calling app has carrier privileges on the active subscription on the
|
|
||||||
* eUICC.
|
|
||||||
*
|
|
||||||
* @return the EID. May be null if {@link EuiccManager#isEnabled()} is false or the eUICC is not
|
|
||||||
* ready.
|
|
||||||
*/
|
|
||||||
@Nullable
|
|
||||||
public String getEid() {
|
|
||||||
return mEuiccManager.getEid();
|
|
||||||
}
|
|
||||||
}
|
|
@@ -16,21 +16,35 @@
|
|||||||
|
|
||||||
package com.android.settings.deviceinfo.simstatus;
|
package com.android.settings.deviceinfo.simstatus;
|
||||||
|
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.CELL_DATA_NETWORK_TYPE_VALUE_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.CELL_VOICE_NETWORK_TYPE_VALUE_ID;
|
.CELL_DATA_NETWORK_TYPE_VALUE_ID;
|
||||||
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
|
.CELL_VOICE_NETWORK_TYPE_VALUE_ID;
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.EID_INFO_VALUE_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.EID_INFO_VALUE_ID;
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.ICCID_INFO_LABEL_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.ICCID_INFO_VALUE_ID;
|
.ICCID_INFO_LABEL_ID;
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.IMS_REGISTRATION_STATE_LABEL_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.IMS_REGISTRATION_STATE_VALUE_ID;
|
.ICCID_INFO_VALUE_ID;
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.NETWORK_PROVIDER_VALUE_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.OPERATOR_INFO_LABEL_ID;
|
.IMS_REGISTRATION_STATE_LABEL_ID;
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.OPERATOR_INFO_VALUE_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.PHONE_NUMBER_VALUE_ID;
|
.IMS_REGISTRATION_STATE_VALUE_ID;
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.ROAMING_INFO_VALUE_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.SERVICE_STATE_VALUE_ID;
|
.NETWORK_PROVIDER_VALUE_ID;
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.SIGNAL_STRENGTH_LABEL_ID;
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController.SIGNAL_STRENGTH_VALUE_ID;
|
.OPERATOR_INFO_LABEL_ID;
|
||||||
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
|
.OPERATOR_INFO_VALUE_ID;
|
||||||
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
|
.PHONE_NUMBER_VALUE_ID;
|
||||||
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
|
.ROAMING_INFO_VALUE_ID;
|
||||||
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
|
.SERVICE_STATE_VALUE_ID;
|
||||||
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
|
.SIGNAL_STRENGTH_LABEL_ID;
|
||||||
|
import static com.android.settings.deviceinfo.simstatus.SimStatusDialogController
|
||||||
|
.SIGNAL_STRENGTH_VALUE_ID;
|
||||||
import static org.mockito.ArgumentMatchers.any;
|
import static org.mockito.ArgumentMatchers.any;
|
||||||
import static org.mockito.ArgumentMatchers.anyInt;
|
import static org.mockito.ArgumentMatchers.anyInt;
|
||||||
import static org.mockito.ArgumentMatchers.eq;
|
import static org.mockito.ArgumentMatchers.eq;
|
||||||
@@ -50,10 +64,10 @@ import android.telephony.ServiceState;
|
|||||||
import android.telephony.SignalStrength;
|
import android.telephony.SignalStrength;
|
||||||
import android.telephony.SubscriptionInfo;
|
import android.telephony.SubscriptionInfo;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
|
import android.telephony.euicc.EuiccManager;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||||
import com.android.settings.wrapper.EuiccManagerWrapper;
|
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
@@ -86,7 +100,7 @@ public class SimStatusDialogControllerTest {
|
|||||||
@Mock
|
@Mock
|
||||||
private PersistableBundle mPersistableBundle;
|
private PersistableBundle mPersistableBundle;
|
||||||
@Mock
|
@Mock
|
||||||
private EuiccManagerWrapper mEuiccManager;
|
private EuiccManager mEuiccManager;
|
||||||
|
|
||||||
private SimStatusDialogController mController;
|
private SimStatusDialogController mController;
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
@@ -101,14 +115,14 @@ public class SimStatusDialogControllerTest {
|
|||||||
mLifecycleOwner = () -> mLifecycle;
|
mLifecycleOwner = () -> mLifecycle;
|
||||||
mLifecycle = new Lifecycle(mLifecycleOwner);
|
mLifecycle = new Lifecycle(mLifecycleOwner);
|
||||||
mController = spy(new SimStatusDialogController(mDialog, mLifecycle, 0 /* phone id */));
|
mController = spy(new SimStatusDialogController(mDialog, mLifecycle, 0 /* phone id */));
|
||||||
mEuiccManager = spy(new EuiccManagerWrapper(mContext));
|
|
||||||
doReturn(mServiceState).when(mController).getCurrentServiceState();
|
doReturn(mServiceState).when(mController).getCurrentServiceState();
|
||||||
doReturn(0).when(mController).getDbm(any());
|
doReturn(0).when(mController).getDbm(any());
|
||||||
doReturn(0).when(mController).getAsuLevel(any());
|
doReturn(0).when(mController).getAsuLevel(any());
|
||||||
doReturn(mPhoneStateListener).when(mController).getPhoneStateListener();
|
doReturn(mPhoneStateListener).when(mController).getPhoneStateListener();
|
||||||
doReturn("").when(mController).getPhoneNumber();
|
doReturn("").when(mController).getPhoneNumber();
|
||||||
doReturn(mSignalStrength).when(mController).getSignalStrength();
|
doReturn(mSignalStrength).when(mController).getSignalStrength();
|
||||||
doReturn("").when(mEuiccManager).getEid();
|
|
||||||
|
when(mEuiccManager.getEid()).thenReturn("");
|
||||||
ReflectionHelpers.setField(mController, "mTelephonyManager", mTelephonyManager);
|
ReflectionHelpers.setField(mController, "mTelephonyManager", mTelephonyManager);
|
||||||
ReflectionHelpers.setField(mController, "mCarrierConfigManager", mCarrierConfigManager);
|
ReflectionHelpers.setField(mController, "mCarrierConfigManager", mCarrierConfigManager);
|
||||||
ReflectionHelpers.setField(mController, "mSubscriptionInfo", mSubscriptionInfo);
|
ReflectionHelpers.setField(mController, "mSubscriptionInfo", mSubscriptionInfo);
|
||||||
@@ -283,7 +297,7 @@ public class SimStatusDialogControllerTest {
|
|||||||
@Test
|
@Test
|
||||||
public void initialize_showEid_shouldSetEidToSetting() {
|
public void initialize_showEid_shouldSetEidToSetting() {
|
||||||
final String eid = "12351351231241";
|
final String eid = "12351351231241";
|
||||||
doReturn(eid).when(mEuiccManager).getEid();
|
when(mEuiccManager.getEid()).thenReturn(eid);
|
||||||
|
|
||||||
mController.initialize();
|
mController.initialize();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user