Rename a bunch of mobile network files

1. Make them have "MobileNetwork" prefix
2. Also update WifiCallingPreference to remove its category
if it is invisible

Bug: 114749736
Test: RunSettingsRoboTests
Change-Id: I25871d579d6495e902e5583030889942ed2506a8
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 1ffdba1..8cad8a4 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -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">
diff --git a/res/layout/mobile_settings_container.xml b/res/layout/mobile_network_settings_container.xml
similarity index 100%
rename from res/layout/mobile_settings_container.xml
rename to res/layout/mobile_network_settings_container.xml
diff --git a/res/xml/network_setting_fragment.xml b/res/xml/mobile_network_settings.xml
similarity index 99%
rename from res/xml/network_setting_fragment.xml
rename to res/xml/mobile_network_settings.xml
index 459a269..0478664 100644
--- a/res/xml/network_setting_fragment.xml
+++ b/res/xml/mobile_network_settings.xml
@@ -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
diff --git a/src/com/android/settings/network/MobileNetworkPreferenceController.java b/src/com/android/settings/network/MobileNetworkPreferenceController.java
index bf5ca00..3813435 100644
--- a/src/com/android/settings/network/MobileNetworkPreferenceController.java
+++ b/src/com/android/settings/network/MobileNetworkPreferenceController.java
@@ -36,7 +36,7 @@
 
 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 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);
diff --git a/src/com/android/settings/network/telephony/MobileSettingsActivity.java b/src/com/android/settings/network/telephony/MobileNetworkActivity.java
similarity index 95%
rename from src/com/android/settings/network/telephony/MobileSettingsActivity.java
rename to src/com/android/settings/network/telephony/MobileNetworkActivity.java
index b2bceb9..9f3dfb2 100644
--- a/src/com/android/settings/network/telephony/MobileSettingsActivity.java
+++ b/src/com/android/settings/network/telephony/MobileNetworkActivity.java
@@ -48,7 +48,7 @@
 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 @@
     @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 @@
         updateBottomNavigationView();
 
         if (savedInstanceState == null) {
-            switchFragment(new MobileNetworkFragment(), getSubscriptionId());
+            switchFragment(new MobileNetworkSettings(), getSubscriptionId());
         }
     }
 
@@ -172,7 +173,7 @@
                         .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 @@
             // 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 */);
             }
         }
diff --git a/src/com/android/settings/network/telephony/MobileNetworkFragment.java b/src/com/android/settings/network/telephony/MobileNetworkSettings.java
similarity index 97%
rename from src/com/android/settings/network/telephony/MobileNetworkFragment.java
rename to src/com/android/settings/network/telephony/MobileNetworkSettings.java
index e6db51c..ebc38e4 100644
--- a/src/com/android/settings/network/telephony/MobileNetworkFragment.java
+++ b/src/com/android/settings/network/telephony/MobileNetworkSettings.java
@@ -49,7 +49,7 @@
 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 @@
     private UserManager mUserManager;
     private String mClickedPrefKey;
 
-    public MobileNetworkFragment() {
+    public MobileNetworkSettings() {
         super(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS);
     }
 
@@ -107,6 +107,7 @@
     @Override
     public void onAttach(Context context) {
         super.onAttach(context);
+
         mSubId = getArguments().getInt(Settings.EXTRA_SUB_ID,
                 SubscriptionManager.INVALID_SUBSCRIPTION_ID);
 
@@ -162,7 +163,7 @@
 
     @Override
     protected int getPreferenceScreenResId() {
-        return R.xml.network_setting_fragment;
+        return R.xml.mobile_network_settings;
     }
 
     @Override
@@ -209,7 +210,7 @@
                     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;
                 }
diff --git a/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java b/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java
index 09bf2d7..48fb710 100644
--- a/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java
+++ b/src/com/android/settings/network/telephony/WifiCallingPreferenceController.java
@@ -46,6 +46,9 @@
 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 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
diff --git a/src/com/android/settings/network/telephony/gsm/AutoSelectPreferenceController.java b/src/com/android/settings/network/telephony/gsm/AutoSelectPreferenceController.java
index d5c704a..6899054 100644
--- a/src/com/android/settings/network/telephony/gsm/AutoSelectPreferenceController.java
+++ b/src/com/android/settings/network/telephony/gsm/AutoSelectPreferenceController.java
@@ -31,7 +31,7 @@
 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;
diff --git a/src/com/android/settings/network/telephony/gsm/OpenNetworkSelectPagePreferenceController.java b/src/com/android/settings/network/telephony/gsm/OpenNetworkSelectPagePreferenceController.java
index df5e151..23de056 100644
--- a/src/com/android/settings/network/telephony/gsm/OpenNetworkSelectPagePreferenceController.java
+++ b/src/com/android/settings/network/telephony/gsm/OpenNetworkSelectPagePreferenceController.java
@@ -32,7 +32,7 @@
 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;
 
 /**
diff --git a/tests/robotests/src/com/android/settings/network/telephony/MobileSettingsActivityTest.java b/tests/robotests/src/com/android/settings/network/telephony/MobileNetworkActivityTest.java
similarity index 76%
rename from tests/robotests/src/com/android/settings/network/telephony/MobileSettingsActivityTest.java
rename to tests/robotests/src/com/android/settings/network/telephony/MobileNetworkActivityTest.java
index ea184fd..68634a8 100644
--- a/tests/robotests/src/com/android/settings/network/telephony/MobileSettingsActivityTest.java
+++ b/tests/robotests/src/com/android/settings/network/telephony/MobileNetworkActivityTest.java
@@ -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.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 @@
         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 @@
         mSubscriptionInfos.add(mSubscriptionInfo);
         doReturn(mSubscriptionInfos).when(mSubscriptionManager).getActiveSubscriptionInfoList();
 
-        mMobileSettingsActivity.updateBottomNavigationView();
+        mMobileNetworkActivity.updateBottomNavigationView();
 
         verify(mBottomNavigationView).setVisibility(View.GONE);
     }
@@ -123,16 +123,16 @@
         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 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);
diff --git a/tests/robotests/src/com/android/settings/network/telephony/WifiCallingPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/network/telephony/WifiCallingPreferenceControllerTest.java
index 35297bd..a209b00 100644
--- a/tests/robotests/src/com/android/settings/network/telephony/WifiCallingPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/network/telephony/WifiCallingPreferenceControllerTest.java
@@ -19,14 +19,16 @@
 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 @@
     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 @@
         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 @@
 
     @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();
+    }
+
 }