Merge "[Settings] fix failure test case - ConditionContextualCardController"

This commit is contained in:
Bonian Chen
2020-02-07 02:40:17 +00:00
committed by Gerrit Code Review

View File

@@ -23,8 +23,11 @@ import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy; import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
import android.content.Context; 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;
import com.android.settings.homepage.contextualcards.ContextualCard.CardType; import com.android.settings.homepage.contextualcards.ContextualCard.CardType;
@@ -37,6 +40,8 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner; import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment; import org.robolectric.RuntimeEnvironment;
import org.robolectric.shadows.ShadowSubscriptionManager;
import org.robolectric.shadows.ShadowTelephonyManager;
import org.robolectric.util.ReflectionHelpers; import org.robolectric.util.ReflectionHelpers;
import java.util.ArrayList; import java.util.ArrayList;
@@ -45,6 +50,7 @@ import java.util.Map;
@RunWith(RobolectricTestRunner.class) @RunWith(RobolectricTestRunner.class)
public class ConditionContextualCardControllerTest { public class ConditionContextualCardControllerTest {
private static final int SUB_ID = 2;
@Mock @Mock
private ConditionManager mConditionManager; private ConditionManager mConditionManager;
@@ -57,6 +63,17 @@ public class ConditionContextualCardControllerTest {
public void setUp() { public void setUp() {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application); 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)); mController = spy(new ConditionContextualCardController(mContext));
ReflectionHelpers.setField(mController, "mConditionManager", mConditionManager); ReflectionHelpers.setField(mController, "mConditionManager", mConditionManager);
} }