update CdmaApnPreferenceController

Rename it to ApnPreferenceController since it support both Gsm and
Cdma. Also add check for Gsm sim card.

Bug: 118402844
Test: RunSettingsRoboTests
Change-Id: Iafe111bfdc8f8e7d91d104df652ae9b27c9b166f
This commit is contained in:
jackqdyulei
2018-10-24 18:22:04 -07:00
parent 762f75f150
commit 4c0b300e21
6 changed files with 168 additions and 266 deletions

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.android.settings.network.telephony.cdma;
package com.android.settings.network.telephony;
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
import static com.android.settings.core.BasePreferenceController.CONDITIONALLY_UNAVAILABLE;
@@ -47,7 +47,7 @@ import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
@RunWith(SettingsRobolectricTestRunner.class)
public class CdmaApnPreferenceControllerTest {
public class ApnPreferenceControllerTest {
private static final int SUB_ID = 2;
@Mock
@@ -59,7 +59,7 @@ public class CdmaApnPreferenceControllerTest {
@Mock
private CarrierConfigManager mCarrierConfigManager;
private CdmaApnPreferenceController mController;
private ApnPreferenceController mController;
private RestrictedPreference mPreference;
private Context mContext;
@@ -73,11 +73,12 @@ public class CdmaApnPreferenceControllerTest {
doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID);
doReturn(mInvalidTelephonyManager).when(mTelephonyManager).createForSubscriptionId(
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
doReturn(mCarrierConfigManager).when(mContext).getSystemService(CarrierConfigManager.class);
mPreference = new RestrictedPreference(mContext);
mController = new CdmaApnPreferenceController(mContext, "mobile_data");
mController = new ApnPreferenceController(mContext, "mobile_data");
mController.init(SUB_ID);
mController.mPreference = mPreference;
mController.setPreference(mPreference);
mController.mCarrierConfigManager = mCarrierConfigManager;
mPreference.setKey(mController.getPreferenceKey());
}
@@ -102,6 +103,16 @@ public class CdmaApnPreferenceControllerTest {
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
}
@Test
public void getAvailabilityStatus_apnSettingsSupportedWithGsm_returnAvailable() {
doReturn(PhoneConstants.PHONE_TYPE_GSM).when(mTelephonyManager).getPhoneType();
final PersistableBundle bundle = new PersistableBundle();
bundle.putBoolean(CarrierConfigManager.KEY_APN_EXPAND_BOOL, true);
doReturn(bundle).when(mCarrierConfigManager).getConfigForSubId(SUB_ID);
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
}
@Test
public void handPreferenceTreeClick_fireIntent() {
ArgumentCaptor<Intent> captor = ArgumentCaptor.forClass(Intent.class);