Merge "Switch from SI to IEC unit when formatting data usage bytes" into pi-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
f0c7038efe
@@ -110,6 +110,7 @@ public class BillingCycleSettingsTest {
|
||||
@Test
|
||||
public void testDataUsageSummary_shouldBeNullWithV2() {
|
||||
final BillingCycleSettings billingCycleSettings = spy(new BillingCycleSettings());
|
||||
when(billingCycleSettings.getContext()).thenReturn(mContext);
|
||||
billingCycleSettings.setUpForTest(mNetworkPolicyEditor, mBillingCycle,
|
||||
mDataLimit, mDataWarning, mEnableDataLimit, mEnableDataWarning);
|
||||
|
||||
|
@@ -31,13 +31,13 @@ import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.NetworkTemplate;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.telephony.SubscriptionInfo;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.applications.AppInfoWithHeaderTest;
|
||||
import com.android.settings.testutils.FakeFeatureFactory;
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
|
||||
@@ -59,8 +59,6 @@ import org.robolectric.annotation.Config;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
|
||||
@RunWith(SettingsRobolectricTestRunner.class)
|
||||
@Config(shadows = ShadowEntityHeaderController.class)
|
||||
public class DataUsageSummaryPreferenceControllerTest {
|
||||
@@ -68,8 +66,8 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
private static final long UPDATE_BACKOFF_MS = TimeUnit.MINUTES.toMillis(13);
|
||||
private static final long CYCLE_BACKOFF_MS = TimeUnit.DAYS.toMillis(6);
|
||||
private static final long CYCLE_LENGTH_MS = TimeUnit.DAYS.toMillis(30);
|
||||
private static final long USAGE1 = 373000000L;
|
||||
private static final long LIMIT1 = 1000000000L;
|
||||
private static final long USAGE1 = 373 * BillingCycleSettings.MIB_IN_BYTES;
|
||||
private static final long LIMIT1 = BillingCycleSettings.GIB_IN_BYTES;
|
||||
private static final String CARRIER_NAME = "z-mobile";
|
||||
private static final String PERIOD = "Feb";
|
||||
|
||||
@@ -149,7 +147,7 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
mController.setCarrierValues(CARRIER_NAME, now - UPDATE_BACKOFF_MS, info.cycleEnd, intent);
|
||||
|
||||
mController.updateState(mSummaryPreference);
|
||||
verify(mSummaryPreference).setLimitInfo("500 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setLimitInfo("512 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setUsageInfo(info.cycleEnd, now - UPDATE_BACKOFF_MS,
|
||||
CARRIER_NAME, 1 /* numPlans */, intent);
|
||||
verify(mSummaryPreference).setChartEnabled(true);
|
||||
@@ -168,7 +166,7 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
mController.setCarrierValues(CARRIER_NAME, now - UPDATE_BACKOFF_MS, info.cycleEnd, intent);
|
||||
|
||||
mController.updateState(mSummaryPreference);
|
||||
verify(mSummaryPreference).setLimitInfo("500 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setLimitInfo("512 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setUsageInfo(info.cycleEnd, now - UPDATE_BACKOFF_MS,
|
||||
CARRIER_NAME, 0 /* numPlans */, intent);
|
||||
verify(mSummaryPreference).setChartEnabled(true);
|
||||
@@ -186,7 +184,7 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
info.cycleEnd, null /* intent */);
|
||||
mController.updateState(mSummaryPreference);
|
||||
|
||||
verify(mSummaryPreference).setLimitInfo("500 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setLimitInfo("512 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setUsageInfo(
|
||||
info.cycleEnd,
|
||||
-1L /* snapshotTime */,
|
||||
@@ -209,7 +207,7 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
info.cycleEnd, null /* intent */);
|
||||
mController.updateState(mSummaryPreference);
|
||||
|
||||
verify(mSummaryPreference).setLimitInfo("500 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setLimitInfo("512 MB data warning / 1.00 GB data limit");
|
||||
verify(mSummaryPreference).setUsageInfo(
|
||||
info.cycleEnd,
|
||||
-1L /* snapshotTime */,
|
||||
@@ -241,7 +239,7 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
public void testSummaryUpdate_warningOnly() {
|
||||
final long now = System.currentTimeMillis();
|
||||
final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
|
||||
info.warningLevel = 1000000L;
|
||||
info.warningLevel = BillingCycleSettings.MIB_IN_BYTES;
|
||||
info.limitLevel = 0L;
|
||||
|
||||
final Intent intent = new Intent();
|
||||
@@ -259,7 +257,7 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
final long now = System.currentTimeMillis();
|
||||
final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
|
||||
info.warningLevel = 0L;
|
||||
info.limitLevel = 1000000L;
|
||||
info.limitLevel = BillingCycleSettings.MIB_IN_BYTES;
|
||||
|
||||
final Intent intent = new Intent();
|
||||
|
||||
@@ -275,8 +273,8 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
public void testSummaryUpdate_limitAndWarning() {
|
||||
final long now = System.currentTimeMillis();
|
||||
final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
|
||||
info.warningLevel = 1000000L;
|
||||
info.limitLevel = 1000000L;
|
||||
info.warningLevel = BillingCycleSettings.MIB_IN_BYTES;
|
||||
info.limitLevel = BillingCycleSettings.MIB_IN_BYTES;
|
||||
|
||||
final Intent intent = new Intent();
|
||||
|
||||
@@ -293,8 +291,8 @@ public class DataUsageSummaryPreferenceControllerTest {
|
||||
public void testSummaryUpdate_noSim_shouldSetWifiMode() {
|
||||
final long now = System.currentTimeMillis();
|
||||
final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
|
||||
info.warningLevel = 1000000L;
|
||||
info.limitLevel = 1000000L;
|
||||
info.warningLevel = BillingCycleSettings.MIB_IN_BYTES;
|
||||
info.limitLevel = BillingCycleSettings.MIB_IN_BYTES;
|
||||
|
||||
final Intent intent = new Intent();
|
||||
|
||||
|
@@ -17,8 +17,6 @@
|
||||
package com.android.settings.datausage;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.ComponentName;
|
||||
@@ -41,17 +39,15 @@ import com.android.settings.SubSettings;
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
|
||||
import com.android.settingslib.Utils;
|
||||
import com.android.settingslib.core.instrumentation.VisibilityLoggerMixin;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
import org.robolectric.Robolectric;
|
||||
import org.robolectric.RuntimeEnvironment;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.Shadows;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.shadows.ShadowActivity;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
@@ -216,7 +212,7 @@ public class DataUsageSummaryPreferenceTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSetUsageInfo_withRecentCarrierUpdate_doesNotSetCarrierInfoWarningColorAndFont() {
|
||||
public void setUsageInfo_withRecentCarrierUpdate_doesNotSetCarrierInfoWarningColorAndFont() {
|
||||
final long updateTime = System.currentTimeMillis() - TimeUnit.HOURS.toMillis(1);
|
||||
mCarrierInfo = (TextView) mHolder.findViewById(R.id.carrier_and_update);
|
||||
mSummaryPreference.setUsageInfo(mCycleEnd, updateTime, DUMMY_CARRIER, 1 /* numPlans */,
|
||||
@@ -364,7 +360,10 @@ public class DataUsageSummaryPreferenceTest {
|
||||
public void testSetUsageAndRemainingInfo_withUsageInfo_dataUsageAndRemainingShown() {
|
||||
mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 1 /* numPlans */,
|
||||
new Intent());
|
||||
mSummaryPreference.setUsageNumbers(1000000L, 10000000L, true);
|
||||
mSummaryPreference.setUsageNumbers(
|
||||
BillingCycleSettings.MIB_IN_BYTES,
|
||||
10 * BillingCycleSettings.MIB_IN_BYTES,
|
||||
true /* hasMobileData */);
|
||||
|
||||
bindViewHolder();
|
||||
assertThat(mDataUsed.getText().toString()).isEqualTo("1.00 MB used");
|
||||
@@ -377,7 +376,10 @@ public class DataUsageSummaryPreferenceTest {
|
||||
public void testSetUsageInfo_withDataOverusage() {
|
||||
mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 1 /* numPlans */,
|
||||
new Intent());
|
||||
mSummaryPreference.setUsageNumbers(11_000_000L, 10_000_000L, true);
|
||||
mSummaryPreference.setUsageNumbers(
|
||||
11 * BillingCycleSettings.MIB_IN_BYTES,
|
||||
10 * BillingCycleSettings.MIB_IN_BYTES,
|
||||
true /* hasMobileData */);
|
||||
|
||||
bindViewHolder();
|
||||
assertThat(mDataUsed.getText().toString()).isEqualTo("11.00 MB used");
|
||||
@@ -390,7 +392,8 @@ public class DataUsageSummaryPreferenceTest {
|
||||
public void testSetUsageInfo_withUsageInfo_dataUsageShown() {
|
||||
mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 0 /* numPlans */,
|
||||
new Intent());
|
||||
mSummaryPreference.setUsageNumbers(1000000L, -1L, true);
|
||||
mSummaryPreference.setUsageNumbers(
|
||||
BillingCycleSettings.MIB_IN_BYTES, -1L, true /* hasMobileData */);
|
||||
|
||||
bindViewHolder();
|
||||
assertThat(mDataUsed.getText().toString()).isEqualTo("1.00 MB used");
|
||||
|
@@ -16,11 +16,20 @@
|
||||
|
||||
package com.android.settings.datausage;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.Matchers.anyInt;
|
||||
import static org.mockito.Matchers.anyObject;
|
||||
import static org.mockito.Matchers.anyString;
|
||||
import static org.mockito.Matchers.endsWith;
|
||||
import static org.mockito.Mockito.doNothing;
|
||||
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 android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.net.NetworkPolicyManager;
|
||||
import android.os.Bundle;
|
||||
import android.text.format.Formatter;
|
||||
|
||||
import com.android.settings.dashboard.SummaryLoader;
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
@@ -39,17 +48,6 @@ import org.robolectric.Robolectric;
|
||||
import org.robolectric.annotation.Config;
|
||||
import org.robolectric.shadows.ShadowApplication;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.Matchers.anyInt;
|
||||
import static org.mockito.Matchers.anyObject;
|
||||
import static org.mockito.Matchers.anyString;
|
||||
import static org.mockito.Matchers.endsWith;
|
||||
import static org.mockito.Mockito.doNothing;
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
@Config(shadows = {
|
||||
SettingsShadowResourcesImpl.class,
|
||||
SettingsShadowResources.SettingsShadowTheme.class,
|
||||
@@ -93,8 +91,8 @@ public class DataUsageSummaryTest {
|
||||
final long usage = 2147483648L; // 2GB
|
||||
final String formattedUsage =
|
||||
DataUsageSummary.formatUsage(mContext, "^1", usage).toString();
|
||||
final String formattedAsFileSize = Formatter.formatFileSize(mContext, usage);
|
||||
assertThat(formattedUsage).isEqualTo(formattedAsFileSize);
|
||||
final CharSequence formattedInIECUnit = DataUsageUtils.formatDataUsage(mContext, usage);
|
||||
assertThat(formattedUsage).isEqualTo(formattedInIECUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@@ -23,6 +23,7 @@ import static org.mockito.Mockito.when;
|
||||
import android.content.Context;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.telephony.TelephonyManager;
|
||||
import android.util.DataUnit;
|
||||
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
|
||||
@@ -78,4 +79,12 @@ public final class DataUsageUtilsTest {
|
||||
boolean hasSim = DataUsageUtils.hasSim(mContext);
|
||||
assertThat(hasSim).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void formatDataUsage_useIECUnit() {
|
||||
final CharSequence formattedDataUsage = DataUsageUtils.formatDataUsage(
|
||||
mContext, DataUnit.GIBIBYTES.toBytes(1));
|
||||
|
||||
assertThat(formattedDataUsage).isEqualTo("1.00 GB");
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user