"Data Warn & Limits" pref. summary should be empty.

The "Data Warning & Limits" preference in the Data Usage screen
should not have a summary.

Bug: 77300376

Test: manual
Test: make RunSettingsRoboTests
Change-Id: Ic567e7451ac3ea102577ab96ccef3ce7de05d4ad
This commit is contained in:
Andreas Terzis
2018-03-29 23:19:10 -07:00
committed by Jan Nordqvist
parent 220a6a002e
commit 903a92535a
3 changed files with 72 additions and 3 deletions

View File

@@ -15,10 +15,15 @@
*/
package com.android.settings.datausage;
import static android.net.NetworkPolicy.CYCLE_NONE;
import static junit.framework.Assert.assertFalse;
import static junit.framework.Assert.assertTrue;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyLong;
import static org.mockito.Matchers.anyObject;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -26,9 +31,14 @@ import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceManager;
import android.support.v14.preference.SwitchPreference;
import android.util.FeatureFlagUtils;
import com.android.settings.core.FeatureFlags;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.NetworkPolicyEditor;
import org.junit.Before;
import org.junit.Test;
@@ -47,11 +57,27 @@ public class BillingCycleSettingsTest {
BillingCycleSettings.ConfirmLimitFragment mConfirmLimitFragment;
@Mock
PreferenceManager mMockPreferenceManager;
@Mock
private NetworkPolicyEditor mNetworkPolicyEditor;
private Context mContext;
@Mock
private Preference mBillingCycle;
@Mock
private Preference mDataWarning;
@Mock
private Preference mDataLimit;
@Mock
private SwitchPreference mEnableDataWarning;
@Mock
private SwitchPreference mEnableDataLimit;
SharedPreferences mSharedPreferences;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = spy(RuntimeEnvironment.application);
mConfirmLimitFragment = new BillingCycleSettings.ConfirmLimitFragment();
mConfirmLimitFragment.setTargetFragment(mMockBillingCycleSettings, 0);
mSharedPreferences = RuntimeEnvironment.application.getSharedPreferences(
@@ -80,4 +106,22 @@ public class BillingCycleSettingsTest {
assertTrue(mSharedPreferences.getBoolean(BillingCycleSettings.KEY_SET_DATA_LIMIT, false));
verify(mMockBillingCycleSettings).setPolicyLimitBytes(LIMIT_BYTES);
}
@Test
public void testDataUsageSummary_shouldBeNullWithV2() {
final BillingCycleSettings billingCycleSettings = spy(new BillingCycleSettings());
billingCycleSettings.setUpForTest(mNetworkPolicyEditor, mBillingCycle,
mDataLimit, mDataWarning, mEnableDataLimit, mEnableDataWarning);
FeatureFlagUtils.setEnabled(mContext, FeatureFlags.DATA_USAGE_SETTINGS_V2, true);
doReturn("some-string").when(billingCycleSettings).getString(anyInt(), anyInt());
when(mNetworkPolicyEditor.getPolicyCycleDay(anyObject())).thenReturn(CYCLE_NONE + 1);
when(mNetworkPolicyEditor.getPolicyLimitBytes(anyObject())).thenReturn(2000L);
when(mNetworkPolicyEditor.getPolicyWarningBytes(anyObject())).thenReturn(1000L);
billingCycleSettings.updatePrefs();
verify(mBillingCycle).setSummary(null);
}
}