Merge "[Settings] Replace TelephonyManager#from()"

am: 98e6ab358b

Change-Id: I3db67a7e5037ab06ac5146e0367f759245d95246
This commit is contained in:
Bonian Chen
2019-12-25 20:00:55 -08:00
committed by android-build-merger
2 changed files with 15 additions and 17 deletions

View File

@@ -50,7 +50,8 @@ public class EuiccPreferenceController extends TelephonyBasePreferenceController
public void init(int subId) { public void init(int subId) {
mSubId = subId; mSubId = subId;
mTelephonyManager = TelephonyManager.from(mContext).createForSubscriptionId(mSubId); mTelephonyManager = mContext.getSystemService(TelephonyManager.class)
.createForSubscriptionId(mSubId);
} }
@Override @Override

View File

@@ -18,37 +18,32 @@ package com.android.settings.network.telephony;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.spy; import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify; import static org.robolectric.Shadows.shadowOf;
import android.app.Activity;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.telephony.TelephonyManager; import android.telephony.TelephonyManager;
import android.telephony.euicc.EuiccManager; import android.telephony.euicc.EuiccManager;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.junit.Before; 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.Mock;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import org.robolectric.Robolectric;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment; import org.robolectric.RuntimeEnvironment;
import org.robolectric.shadows.ShadowTelephonyManager;
@RunWith(RobolectricTestRunner.class) @RunWith(AndroidJUnit4.class)
public class EuiccPreferenceControllerTest { public class EuiccPreferenceControllerTest {
private static final int SUB_ID = 2; private static final int SUB_ID = 2;
@Mock
private TelephonyManager mTelephonyManager; private TelephonyManager mTelephonyManager;
private ShadowTelephonyManager mShadowTelephonyManager;
@Mock
private Activity mActivity;
private EuiccPreferenceController mController; private EuiccPreferenceController mController;
private Preference mPreference; private Preference mPreference;
@@ -58,12 +53,14 @@ public class EuiccPreferenceControllerTest {
public void setUp() { public void setUp() {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application); mContext = spy(RuntimeEnvironment.application.getBaseContext());
doReturn(mTelephonyManager).when(mActivity).getSystemService(Context.TELEPHONY_SERVICE);
doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID); mTelephonyManager = mContext.getSystemService(TelephonyManager.class);
mShadowTelephonyManager = shadowOf(mTelephonyManager);
mShadowTelephonyManager.setTelephonyManagerForSubscriptionId(SUB_ID, mTelephonyManager);
mPreference = new Preference(mContext); mPreference = new Preference(mContext);
mController = new EuiccPreferenceController(mActivity, "euicc"); mController = new EuiccPreferenceController(mContext, "euicc");
mController.init(SUB_ID); mController.init(SUB_ID);
mPreference.setKey(mController.getPreferenceKey()); mPreference.setKey(mController.getPreferenceKey());
} }
@@ -71,10 +68,10 @@ public class EuiccPreferenceControllerTest {
@Test @Test
public void handlePreferenceTreeClick_startActivity() { public void handlePreferenceTreeClick_startActivity() {
ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class); ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);
doNothing().when(mContext).startActivity(captor.capture());
mController.handlePreferenceTreeClick(mPreference); mController.handlePreferenceTreeClick(mPreference);
verify(mActivity).startActivity(captor.capture());
assertThat(captor.getValue().getAction()).isEqualTo( assertThat(captor.getValue().getAction()).isEqualTo(
EuiccManager.ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS); EuiccManager.ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS);
} }