Loading packages/SystemUI/src/com/android/systemui/shade/carrier/ShadeCarrierGroupController.java +12 −5 Original line number Diff line number Diff line Loading @@ -198,6 +198,11 @@ public class ShadeCarrierGroupController { return mSlotIndexResolver.getSlotIndex(subscriptionId); } @VisibleForTesting protected int getShadeCarrierVisibility(int index) { return mCarrierGroups[index].getVisibility(); } /** * Sets a {@link OnSingleCarrierChangedListener}. * Loading Loading @@ -307,12 +312,14 @@ public class ShadeCarrierGroupController { + info.subscriptionIds[i]); continue; } String carrierText = info.listOfCarriers[i].toString().trim(); if (!TextUtils.isEmpty(carrierText)) { mInfos[slot] = mInfos[slot].changeVisibility(true); slotSeen[slot] = true; mCarrierGroups[slot].setCarrierText( info.listOfCarriers[i].toString().trim()); mCarrierGroups[slot].setCarrierText(carrierText); mCarrierGroups[slot].setVisibility(View.VISIBLE); } } for (int i = 0; i < SIM_SLOTS; i++) { if (!slotSeen[i]) { mInfos[i] = mInfos[i].changeVisibility(false); Loading packages/SystemUI/tests/src/com/android/systemui/shade/carrier/ShadeCarrierGroupControllerTest.java +49 −30 Original line number Diff line number Diff line Loading @@ -66,6 +66,11 @@ import org.mockito.MockitoAnnotations; @SmallTest public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { private static final String SINGLE_CARRIER_TEXT = "singleCarrierText"; private static final String MULTI_CARRIER_TEXT = "multiCarrierText"; private static final String FIRST_CARRIER_NAME = "carrier1"; private static final String SECOND_CARRIER_NAME = "carrier2"; private ShadeCarrierGroupController mShadeCarrierGroupController; private SignalCallback mSignalCallback; private CarrierTextManager.CarrierTextCallback mCallback; Loading Loading @@ -148,8 +153,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 1, anySims false CarrierTextManager.CarrierTextCallbackInfo c1 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, false, new int[]{0}); mCallback.updateCarrierInfo(c1); Loading @@ -157,8 +162,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 1, anySims true CarrierTextManager.CarrierTextCallbackInfo c2 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0}); mCallback.updateCarrierInfo(c2); Loading @@ -166,8 +171,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 2, anySims false CarrierTextManager.CarrierTextCallbackInfo c3 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, false, new int[]{0, 1}); mCallback.updateCarrierInfo(c3); Loading @@ -175,8 +180,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 2, anySims true CarrierTextManager.CarrierTextCallbackInfo c4 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}); mCallback.updateCarrierInfo(c4); Loading @@ -189,8 +194,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 1, anySims false CarrierTextManager.CarrierTextCallbackInfo c1 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, false, new int[]{0}); mCallback.updateCarrierInfo(c1); Loading @@ -198,8 +203,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 1, anySims true CarrierTextManager.CarrierTextCallbackInfo c2 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0}); mCallback.updateCarrierInfo(c2); Loading @@ -207,8 +212,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 2, anySims false CarrierTextManager.CarrierTextCallbackInfo c3 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, false, new int[]{0, 1}); mCallback.updateCarrierInfo(c3); Loading @@ -216,8 +221,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 2, anySims true CarrierTextManager.CarrierTextCallbackInfo c4 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0, 1}); mCallback.updateCarrierInfo(c4); Loading @@ -230,8 +235,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { CarrierTextManager.CarrierTextCallbackInfo c4 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}); mCallback.updateCarrierInfo(c4); Loading Loading @@ -263,6 +268,20 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { assertEquals(View.GONE, mShadeCarrierGroup.getNoSimTextView().getVisibility()); } @Test public void testVisibleView_airplaneMode_WFCOn() { CarrierTextManager.CarrierTextCallbackInfo info = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{FIRST_CARRIER_NAME, ""}, true, new int[]{0, 1}, false /* airplaneMode */); mCallback.updateCarrierInfo(info); mTestableLooper.processAllMessages(); assertEquals(View.VISIBLE, mShadeCarrierGroupController.getShadeCarrierVisibility(0)); } @Test public void testListenerNotCalledOnRegistreation() { mShadeCarrierGroupController Loading @@ -276,8 +295,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // Only one element in the info CarrierTextManager.CarrierTextCallbackInfo info = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{SINGLE_CARRIER_TEXT}, true, new int[]{0}, false /* airplaneMode */); Loading @@ -295,8 +314,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // More than one element in the info CarrierTextManager.CarrierTextCallbackInfo info = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}, false /* airplaneMode */); Loading @@ -313,16 +332,16 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { public void testSingleMultiCarrierSwitch() { CarrierTextManager.CarrierTextCallbackInfo singleCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0}, false /* airplaneMode */); CarrierTextManager.CarrierTextCallbackInfo multiCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}, false /* airplaneMode */); Loading @@ -347,8 +366,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { public void testNoCallbackIfSingleCarrierDoesntChange() { CarrierTextManager.CarrierTextCallbackInfo singleCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0}, false /* airplaneMode */); Loading @@ -369,8 +388,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { public void testNoCallbackIfMultiCarrierDoesntChange() { CarrierTextManager.CarrierTextCallbackInfo multiCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}, false /* airplaneMode */); Loading Loading
packages/SystemUI/src/com/android/systemui/shade/carrier/ShadeCarrierGroupController.java +12 −5 Original line number Diff line number Diff line Loading @@ -198,6 +198,11 @@ public class ShadeCarrierGroupController { return mSlotIndexResolver.getSlotIndex(subscriptionId); } @VisibleForTesting protected int getShadeCarrierVisibility(int index) { return mCarrierGroups[index].getVisibility(); } /** * Sets a {@link OnSingleCarrierChangedListener}. * Loading Loading @@ -307,12 +312,14 @@ public class ShadeCarrierGroupController { + info.subscriptionIds[i]); continue; } String carrierText = info.listOfCarriers[i].toString().trim(); if (!TextUtils.isEmpty(carrierText)) { mInfos[slot] = mInfos[slot].changeVisibility(true); slotSeen[slot] = true; mCarrierGroups[slot].setCarrierText( info.listOfCarriers[i].toString().trim()); mCarrierGroups[slot].setCarrierText(carrierText); mCarrierGroups[slot].setVisibility(View.VISIBLE); } } for (int i = 0; i < SIM_SLOTS; i++) { if (!slotSeen[i]) { mInfos[i] = mInfos[i].changeVisibility(false); Loading
packages/SystemUI/tests/src/com/android/systemui/shade/carrier/ShadeCarrierGroupControllerTest.java +49 −30 Original line number Diff line number Diff line Loading @@ -66,6 +66,11 @@ import org.mockito.MockitoAnnotations; @SmallTest public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { private static final String SINGLE_CARRIER_TEXT = "singleCarrierText"; private static final String MULTI_CARRIER_TEXT = "multiCarrierText"; private static final String FIRST_CARRIER_NAME = "carrier1"; private static final String SECOND_CARRIER_NAME = "carrier2"; private ShadeCarrierGroupController mShadeCarrierGroupController; private SignalCallback mSignalCallback; private CarrierTextManager.CarrierTextCallback mCallback; Loading Loading @@ -148,8 +153,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 1, anySims false CarrierTextManager.CarrierTextCallbackInfo c1 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, false, new int[]{0}); mCallback.updateCarrierInfo(c1); Loading @@ -157,8 +162,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 1, anySims true CarrierTextManager.CarrierTextCallbackInfo c2 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0}); mCallback.updateCarrierInfo(c2); Loading @@ -166,8 +171,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 2, anySims false CarrierTextManager.CarrierTextCallbackInfo c3 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, false, new int[]{0, 1}); mCallback.updateCarrierInfo(c3); Loading @@ -175,8 +180,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 2, anySims true CarrierTextManager.CarrierTextCallbackInfo c4 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}); mCallback.updateCarrierInfo(c4); Loading @@ -189,8 +194,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 1, anySims false CarrierTextManager.CarrierTextCallbackInfo c1 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, false, new int[]{0}); mCallback.updateCarrierInfo(c1); Loading @@ -198,8 +203,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 2, subscriptionIds length 1, anySims true CarrierTextManager.CarrierTextCallbackInfo c2 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0}); mCallback.updateCarrierInfo(c2); Loading @@ -207,8 +212,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 2, anySims false CarrierTextManager.CarrierTextCallbackInfo c3 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, false, new int[]{0, 1}); mCallback.updateCarrierInfo(c3); Loading @@ -216,8 +221,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // listOfCarriers length 1, subscriptionIds length 2, anySims true CarrierTextManager.CarrierTextCallbackInfo c4 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0, 1}); mCallback.updateCarrierInfo(c4); Loading @@ -230,8 +235,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { CarrierTextManager.CarrierTextCallbackInfo c4 = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}); mCallback.updateCarrierInfo(c4); Loading Loading @@ -263,6 +268,20 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { assertEquals(View.GONE, mShadeCarrierGroup.getNoSimTextView().getVisibility()); } @Test public void testVisibleView_airplaneMode_WFCOn() { CarrierTextManager.CarrierTextCallbackInfo info = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{FIRST_CARRIER_NAME, ""}, true, new int[]{0, 1}, false /* airplaneMode */); mCallback.updateCarrierInfo(info); mTestableLooper.processAllMessages(); assertEquals(View.VISIBLE, mShadeCarrierGroupController.getShadeCarrierVisibility(0)); } @Test public void testListenerNotCalledOnRegistreation() { mShadeCarrierGroupController Loading @@ -276,8 +295,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // Only one element in the info CarrierTextManager.CarrierTextCallbackInfo info = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{SINGLE_CARRIER_TEXT}, true, new int[]{0}, false /* airplaneMode */); Loading @@ -295,8 +314,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { // More than one element in the info CarrierTextManager.CarrierTextCallbackInfo info = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}, false /* airplaneMode */); Loading @@ -313,16 +332,16 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { public void testSingleMultiCarrierSwitch() { CarrierTextManager.CarrierTextCallbackInfo singleCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0}, false /* airplaneMode */); CarrierTextManager.CarrierTextCallbackInfo multiCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}, false /* airplaneMode */); Loading @@ -347,8 +366,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { public void testNoCallbackIfSingleCarrierDoesntChange() { CarrierTextManager.CarrierTextCallbackInfo singleCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{""}, SINGLE_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME}, true, new int[]{0}, false /* airplaneMode */); Loading @@ -369,8 +388,8 @@ public class ShadeCarrierGroupControllerTest extends LeakCheckedTest { public void testNoCallbackIfMultiCarrierDoesntChange() { CarrierTextManager.CarrierTextCallbackInfo multiCarrierInfo = new CarrierTextManager.CarrierTextCallbackInfo( "", new CharSequence[]{"", ""}, MULTI_CARRIER_TEXT, new CharSequence[]{FIRST_CARRIER_NAME, SECOND_CARRIER_NAME}, true, new int[]{0, 1}, false /* airplaneMode */); Loading