[Settings] fix failure test case - ConditionContextualCardController

Setup parameters required by CellularDataConditionController

Bug: 148834975
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=ConditionContextualCardControllerTest
Change-Id: I8e0c7435cf18cfdafa39f58697b6d29db34b1867
Merged-In: I974df385d956dbff10aac874487d07d626992e4b
This commit is contained in:
Bonian Chen
2020-02-04 18:03:10 +08:00
parent 1668f18a16
commit ac55b2ca49

View File

@@ -23,8 +23,11 @@ import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
import android.content.Context;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import com.android.settings.homepage.contextualcards.ContextualCard;
import com.android.settings.homepage.contextualcards.ContextualCard.CardType;
@@ -37,6 +40,8 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.shadows.ShadowSubscriptionManager;
import org.robolectric.shadows.ShadowTelephonyManager;
import org.robolectric.util.ReflectionHelpers;
import java.util.ArrayList;
@@ -45,6 +50,7 @@ import java.util.Map;
@RunWith(RobolectricTestRunner.class)
public class ConditionContextualCardControllerTest {
private static final int SUB_ID = 2;
@Mock
private ConditionManager mConditionManager;
@@ -57,6 +63,17 @@ public class ConditionContextualCardControllerTest {
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
// parameters required by CellularDataConditionController
final ShadowSubscriptionManager shadowSubscriptionMgr = shadowOf(
mContext.getSystemService(SubscriptionManager.class));
shadowSubscriptionMgr.setDefaultDataSubscriptionId(SUB_ID);
final TelephonyManager telephonyManager =
spy(mContext.getSystemService(TelephonyManager.class));
final ShadowTelephonyManager shadowTelephonyMgr = shadowOf(telephonyManager);
shadowTelephonyMgr.setTelephonyManagerForSubscriptionId(SUB_ID, telephonyManager);
mController = spy(new ConditionContextualCardController(mContext));
ReflectionHelpers.setField(mController, "mConditionManager", mConditionManager);
}