Switch from SI to IEC unit when formatting data usage bytes

- Created a new helper method DataUsageUtils.formatDataUsage() to
  format data usage bytes using IEC formatting.
- Switch from Formatter.formatFileSize() to DataUsageUtils.formatDataUsage()
  everywhere in datausage package.

Change-Id: I9323beed8bf5126b153fc9a3cdd9591c97ca6fd2
Merged-In: I9323beed8bf5126b153fc9a3cdd9591c97ca6fd2
Fixes: 76159924
Test: robotests
This commit is contained in:
Fan Zhang
2018-04-11 13:59:12 -07:00
parent 3441c3b073
commit be30190362
15 changed files with 106 additions and 125 deletions

View File

@@ -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();