Loading src/java/com/android/internal/telephony/SubscriptionController.java +11 −8 Original line number Diff line number Diff line Loading @@ -1540,14 +1540,13 @@ public class SubscriptionController extends ISub.Stub { * @return int representing the priority. Higher value means higher priority. */ public static int getNameSourcePriority(@SimDisplayNameSource int nameSource) { int index = Arrays.binarySearch( new int[] { int index = Arrays.asList( SubscriptionManager.NAME_SOURCE_DEFAULT_SOURCE, SubscriptionManager.NAME_SOURCE_SIM_PNN, SubscriptionManager.NAME_SOURCE_SIM_SPN, SubscriptionManager.NAME_SOURCE_CARRIER, SubscriptionManager.NAME_SOURCE_USER_INPUT // user has highest priority. }, nameSource); ).indexOf(nameSource); return (index < 0) ? 0 : index; } Loading Loading @@ -1580,6 +1579,10 @@ public class SubscriptionController extends ISub.Stub { && (getNameSourcePriority(subInfo.getNameSource()) > getNameSourcePriority(nameSource) || (displayName != null && displayName.equals(subInfo.getDisplayName())))) { logd("Name source " + subInfo.getNameSource() + "'s priority " + getNameSourcePriority(subInfo.getNameSource()) + " is greater than " + "name source " + nameSource + "'s priority " + getNameSourcePriority(nameSource) + ", return now."); return 0; } } Loading tests/telephonytests/src/com/android/internal/telephony/SubscriptionControllerTest.java +24 −0 Original line number Diff line number Diff line Loading @@ -1080,4 +1080,28 @@ public class SubscriptionControllerTest extends TelephonyTest { mSubscriptionControllerUT.setAlwaysAllowMmsData(0, false); verify(mDataEnabledSettings).setAlwaysAllowMmsData(eq(false)); } @Test @SmallTest public void testNameSourcePriority() throws Exception { assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_USER_INPUT) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_CARRIER)); assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_CARRIER) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_SPN)); assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_SPN) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_PNN)); assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_PNN) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_DEFAULT_SOURCE)); } } Loading
src/java/com/android/internal/telephony/SubscriptionController.java +11 −8 Original line number Diff line number Diff line Loading @@ -1540,14 +1540,13 @@ public class SubscriptionController extends ISub.Stub { * @return int representing the priority. Higher value means higher priority. */ public static int getNameSourcePriority(@SimDisplayNameSource int nameSource) { int index = Arrays.binarySearch( new int[] { int index = Arrays.asList( SubscriptionManager.NAME_SOURCE_DEFAULT_SOURCE, SubscriptionManager.NAME_SOURCE_SIM_PNN, SubscriptionManager.NAME_SOURCE_SIM_SPN, SubscriptionManager.NAME_SOURCE_CARRIER, SubscriptionManager.NAME_SOURCE_USER_INPUT // user has highest priority. }, nameSource); ).indexOf(nameSource); return (index < 0) ? 0 : index; } Loading Loading @@ -1580,6 +1579,10 @@ public class SubscriptionController extends ISub.Stub { && (getNameSourcePriority(subInfo.getNameSource()) > getNameSourcePriority(nameSource) || (displayName != null && displayName.equals(subInfo.getDisplayName())))) { logd("Name source " + subInfo.getNameSource() + "'s priority " + getNameSourcePriority(subInfo.getNameSource()) + " is greater than " + "name source " + nameSource + "'s priority " + getNameSourcePriority(nameSource) + ", return now."); return 0; } } Loading
tests/telephonytests/src/com/android/internal/telephony/SubscriptionControllerTest.java +24 −0 Original line number Diff line number Diff line Loading @@ -1080,4 +1080,28 @@ public class SubscriptionControllerTest extends TelephonyTest { mSubscriptionControllerUT.setAlwaysAllowMmsData(0, false); verify(mDataEnabledSettings).setAlwaysAllowMmsData(eq(false)); } @Test @SmallTest public void testNameSourcePriority() throws Exception { assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_USER_INPUT) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_CARRIER)); assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_CARRIER) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_SPN)); assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_SPN) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_PNN)); assertTrue(mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_SIM_PNN) > mSubscriptionControllerUT.getNameSourcePriority( SubscriptionManager.NAME_SOURCE_DEFAULT_SOURCE)); } }