Fix failed test case for BatteryTip in Settings
- Replace the deprecated mocktio rule with MockitoJUnit.rule - Fix the failed test cases - Update the testing convention Bug: 323627875 Test: atest SettingsRoboTests:com.android.settings.fuelgauge.batterytip Change-Id: I25a39c8e7ad07482352c1e2152d8e16555429ab1
This commit is contained in:
@@ -20,30 +20,29 @@ import static com.android.settings.fuelgauge.batterytip.tips.BatteryTip.TipType.
|
|||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import static org.mockito.Mockito.doReturn;
|
import static org.mockito.Mockito.doReturn;
|
||||||
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 android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.text.format.DateUtils;
|
|
||||||
|
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
import androidx.test.core.app.ApplicationProvider;
|
||||||
|
|
||||||
import com.android.settings.SettingsActivity;
|
import com.android.settings.SettingsActivity;
|
||||||
import com.android.settings.core.BasePreferenceController;
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.core.InstrumentedPreferenceFragment;
|
import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||||
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
|
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
|
||||||
import com.android.settings.testutils.FakeFeatureFactory;
|
|
||||||
import com.android.settings.widget.CardPreference;
|
import com.android.settings.widget.CardPreference;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.junit.MockitoJUnit;
|
||||||
|
import org.mockito.junit.MockitoRule;
|
||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
import org.robolectric.RuntimeEnvironment;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -53,8 +52,8 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
|
|
||||||
private static final String KEY_PREF = "battery_tip";
|
private static final String KEY_PREF = "battery_tip";
|
||||||
private static final String KEY_TIP = "key_battery_tip";
|
private static final String KEY_TIP = "key_battery_tip";
|
||||||
private static final long AVERAGE_TIME_MS = DateUtils.HOUR_IN_MILLIS;
|
|
||||||
|
|
||||||
|
@Rule public MockitoRule mMockitoRule = MockitoJUnit.rule();
|
||||||
@Mock private BatteryTipPreferenceController.BatteryTipListener mBatteryTipListener;
|
@Mock private BatteryTipPreferenceController.BatteryTipListener mBatteryTipListener;
|
||||||
@Mock private PreferenceScreen mPreferenceScreen;
|
@Mock private PreferenceScreen mPreferenceScreen;
|
||||||
@Mock private BatteryTip mBatteryTip;
|
@Mock private BatteryTip mBatteryTip;
|
||||||
@@ -64,21 +63,16 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
private Context mContext;
|
private Context mContext;
|
||||||
private CardPreference mCardPreference;
|
private CardPreference mCardPreference;
|
||||||
private BatteryTipPreferenceController mBatteryTipPreferenceController;
|
private BatteryTipPreferenceController mBatteryTipPreferenceController;
|
||||||
private List<BatteryTip> mOldBatteryTips;
|
|
||||||
private List<BatteryTip> mNewBatteryTips;
|
private List<BatteryTip> mNewBatteryTips;
|
||||||
private FakeFeatureFactory mFeatureFactory;
|
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
MockitoAnnotations.initMocks(this);
|
mContext = ApplicationProvider.getApplicationContext();
|
||||||
mContext = RuntimeEnvironment.application;
|
|
||||||
|
|
||||||
mCardPreference = spy(new CardPreference(mContext));
|
mCardPreference = new CardPreference(mContext);
|
||||||
when(mPreferenceScreen.getContext()).thenReturn(mContext);
|
when(mPreferenceScreen.getContext()).thenReturn(mContext);
|
||||||
doReturn(mCardPreference).when(mPreferenceScreen).findPreference(KEY_PREF);
|
doReturn(mCardPreference).when(mPreferenceScreen).findPreference(KEY_PREF);
|
||||||
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
|
||||||
|
|
||||||
mOldBatteryTips = new ArrayList<>();
|
|
||||||
mNewBatteryTips = new ArrayList<>();
|
mNewBatteryTips = new ArrayList<>();
|
||||||
|
|
||||||
mBatteryTipPreferenceController = buildBatteryTipPreferenceController();
|
mBatteryTipPreferenceController = buildBatteryTipPreferenceController();
|
||||||
@@ -87,32 +81,32 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDisplayPreference_isInvisible() {
|
public void displayPreference_isInvisible() {
|
||||||
mBatteryTipPreferenceController.displayPreference(mPreferenceScreen);
|
mBatteryTipPreferenceController.displayPreference(mPreferenceScreen);
|
||||||
|
|
||||||
assertThat(mCardPreference.isVisible()).isFalse();
|
assertThat(mCardPreference.isVisible()).isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdateBatteryTips_tipsStateInvisible_isInvisible() {
|
public void updateBatteryTips_tipsStateInvisible_isInvisible() {
|
||||||
mBatteryTipPreferenceController.updateBatteryTips(mNewBatteryTips);
|
mBatteryTipPreferenceController.updateBatteryTips(mNewBatteryTips);
|
||||||
|
|
||||||
assertThat(mCardPreference.isVisible()).isFalse();
|
assertThat(mCardPreference.isVisible()).isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetCurrentBatteryTip_noTips_isNull() {
|
public void getCurrentBatteryTip_noTips_isNull() {
|
||||||
assertThat(mBatteryTipPreferenceController.getCurrentBatteryTip()).isNull();
|
assertThat(mBatteryTipPreferenceController.getCurrentBatteryTip()).isNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetCurrentBatteryTip_tipsInvisible_isNull() {
|
public void getCurrentBatteryTip_tipsInvisible_isNull() {
|
||||||
mBatteryTipPreferenceController.updateBatteryTips(mNewBatteryTips);
|
mBatteryTipPreferenceController.updateBatteryTips(mNewBatteryTips);
|
||||||
assertThat(mBatteryTipPreferenceController.getCurrentBatteryTip()).isNull();
|
assertThat(mBatteryTipPreferenceController.getCurrentBatteryTip()).isNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testRestoreFromNull_shouldNotCrash() {
|
public void restoreFromNull_shouldNotCrash() {
|
||||||
final Bundle bundle = new Bundle();
|
final Bundle bundle = new Bundle();
|
||||||
// Battery tip list is null at this time
|
// Battery tip list is null at this time
|
||||||
mBatteryTipPreferenceController.saveInstanceState(bundle);
|
mBatteryTipPreferenceController.saveInstanceState(bundle);
|
||||||
@@ -124,7 +118,7 @@ public class BatteryTipPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testHandlePreferenceTreeClick_noDialog_invokeCallback() {
|
public void handlePreferenceTreeClick_noDialog_invokeCallback() {
|
||||||
when(mBatteryTip.getType()).thenReturn(SMART_BATTERY_MANAGER);
|
when(mBatteryTip.getType()).thenReturn(SMART_BATTERY_MANAGER);
|
||||||
List<BatteryTip> batteryTips = new ArrayList<>();
|
List<BatteryTip> batteryTips = new ArrayList<>();
|
||||||
batteryTips.add(mBatteryTip);
|
batteryTips.add(mBatteryTip);
|
||||||
|
@@ -17,8 +17,6 @@ package com.android.settings.fuelgauge.batterytip.tips;
|
|||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import static org.mockito.ArgumentMatchers.anyInt;
|
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
@@ -27,6 +25,7 @@ import android.content.Context;
|
|||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
import androidx.test.core.app.ApplicationProvider;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.testutils.FakeFeatureFactory;
|
import com.android.settings.testutils.FakeFeatureFactory;
|
||||||
@@ -34,12 +33,13 @@ import com.android.settings.widget.CardPreference;
|
|||||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.junit.MockitoJUnit;
|
||||||
|
import org.mockito.junit.MockitoRule;
|
||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
import org.robolectric.RuntimeEnvironment;
|
|
||||||
import org.robolectric.shadows.ShadowLog;
|
import org.robolectric.shadows.ShadowLog;
|
||||||
|
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
@@ -49,23 +49,22 @@ public class BatteryDefenderTipTest {
|
|||||||
private FakeFeatureFactory mFeatureFactory;
|
private FakeFeatureFactory mFeatureFactory;
|
||||||
private BatteryDefenderTip mBatteryDefenderTip;
|
private BatteryDefenderTip mBatteryDefenderTip;
|
||||||
private MetricsFeatureProvider mMetricsFeatureProvider;
|
private MetricsFeatureProvider mMetricsFeatureProvider;
|
||||||
|
private CardPreference mCardPreference;
|
||||||
|
|
||||||
|
@Rule public MockitoRule mMockitoRule = MockitoJUnit.rule();
|
||||||
@Mock private BatteryTip mBatteryTip;
|
@Mock private BatteryTip mBatteryTip;
|
||||||
@Mock private Preference mPreference;
|
@Mock private Preference mPreference;
|
||||||
@Mock private CardPreference mCardPreference;
|
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
MockitoAnnotations.initMocks(this);
|
mContext = ApplicationProvider.getApplicationContext();
|
||||||
|
|
||||||
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
||||||
mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
|
mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
|
||||||
mContext = RuntimeEnvironment.application;
|
|
||||||
mBatteryDefenderTip =
|
mBatteryDefenderTip =
|
||||||
new BatteryDefenderTip(BatteryTip.StateType.NEW, false /* isPluggedIn */);
|
new BatteryDefenderTip(BatteryTip.StateType.NEW, /* isPluggedIn= */ false);
|
||||||
|
mCardPreference = new CardPreference(mContext);
|
||||||
|
|
||||||
when(mPreference.getContext()).thenReturn(mContext);
|
when(mPreference.getContext()).thenReturn(mContext);
|
||||||
when(mCardPreference.getContext()).thenReturn(mContext);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -87,7 +86,7 @@ public class BatteryDefenderTipTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testLog_logMetric() {
|
public void log_logMetric() {
|
||||||
mBatteryDefenderTip.updateState(mBatteryTip);
|
mBatteryDefenderTip.updateState(mBatteryTip);
|
||||||
mBatteryDefenderTip.log(mContext, mMetricsFeatureProvider);
|
mBatteryDefenderTip.log(mContext, mMetricsFeatureProvider);
|
||||||
|
|
||||||
@@ -108,7 +107,7 @@ public class BatteryDefenderTipTest {
|
|||||||
|
|
||||||
mBatteryDefenderTip.updatePreference(mCardPreference);
|
mBatteryDefenderTip.updatePreference(mCardPreference);
|
||||||
|
|
||||||
verify(mCardPreference).setPrimaryButtonText(expectedText);
|
assertThat(mCardPreference.getPrimaryButtonText()).isEqualTo(expectedText);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -117,46 +116,31 @@ public class BatteryDefenderTipTest {
|
|||||||
|
|
||||||
mBatteryDefenderTip.updatePreference(mCardPreference);
|
mBatteryDefenderTip.updatePreference(mCardPreference);
|
||||||
|
|
||||||
verify(mCardPreference).setSecondaryButtonText(expected);
|
assertThat(mCardPreference.getSecondaryButtonText()).isEqualTo(expected);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void updatePreference_shouldSetPrimaryButtonVisible() {
|
public void updatePreference_shouldSetPrimaryButtonVisible() {
|
||||||
mBatteryDefenderTip.updatePreference(mCardPreference);
|
mBatteryDefenderTip.updatePreference(mCardPreference);
|
||||||
|
|
||||||
verify(mCardPreference).setPrimaryButtonVisibility(true);
|
assertThat(mCardPreference.getPrimaryButtonVisibility()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void updatePreference_whenCharging_setPrimaryButtonVisibleToBeTrue() {
|
public void updatePreference_whenCharging_setPrimaryButtonVisibleToBeTrue() {
|
||||||
mBatteryDefenderTip =
|
mBatteryDefenderTip =
|
||||||
new BatteryDefenderTip(BatteryTip.StateType.NEW, true /* isPluggedIn */);
|
new BatteryDefenderTip(BatteryTip.StateType.NEW, /* isPluggedIn= */ true);
|
||||||
|
|
||||||
mBatteryDefenderTip.updatePreference(mCardPreference);
|
mBatteryDefenderTip.updatePreference(mCardPreference);
|
||||||
|
|
||||||
verify(mCardPreference).setPrimaryButtonVisibility(true);
|
assertThat(mCardPreference.getPrimaryButtonVisibility()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void updatePreference_whenNotCharging_setSecondaryButtonVisibleToBeFalse() {
|
public void updatePreference_whenNotCharging_setSecondaryButtonVisibleToBeFalse() {
|
||||||
mBatteryDefenderTip.updatePreference(mCardPreference);
|
mBatteryDefenderTip.updatePreference(mCardPreference);
|
||||||
|
|
||||||
verify(mCardPreference).setSecondaryButtonVisibility(false);
|
assertThat(mCardPreference.getSecondaryButtonVisibility()).isFalse();
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updatePreference_whenGetChargingStatusFailed_setSecondaryButtonVisibleToBeFalse() {
|
|
||||||
fakeGetChargingStatusFailed();
|
|
||||||
|
|
||||||
mBatteryDefenderTip.updatePreference(mCardPreference);
|
|
||||||
|
|
||||||
verify(mCardPreference).setSecondaryButtonVisibility(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void fakeGetChargingStatusFailed() {
|
|
||||||
Context mockContext = mock(Context.class);
|
|
||||||
when(mockContext.getString(anyInt())).thenReturn("fake_string");
|
|
||||||
when(mCardPreference.getContext()).thenReturn(mockContext);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getLastErrorLog() {
|
private String getLastErrorLog() {
|
||||||
|
@@ -20,11 +20,10 @@ import static com.google.common.truth.Truth.assertThat;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
import android.view.View;
|
|
||||||
|
|
||||||
import androidx.annotation.DrawableRes;
|
import androidx.annotation.DrawableRes;
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceViewHolder;
|
import androidx.test.core.app.ApplicationProvider;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.widget.CardPreference;
|
import com.android.settings.widget.CardPreference;
|
||||||
@@ -32,10 +31,12 @@ import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
|||||||
import com.android.settingslib.testutils.DrawableTestHelper;
|
import com.android.settingslib.testutils.DrawableTestHelper;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
|
import org.mockito.junit.MockitoJUnit;
|
||||||
|
import org.mockito.junit.MockitoRule;
|
||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
import org.robolectric.RuntimeEnvironment;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -47,13 +48,15 @@ public class BatteryTipTest {
|
|||||||
private static final String SUMMARY = "summary";
|
private static final String SUMMARY = "summary";
|
||||||
@DrawableRes private static final int ICON_ID = R.drawable.ic_fingerprint;
|
@DrawableRes private static final int ICON_ID = R.drawable.ic_fingerprint;
|
||||||
|
|
||||||
|
@Rule public MockitoRule mMockitoRule = MockitoJUnit.rule();
|
||||||
|
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
private TestBatteryTip mBatteryTip;
|
private TestBatteryTip mBatteryTip;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
mContext = RuntimeEnvironment.application;
|
|
||||||
mBatteryTip = new TestBatteryTip();
|
mBatteryTip = new TestBatteryTip();
|
||||||
|
mContext = ApplicationProvider.getApplicationContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -84,19 +87,14 @@ public class BatteryTipTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void updatePreference_resetLayoutState() {
|
public void updatePreference_resetLayoutState() {
|
||||||
mContext.setTheme(R.style.Theme_Settings);
|
|
||||||
PreferenceViewHolder holder =
|
|
||||||
PreferenceViewHolder.createInstanceForTests(
|
|
||||||
View.inflate(
|
|
||||||
mContext, R.layout.card_preference_layout, /* parent= */ null));
|
|
||||||
CardPreference cardPreference = new CardPreference(mContext);
|
CardPreference cardPreference = new CardPreference(mContext);
|
||||||
cardPreference.onBindViewHolder(holder);
|
|
||||||
cardPreference.setPrimaryButtonVisibility(true);
|
cardPreference.setPrimaryButtonVisibility(true);
|
||||||
|
cardPreference.setSecondaryButtonVisibility(true);
|
||||||
|
|
||||||
mBatteryTip.updatePreference(cardPreference);
|
mBatteryTip.updatePreference(cardPreference);
|
||||||
|
|
||||||
View view = holder.findViewById(R.id.card_preference_buttons);
|
assertThat(cardPreference.getPrimaryButtonVisibility()).isFalse();
|
||||||
assertThat(view.getVisibility()).isEqualTo(View.GONE);
|
assertThat(cardPreference.getSecondaryButtonVisibility()).isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@@ -25,6 +25,7 @@ import android.content.Context;
|
|||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
import androidx.test.core.app.ApplicationProvider;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.testutils.FakeFeatureFactory;
|
import com.android.settings.testutils.FakeFeatureFactory;
|
||||||
@@ -32,12 +33,13 @@ import com.android.settings.widget.CardPreference;
|
|||||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import org.mockito.MockitoAnnotations;
|
import org.mockito.junit.MockitoJUnit;
|
||||||
|
import org.mockito.junit.MockitoRule;
|
||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
import org.robolectric.RuntimeEnvironment;
|
|
||||||
import org.robolectric.shadows.ShadowLog;
|
import org.robolectric.shadows.ShadowLog;
|
||||||
|
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
@@ -47,22 +49,21 @@ public final class IncompatibleChargerTipTest {
|
|||||||
private FakeFeatureFactory mFeatureFactory;
|
private FakeFeatureFactory mFeatureFactory;
|
||||||
private IncompatibleChargerTip mIncompatibleChargerTip;
|
private IncompatibleChargerTip mIncompatibleChargerTip;
|
||||||
private MetricsFeatureProvider mMetricsFeatureProvider;
|
private MetricsFeatureProvider mMetricsFeatureProvider;
|
||||||
|
private CardPreference mCardPreference;
|
||||||
|
|
||||||
|
@Rule public MockitoRule mMockitoRule = MockitoJUnit.rule();
|
||||||
@Mock private BatteryTip mBatteryTip;
|
@Mock private BatteryTip mBatteryTip;
|
||||||
@Mock private Preference mPreference;
|
@Mock private Preference mPreference;
|
||||||
@Mock private CardPreference mCardPreference;
|
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
MockitoAnnotations.initMocks(this);
|
|
||||||
|
|
||||||
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
mFeatureFactory = FakeFeatureFactory.setupForTest();
|
||||||
mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
|
mMetricsFeatureProvider = mFeatureFactory.metricsFeatureProvider;
|
||||||
mContext = RuntimeEnvironment.application;
|
mContext = ApplicationProvider.getApplicationContext();
|
||||||
mIncompatibleChargerTip = new IncompatibleChargerTip(BatteryTip.StateType.NEW);
|
mIncompatibleChargerTip = new IncompatibleChargerTip(BatteryTip.StateType.NEW);
|
||||||
|
mCardPreference = new CardPreference(mContext);
|
||||||
|
|
||||||
when(mPreference.getContext()).thenReturn(mContext);
|
when(mPreference.getContext()).thenReturn(mContext);
|
||||||
when(mCardPreference.getContext()).thenReturn(mContext);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -107,13 +108,13 @@ public final class IncompatibleChargerTipTest {
|
|||||||
|
|
||||||
mIncompatibleChargerTip.updatePreference(mCardPreference);
|
mIncompatibleChargerTip.updatePreference(mCardPreference);
|
||||||
|
|
||||||
verify(mCardPreference).setPrimaryButtonText(expected);
|
assertThat(mCardPreference.getPrimaryButtonText()).isEqualTo(expected);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void updatePreference_shouldSetSecondaryButtonVisible() {
|
public void updatePreference_shouldSetSecondaryButtonVisible() {
|
||||||
mIncompatibleChargerTip.updatePreference(mCardPreference);
|
mIncompatibleChargerTip.updatePreference(mCardPreference);
|
||||||
verify(mCardPreference).setPrimaryButtonVisibility(true);
|
assertThat(mCardPreference.getPrimaryButtonVisibility()).isTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getLastErrorLog() {
|
private String getLastErrorLog() {
|
||||||
|
Reference in New Issue
Block a user