Replace isSubscriptionEnabled with isActiveSubId.

As we don't allow pSIM modem disablment, we should simply use isActiveSubId
to decide whether a subscription's preferences is changable. This will
avoid potential modem bugs that reports wrong modem status that result
in Setting's UX error.

Bug: 135222940
Test: manual and robo
Change-Id: I7cccf2fdab7c89d26dac4daad51cd5d6f3a90eba
diff --git a/src/com/android/settings/network/telephony/DisabledSubscriptionController.java b/src/com/android/settings/network/telephony/DisabledSubscriptionController.java
index 22cbb13..cd51735 100644
--- a/src/com/android/settings/network/telephony/DisabledSubscriptionController.java
+++ b/src/com/android/settings/network/telephony/DisabledSubscriptionController.java
@@ -72,7 +72,8 @@
         if (mCategory == null || mSubId ==  SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
             return;
         }
-        mCategory.setVisible(mSubscriptionManager.isSubscriptionEnabled(mSubId));
+        // TODO b/135222940: re-evaluate whether to use mSubscriptionManager#isSubscriptionEnabled
+        mCategory.setVisible(mSubscriptionManager.isActiveSubId(mSubId));
     }
 
     @Override
diff --git a/src/com/android/settings/network/telephony/MobileNetworkSwitchController.java b/src/com/android/settings/network/telephony/MobileNetworkSwitchController.java
index e6422f0..02396dd 100644
--- a/src/com/android/settings/network/telephony/MobileNetworkSwitchController.java
+++ b/src/com/android/settings/network/telephony/MobileNetworkSwitchController.java
@@ -81,7 +81,9 @@
                 R.string.mobile_network_use_sim_off);
 
         mSwitchBar.addOnSwitchChangeListener((switchView, isChecked) -> {
-            if (mSubscriptionManager.isSubscriptionEnabled(mSubId) != isChecked
+            // TODO b/135222940: re-evaluate whether to use
+            // mSubscriptionManager#isSubscriptionEnabled
+            if (mSubscriptionManager.isActiveSubId(mSubId) != isChecked
                     && (!mSubscriptionManager.setSubscriptionEnabled(mSubId, isChecked))) {
                 mSwitchBar.setChecked(!isChecked);
             }
@@ -108,7 +110,9 @@
             mSwitchBar.hide();
         } else {
             mSwitchBar.show();
-            mSwitchBar.setChecked(mSubscriptionManager.isSubscriptionEnabled(mSubId));
+            // TODO b/135222940: re-evaluate whether to use
+            // mSubscriptionManager#isSubscriptionEnabled
+            mSwitchBar.setChecked(mSubscriptionManager.isActiveSubId(mSubId));
         }
     }
 
diff --git a/tests/robotests/src/com/android/settings/network/telephony/DisabledSubscriptionControllerTest.java b/tests/robotests/src/com/android/settings/network/telephony/DisabledSubscriptionControllerTest.java
index c1004fa..f25ffa4 100644
--- a/tests/robotests/src/com/android/settings/network/telephony/DisabledSubscriptionControllerTest.java
+++ b/tests/robotests/src/com/android/settings/network/telephony/DisabledSubscriptionControllerTest.java
@@ -69,32 +69,32 @@
 
     @Test
     public void displayPreference_subscriptionEnabled_categoryIsVisible() {
-        doReturn(true).when(mSubscriptionManager).isSubscriptionEnabled(SUB_ID);
+        doReturn(true).when(mSubscriptionManager).isActiveSubId(SUB_ID);
         mController.displayPreference(mScreen);
         assertThat(mCategory.isVisible()).isTrue();
     }
 
     @Test
     public void displayPreference_subscriptionDisabled_categoryIsNotVisible() {
-        doReturn(false).when(mSubscriptionManager).isSubscriptionEnabled(SUB_ID);
+        doReturn(false).when(mSubscriptionManager).isActiveSubId(SUB_ID);
         mController.displayPreference(mScreen);
         assertThat(mCategory.isVisible()).isFalse();
     }
 
     @Test
     public void onSubscriptionsChanged_subscriptionBecomesDisabled_categoryIsNotVisible() {
-        doReturn(true).when(mSubscriptionManager).isSubscriptionEnabled(SUB_ID);
+        doReturn(true).when(mSubscriptionManager).isActiveSubId(SUB_ID);
         mController.displayPreference(mScreen);
-        doReturn(false).when(mSubscriptionManager).isSubscriptionEnabled(SUB_ID);
+        doReturn(false).when(mSubscriptionManager).isActiveSubId(SUB_ID);
         mController.onSubscriptionsChanged();
         assertThat(mCategory.isVisible()).isFalse();
     }
 
     @Test
     public void onSubscriptionsChanged_subscriptionBecomesEnabled_categoryIsVisible() {
-        doReturn(false).when(mSubscriptionManager).isSubscriptionEnabled(SUB_ID);
+        doReturn(false).when(mSubscriptionManager).isActiveSubId(SUB_ID);
         mController.displayPreference(mScreen);
-        doReturn(true).when(mSubscriptionManager).isSubscriptionEnabled(SUB_ID);
+        doReturn(true).when(mSubscriptionManager).isActiveSubId(SUB_ID);
         mController.onSubscriptionsChanged();
         assertThat(mCategory.isVisible()).isTrue();
     }
diff --git a/tests/robotests/src/com/android/settings/network/telephony/MobileNetworkSwitchControllerTest.java b/tests/robotests/src/com/android/settings/network/telephony/MobileNetworkSwitchControllerTest.java
index 86c380e..ccf345f 100644
--- a/tests/robotests/src/com/android/settings/network/telephony/MobileNetworkSwitchControllerTest.java
+++ b/tests/robotests/src/com/android/settings/network/telephony/MobileNetworkSwitchControllerTest.java
@@ -109,7 +109,7 @@
 
     @Test
     public void displayPreference_oneEnabledSubscription_switchBarNotHidden() {
-        doReturn(true).when(mSubscriptionManager).isSubscriptionEnabled(mSubId);
+        doReturn(true).when(mSubscriptionManager).isActiveSubId(mSubId);
         SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(mSubscription));
         mController.displayPreference(mScreen);
         assertThat(mSwitchBar.isShowing()).isTrue();
@@ -117,7 +117,7 @@
 
     @Test
     public void displayPreference_oneDisabledSubscription_switchBarNotHidden() {
-        doReturn(false).when(mSubscriptionManager).isSubscriptionEnabled(mSubId);
+        doReturn(false).when(mSubscriptionManager).isActiveSubId(mSubId);
         SubscriptionUtil.setAvailableSubscriptionsForTesting(Arrays.asList(mSubscription));
         mController.displayPreference(mScreen);
         assertThat(mSwitchBar.isShowing()).isTrue();
@@ -125,7 +125,7 @@
 
     @Test
     public void displayPreference_subscriptionEnabled_switchIsOn() {
-        when(mSubscriptionManager.isSubscriptionEnabled(mSubId)).thenReturn(true);
+        when(mSubscriptionManager.isActiveSubId(mSubId)).thenReturn(true);
         mController.displayPreference(mScreen);
         assertThat(mSwitchBar.isShowing()).isTrue();
         assertThat(mSwitchBar.isChecked()).isTrue();
@@ -133,7 +133,7 @@
 
     @Test
     public void displayPreference_subscriptionDisabled_switchIsOff() {
-        when(mSubscriptionManager.isSubscriptionEnabled(mSubId)).thenReturn(false);
+        when(mSubscriptionManager.isActiveSubId(mSubId)).thenReturn(false);
         mController.displayPreference(mScreen);
         assertThat(mSwitchBar.isShowing()).isTrue();
         assertThat(mSwitchBar.isChecked()).isFalse();
@@ -141,7 +141,7 @@
 
     @Test
     public void switchChangeListener_fromEnabledToDisabled_setSubscriptionEnabledCalledCorrectly() {
-        when(mSubscriptionManager.isSubscriptionEnabled(mSubId)).thenReturn(true);
+        when(mSubscriptionManager.isActiveSubId(mSubId)).thenReturn(true);
         mController.displayPreference(mScreen);
         assertThat(mSwitchBar.isShowing()).isTrue();
         assertThat(mSwitchBar.isChecked()).isTrue();
@@ -153,7 +153,7 @@
     public void switchChangeListener_fromEnabledToDisabled_setSubscriptionEnabledFailed() {
         when(mSubscriptionManager.setSubscriptionEnabled(eq(mSubId), anyBoolean()))
                 .thenReturn(false);
-        when(mSubscriptionManager.isSubscriptionEnabled(mSubId)).thenReturn(true);
+        when(mSubscriptionManager.isActiveSubId(mSubId)).thenReturn(true);
         mController.displayPreference(mScreen);
         assertThat(mSwitchBar.isShowing()).isTrue();
         assertThat(mSwitchBar.isChecked()).isTrue();
@@ -164,7 +164,7 @@
 
     @Test
     public void switchChangeListener_fromDisabledToEnabled_setSubscriptionEnabledCalledCorrectly() {
-        when(mSubscriptionManager.isSubscriptionEnabled(mSubId)).thenReturn(false);
+        when(mSubscriptionManager.isActiveSubId(mSubId)).thenReturn(false);
         mController.displayPreference(mScreen);
         assertThat(mSwitchBar.isShowing()).isTrue();
         assertThat(mSwitchBar.isChecked()).isFalse();