Merge "Rename a bunch of mobile network files"

This commit is contained in:
Lei Yu
2018-10-31 20:04:03 +00:00
committed by Android (Google) Code Review
11 changed files with 78 additions and 44 deletions

View File

@@ -130,7 +130,7 @@
android:value="true" />
</activity>
<activity android:name=".network.telephony.MobileSettingsActivity"
<activity android:name=".network.telephony.MobileNetworkActivity"
android:label="@string/network_settings_title"
android:theme="@style/Theme.Settings.Home"
android:launchMode="singleTask">

View File

@@ -77,7 +77,7 @@
settings:controller="com.android.settings.network.telephony.EuiccPreferenceController" />
<PreferenceCategory
android:key="calling"
android:key="calling_category"
android:title="@string/call_category">
<PreferenceScreen

View File

@@ -36,7 +36,7 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.core.FeatureFlags;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.network.telephony.MobileSettingsActivity;
import com.android.settings.network.telephony.MobileNetworkActivity;
import com.android.settingslib.RestrictedLockUtilsInternal;
import com.android.settingslib.RestrictedPreference;
import com.android.settingslib.Utils;
@@ -147,7 +147,7 @@ public class MobileNetworkPreferenceController extends AbstractPreferenceControl
public boolean handlePreferenceTreeClick(Preference preference) {
if (KEY_MOBILE_NETWORK_SETTINGS.equals(preference.getKey())) {
if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.MOBILE_NETWORK_V2)) {
final Intent intent = new Intent(mContext, MobileSettingsActivity.class);
final Intent intent = new Intent(mContext, MobileNetworkActivity.class);
mContext.startActivity(intent);
} else {
final Intent intent = new Intent(Intent.ACTION_MAIN);

View File

@@ -48,7 +48,7 @@ import java.util.Comparator;
import java.util.List;
import java.util.Objects;
public class MobileSettingsActivity extends SettingsBaseActivity {
public class MobileNetworkActivity extends SettingsBaseActivity {
private static final String TAG = "MobileSettingsActivity";
@VisibleForTesting
@@ -79,7 +79,8 @@ public class MobileSettingsActivity extends SettingsBaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mobile_settings_container);
setContentView(R.layout.mobile_network_settings_container);
setActionBar(findViewById(R.id.mobile_action_bar));
mPhoneChangeReceiver = new PhoneChangeReceiver();
mSubscriptionManager = getSystemService(SubscriptionManager.class);
@@ -130,7 +131,7 @@ public class MobileSettingsActivity extends SettingsBaseActivity {
updateBottomNavigationView();
if (savedInstanceState == null) {
switchFragment(new MobileNetworkFragment(), getSubscriptionId());
switchFragment(new MobileNetworkSettings(), getSubscriptionId());
}
}
@@ -172,7 +173,7 @@ public class MobileSettingsActivity extends SettingsBaseActivity {
.setIcon(R.drawable.ic_settings_sim);
}
navigation.setOnNavigationItemSelectedListener(item -> {
switchFragment(new MobileNetworkFragment(), item.getItemId());
switchFragment(new MobileNetworkSettings(), item.getItemId());
return true;
});
}
@@ -211,7 +212,7 @@ public class MobileSettingsActivity extends SettingsBaseActivity {
// When the radio changes (ex: CDMA->GSM), refresh the fragment.
// This is very rare to happen.
if (mCurSubscriptionId != SUB_ID_NULL) {
switchFragment(new MobileNetworkFragment(), mCurSubscriptionId,
switchFragment(new MobileNetworkSettings(), mCurSubscriptionId,
true /* forceUpdate */);
}
}

View File

@@ -49,7 +49,7 @@ import java.util.Arrays;
import java.util.List;
@SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC)
public class MobileNetworkFragment extends RestrictedDashboardFragment {
public class MobileNetworkSettings extends RestrictedDashboardFragment {
private static final String LOG_TAG = "NetworkSettings";
public static final int REQUEST_CODE_EXIT_ECM = 17;
@@ -69,7 +69,7 @@ public class MobileNetworkFragment extends RestrictedDashboardFragment {
private UserManager mUserManager;
private String mClickedPrefKey;
public MobileNetworkFragment() {
public MobileNetworkSettings() {
super(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS);
}
@@ -107,6 +107,7 @@ public class MobileNetworkFragment extends RestrictedDashboardFragment {
@Override
public void onAttach(Context context) {
super.onAttach(context);
mSubId = getArguments().getInt(Settings.EXTRA_SUB_ID,
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
@@ -162,7 +163,7 @@ public class MobileNetworkFragment extends RestrictedDashboardFragment {
@Override
protected int getPreferenceScreenResId() {
return R.xml.network_setting_fragment;
return R.xml.mobile_network_settings;
}
@Override
@@ -209,7 +210,7 @@ public class MobileNetworkFragment extends RestrictedDashboardFragment {
final ArrayList<SearchIndexableResource> result = new ArrayList<>();
final SearchIndexableResource sir = new SearchIndexableResource(context);
sir.xmlResId = R.xml.network_setting_fragment;
sir.xmlResId = R.xml.mobile_network_settings;
result.add(sir);
return result;
}

View File

@@ -46,6 +46,9 @@ import java.util.List;
public class WifiCallingPreferenceController extends BasePreferenceController implements
LifecycleObserver, OnStart, OnStop {
@VisibleForTesting
static final String KEY_PREFERENCE_CATEGORY = "calling_category";
private TelephonyManager mTelephonyManager;
@VisibleForTesting
ImsManager mImsManager;
@@ -86,6 +89,13 @@ public class WifiCallingPreferenceController extends BasePreferenceController im
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mPreference = screen.findPreference(getPreferenceKey());
if (!isAvailable()) {
// Set category as invisible
final Preference preferenceCateogry = screen.findPreference(KEY_PREFERENCE_CATEGORY);
if (preferenceCateogry != null) {
preferenceCateogry.setVisible(false);
}
}
}
@Override

View File

@@ -31,7 +31,7 @@ import com.android.settings.R;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.core.TogglePreferenceController;
import com.android.settings.network.telephony.MobileNetworkUtils;
import com.android.settings.network.telephony.MobileSettingsActivity;
import com.android.settings.network.telephony.MobileNetworkActivity;
import com.android.settings.network.telephony.NetworkSelectSettings;
import java.util.ArrayList;

View File

@@ -32,7 +32,7 @@ import com.android.settings.R;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.network.telephony.MobileNetworkUtils;
import com.android.settings.network.telephony.MobileSettingsActivity;
import com.android.settings.network.telephony.MobileNetworkActivity;
import com.android.settings.network.telephony.NetworkSelectSettings;
/**

View File

@@ -16,7 +16,7 @@
package com.android.settings.network.telephony;
import static com.android.settings.network.telephony.MobileSettingsActivity.MOBILE_SETTINGS_TAG;
import static com.android.settings.network.telephony.MobileNetworkActivity.MOBILE_SETTINGS_TAG;
import static com.google.common.truth.Truth.assertThat;
@@ -56,13 +56,13 @@ import java.util.ArrayList;
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
public class MobileSettingsActivityTest {
public class MobileNetworkActivityTest {
private static final int CURRENT_SUB_ID = 3;
private static final int PREV_SUB_ID = 1;
private Context mContext;
private MobileSettingsActivity mMobileSettingsActivity;
private MobileNetworkActivity mMobileNetworkActivity;
private List<SubscriptionInfo> mSubscriptionInfos;
private Fragment mShowFragment;
private Fragment mHideFragment;
@@ -85,19 +85,19 @@ public class MobileSettingsActivityTest {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
mMobileSettingsActivity = spy(new MobileSettingsActivity());
mMobileNetworkActivity = spy(new MobileNetworkActivity());
mSubscriptionInfos = new ArrayList<>();
mShowFragment = new Fragment();
mHideFragment = new Fragment();
mMobileSettingsActivity.mSubscriptionInfos = mSubscriptionInfos;
mMobileSettingsActivity.mSubscriptionManager = mSubscriptionManager;
mMobileNetworkActivity.mSubscriptionInfos = mSubscriptionInfos;
mMobileNetworkActivity.mSubscriptionManager = mSubscriptionManager;
when(mSubscriptionInfo.getSubscriptionId()).thenReturn(PREV_SUB_ID);
when(mSubscriptionInfo2.getSubscriptionId()).thenReturn(CURRENT_SUB_ID);
doReturn(mSubscriptionManager).when(mMobileSettingsActivity).getSystemService(
doReturn(mSubscriptionManager).when(mMobileNetworkActivity).getSystemService(
SubscriptionManager.class);
doReturn(mBottomNavigationView).when(mMobileSettingsActivity).findViewById(R.id.bottom_nav);
doReturn(mFragmentManager).when(mMobileSettingsActivity).getSupportFragmentManager();
doReturn(mBottomNavigationView).when(mMobileNetworkActivity).findViewById(R.id.bottom_nav);
doReturn(mFragmentManager).when(mMobileNetworkActivity).getSupportFragmentManager();
doReturn(mFragmentTransaction).when(mFragmentManager).beginTransaction();
doReturn(mHideFragment).when(mFragmentManager).findFragmentByTag(
MOBILE_SETTINGS_TAG + PREV_SUB_ID);
@@ -110,7 +110,7 @@ public class MobileSettingsActivityTest {
mSubscriptionInfos.add(mSubscriptionInfo);
doReturn(mSubscriptionInfos).when(mSubscriptionManager).getActiveSubscriptionInfoList();
mMobileSettingsActivity.updateBottomNavigationView();
mMobileNetworkActivity.updateBottomNavigationView();
verify(mBottomNavigationView).setVisibility(View.GONE);
}
@@ -123,16 +123,16 @@ public class MobileSettingsActivityTest {
doReturn(mSubscriptionInfos).when(mSubscriptionManager).getActiveSubscriptionInfoList();
doReturn(menu).when(mBottomNavigationView).getMenu();
mMobileSettingsActivity.updateBottomNavigationView();
mMobileNetworkActivity.updateBottomNavigationView();
assertThat(menu.size()).isEqualTo(2);
}
@Test
public void switchFragment_newFragment_replaceIt() {
mMobileSettingsActivity.mCurSubscriptionId = PREV_SUB_ID;
mMobileNetworkActivity.mCurSubscriptionId = PREV_SUB_ID;
mMobileSettingsActivity.switchFragment(mShowFragment, CURRENT_SUB_ID);
mMobileNetworkActivity.switchFragment(mShowFragment, CURRENT_SUB_ID);
verify(mFragmentTransaction).replace(R.id.main_content, mShowFragment,
MOBILE_SETTINGS_TAG + CURRENT_SUB_ID);
@@ -142,29 +142,29 @@ public class MobileSettingsActivityTest {
public void getSubscriptionId_hasIntent_getIdFromIntent() {
final Intent intent = new Intent();
intent.putExtra(Settings.EXTRA_SUB_ID, CURRENT_SUB_ID);
doReturn(intent).when(mMobileSettingsActivity).getIntent();
doReturn(intent).when(mMobileNetworkActivity).getIntent();
doReturn(true).when(mSubscriptionManager).isActiveSubscriptionId(CURRENT_SUB_ID);
assertThat(mMobileSettingsActivity.getSubscriptionId()).isEqualTo(CURRENT_SUB_ID);
assertThat(mMobileNetworkActivity.getSubscriptionId()).isEqualTo(CURRENT_SUB_ID);
}
@Test
public void getSubscriptionId_noIntent_firstIdInList() {
doReturn(null).when(mMobileSettingsActivity).getIntent();
doReturn(null).when(mMobileNetworkActivity).getIntent();
mSubscriptionInfos.add(mSubscriptionInfo);
mSubscriptionInfos.add(mSubscriptionInfo2);
assertThat(mMobileSettingsActivity.getSubscriptionId()).isEqualTo(PREV_SUB_ID);
assertThat(mMobileNetworkActivity.getSubscriptionId()).isEqualTo(PREV_SUB_ID);
}
@Test
public void onSaveInstanceState_saveCurrentSubId() {
mMobileSettingsActivity = Robolectric.buildActivity(
MobileSettingsActivity.class).get();
mMobileSettingsActivity.mCurSubscriptionId = PREV_SUB_ID;
mMobileNetworkActivity = Robolectric.buildActivity(
MobileNetworkActivity.class).get();
mMobileNetworkActivity.mCurSubscriptionId = PREV_SUB_ID;
final Bundle bundle = new Bundle();
mMobileSettingsActivity.saveInstanceState(bundle);
mMobileNetworkActivity.saveInstanceState(bundle);
assertThat(bundle.getInt(Settings.EXTRA_SUB_ID)).isEqualTo(
PREV_SUB_ID);

View File

@@ -19,14 +19,16 @@ package com.android.settings.network.telephony;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.telecom.PhoneAccountHandle;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceScreen;
import com.android.ims.ImsConfig;
import com.android.ims.ImsManager;
@@ -47,9 +49,12 @@ public class WifiCallingPreferenceControllerTest {
private TelephonyManager mTelephonyManager;
@Mock
private ImsManager mImsManager;
@Mock
private PreferenceScreen mPreferenceScreen;
private WifiCallingPreferenceController mController;
private Preference mPreference;
private PreferenceCategory mPreferenceCategory;
private Context mContext;
@Before
@@ -57,22 +62,29 @@ public class WifiCallingPreferenceControllerTest {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
doReturn(mTelephonyManager).when(mContext).getSystemService(Context.TELEPHONY_SERVICE);
doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID);
when(mContext.getSystemService(Context.TELEPHONY_SERVICE)).thenReturn(mTelephonyManager);
when(mContext.getSystemService(TelephonyManager.class)).thenReturn(mTelephonyManager);
when(mTelephonyManager.createForSubscriptionId(SUB_ID)).thenReturn(mTelephonyManager);
mPreference = new Preference(mContext);
mController = new WifiCallingPreferenceController(mContext, "wifi_calling");
mController.init(SUB_ID);
mController.mImsManager = mImsManager;
mPreference.setKey(mController.getPreferenceKey());
mPreferenceCategory = new PreferenceCategory(mContext);
when(mPreferenceScreen.findPreference(
WifiCallingPreferenceController.KEY_PREFERENCE_CATEGORY)).thenReturn(
mPreferenceCategory);
}
@Test
public void updateState_noSimCallManager_setCorrectSummary() {
mController.mSimCallManager = null;
doReturn(true).when(mImsManager).isWfcEnabledByUser();
doReturn(ImsConfig.WfcModeFeatureValueConstants.WIFI_ONLY).when(mImsManager).getWfcMode(
anyBoolean());
when(mImsManager.isWfcEnabledByUser()).thenReturn(true);
when(mImsManager.getWfcMode(anyBoolean())).thenReturn(
ImsConfig.WfcModeFeatureValueConstants.WIFI_ONLY);
mController.updateState(mPreference);
@@ -82,11 +94,21 @@ public class WifiCallingPreferenceControllerTest {
@Test
public void updateState_notCallIdle_disable() {
doReturn(TelephonyManager.CALL_STATE_RINGING).when(mTelephonyManager).getCallState(SUB_ID);
when(mTelephonyManager.getCallState(SUB_ID)).thenReturn(
TelephonyManager.CALL_STATE_RINGING);
mController.updateState(mPreference);
assertThat(mPreference.isEnabled()).isFalse();
}
@Test
public void displayPreference_notAvailable_setCategoryInvisible() {
mController.init(SubscriptionManager.INVALID_SUBSCRIPTION_ID);
mController.displayPreference(mPreferenceScreen);
assertThat(mPreferenceCategory.isVisible()).isFalse();
}
}