Merge changes I801ddc49,Id1b8f41b
* changes: [SP24] Rename functions that add Entry unconditionally [SP23] Address misc API review comment about NetworkStats
This commit is contained in:
@@ -4782,7 +4782,6 @@ package android.net {
|
||||
field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStats> CREATOR;
|
||||
field public static final int DEFAULT_NETWORK_NO = 0; // 0x0
|
||||
field public static final int DEFAULT_NETWORK_YES = 1; // 0x1
|
||||
field @Nullable public static final String IFACE_ALL;
|
||||
field public static final String IFACE_VT = "vt_data0";
|
||||
field public static final int METERED_NO = 0; // 0x0
|
||||
field public static final int METERED_YES = 1; // 0x1
|
||||
|
||||
@@ -21,7 +21,6 @@ import static android.os.Process.CLAT_UID;
|
||||
import android.annotation.IntDef;
|
||||
import android.annotation.NonNull;
|
||||
import android.annotation.Nullable;
|
||||
import android.annotation.SuppressLint;
|
||||
import android.annotation.SystemApi;
|
||||
import android.compat.annotation.UnsupportedAppUsage;
|
||||
import android.os.Parcel;
|
||||
@@ -58,9 +57,12 @@ import java.util.function.Predicate;
|
||||
public final class NetworkStats implements Parcelable {
|
||||
private static final String TAG = "NetworkStats";
|
||||
|
||||
/** {@link #iface} value when interface details unavailable. */
|
||||
@SuppressLint("CompileTimeConstant")
|
||||
/**
|
||||
* {@link #iface} value when interface details unavailable.
|
||||
* @hide
|
||||
*/
|
||||
@Nullable public static final String IFACE_ALL = null;
|
||||
|
||||
/**
|
||||
* Virtual network interface for video telephony. This is for VT data usage counting
|
||||
* purpose.
|
||||
@@ -248,7 +250,13 @@ public final class NetworkStats implements Parcelable {
|
||||
@UnsupportedAppUsage
|
||||
private long[] operations;
|
||||
|
||||
/** @hide */
|
||||
/**
|
||||
* Basic element of network statistics. Contains the number of packets and number of bytes
|
||||
* transferred on both directions in a given set of conditions. See
|
||||
* {@link Entry#Entry(String, int, int, int, int, int, int, long, long, long, long, long)}.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
public static class Entry {
|
||||
/** @hide */
|
||||
@@ -319,6 +327,35 @@ public final class NetworkStats implements Parcelable {
|
||||
rxBytes, rxPackets, txBytes, txPackets, operations);
|
||||
}
|
||||
|
||||
/**
|
||||
* Construct a {@link Entry} object by giving statistics of packet and byte transferred on
|
||||
* both direction, and associated with a set of given conditions.
|
||||
*
|
||||
* @param iface interface name of this {@link Entry}. Or null if not specified.
|
||||
* @param uid uid of this {@link Entry}. {@link #UID_TETHERING} if this {@link Entry} is
|
||||
* for tethering. Or {@link #UID_ALL} if this {@link NetworkStats} is only
|
||||
* counting iface stats.
|
||||
* @param set usage state of this {@link Entry}. Should be one of the following
|
||||
* values: {@link #SET_DEFAULT}, {@link #SET_FOREGROUND}.
|
||||
* @param tag tag of this {@link Entry}.
|
||||
* @param metered metered state of this {@link Entry}. Should be one of the following
|
||||
* values: {link #METERED_YES}, {link #METERED_NO}.
|
||||
* @param roaming roaming state of this {@link Entry}. Should be one of the following
|
||||
* values: {link #ROAMING_YES}, {link #ROAMING_NO}.
|
||||
* @param defaultNetwork default network status of this {@link Entry}. Should be one
|
||||
* of the following values: {link #DEFAULT_NETWORK_YES},
|
||||
* {link #DEFAULT_NETWORK_NO}.
|
||||
* @param rxBytes Number of bytes received for this {@link Entry}. Statistics should
|
||||
* represent the contents of IP packets, including IP headers.
|
||||
* @param rxPackets Number of packets received for this {@link Entry}. Statistics should
|
||||
* represent the contents of IP packets, including IP headers.
|
||||
* @param txBytes Number of bytes transmitted for this {@link Entry}. Statistics should
|
||||
* represent the contents of IP packets, including IP headers.
|
||||
* @param txPackets Number of bytes transmitted for this {@link Entry}. Statistics should
|
||||
* represent the contents of IP packets, including IP headers.
|
||||
* @param operations count of network operations performed for this {@link Entry}. This can
|
||||
* be used to derive bytes-per-operation.
|
||||
*/
|
||||
public Entry(@Nullable String iface, int uid, @State int set, int tag,
|
||||
@Meteredness int metered, @Roaming int roaming, @DefaultNetwork int defaultNetwork,
|
||||
long rxBytes, long rxPackets, long txBytes, long txPackets, long operations) {
|
||||
@@ -466,7 +503,7 @@ public final class NetworkStats implements Parcelable {
|
||||
NetworkStats.Entry entry = null;
|
||||
for (int i = 0; i < size; i++) {
|
||||
entry = getValues(i, entry);
|
||||
clone.addEntry(entry);
|
||||
clone.insertEntry(entry);
|
||||
}
|
||||
return clone;
|
||||
}
|
||||
@@ -493,26 +530,26 @@ public final class NetworkStats implements Parcelable {
|
||||
|
||||
/** @hide */
|
||||
@VisibleForTesting
|
||||
public NetworkStats addIfaceValues(
|
||||
public NetworkStats insertEntry(
|
||||
String iface, long rxBytes, long rxPackets, long txBytes, long txPackets) {
|
||||
return addEntry(
|
||||
return insertEntry(
|
||||
iface, UID_ALL, SET_DEFAULT, TAG_NONE, rxBytes, rxPackets, txBytes, txPackets, 0L);
|
||||
}
|
||||
|
||||
/** @hide */
|
||||
@VisibleForTesting
|
||||
public NetworkStats addEntry(String iface, int uid, int set, int tag, long rxBytes,
|
||||
public NetworkStats insertEntry(String iface, int uid, int set, int tag, long rxBytes,
|
||||
long rxPackets, long txBytes, long txPackets, long operations) {
|
||||
return addEntry(new Entry(
|
||||
return insertEntry(new Entry(
|
||||
iface, uid, set, tag, rxBytes, rxPackets, txBytes, txPackets, operations));
|
||||
}
|
||||
|
||||
/** @hide */
|
||||
@VisibleForTesting
|
||||
public NetworkStats addEntry(String iface, int uid, int set, int tag, int metered, int roaming,
|
||||
int defaultNetwork, long rxBytes, long rxPackets, long txBytes, long txPackets,
|
||||
long operations) {
|
||||
return addEntry(new Entry(
|
||||
public NetworkStats insertEntry(String iface, int uid, int set, int tag, int metered,
|
||||
int roaming, int defaultNetwork, long rxBytes, long rxPackets, long txBytes,
|
||||
long txPackets, long operations) {
|
||||
return insertEntry(new Entry(
|
||||
iface, uid, set, tag, metered, roaming, defaultNetwork, rxBytes, rxPackets,
|
||||
txBytes, txPackets, operations));
|
||||
}
|
||||
@@ -522,7 +559,7 @@ public final class NetworkStats implements Parcelable {
|
||||
* object can be recycled across multiple calls.
|
||||
* @hide
|
||||
*/
|
||||
public NetworkStats addEntry(Entry entry) {
|
||||
public NetworkStats insertEntry(Entry entry) {
|
||||
if (size >= capacity) {
|
||||
final int newLength = Math.max(size, 10) * 3 / 2;
|
||||
iface = Arrays.copyOf(iface, newLength);
|
||||
@@ -665,7 +702,7 @@ public final class NetworkStats implements Parcelable {
|
||||
entry.roaming, entry.defaultNetwork);
|
||||
if (i == -1) {
|
||||
// only create new entry when positive contribution
|
||||
addEntry(entry);
|
||||
insertEntry(entry);
|
||||
} else {
|
||||
rxBytes[i] += entry.rxBytes;
|
||||
rxPackets[i] += entry.rxPackets;
|
||||
@@ -1003,7 +1040,7 @@ public final class NetworkStats implements Parcelable {
|
||||
entry.operations = Math.max(entry.operations, 0);
|
||||
}
|
||||
|
||||
result.addEntry(entry);
|
||||
result.insertEntry(entry);
|
||||
}
|
||||
|
||||
return result;
|
||||
|
||||
@@ -268,7 +268,7 @@ public class BandwidthTest extends InstrumentationTestCase {
|
||||
File snd_stat = new File (root_filepath + "tcp_snd");
|
||||
int tx = BandwidthTestUtil.parseIntValueFromFile(snd_stat);
|
||||
NetworkStats stats = new NetworkStats(SystemClock.elapsedRealtime(), 1);
|
||||
stats.addEntry(NetworkStats.IFACE_ALL, uid, NetworkStats.SET_DEFAULT,
|
||||
stats.insertEntry(NetworkStats.IFACE_ALL, uid, NetworkStats.SET_DEFAULT,
|
||||
NetworkStats.TAG_NONE, rx, 0, tx, 0, 0);
|
||||
return stats;
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ public class NetworkStatsBenchmark {
|
||||
recycle.txBytes = 150000;
|
||||
recycle.txPackets = 1500;
|
||||
recycle.operations = 0;
|
||||
mNetworkStats.addEntry(recycle);
|
||||
mNetworkStats.insertEntry(recycle);
|
||||
if (recycle.set == 1) {
|
||||
uid++;
|
||||
}
|
||||
@@ -70,7 +70,7 @@ public class NetworkStatsBenchmark {
|
||||
recycle.txBytes = 180000 * mSize;
|
||||
recycle.txPackets = 1200 * mSize;
|
||||
recycle.operations = 0;
|
||||
mNetworkStats.addEntry(recycle);
|
||||
mNetworkStats.insertEntry(recycle);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -229,7 +229,7 @@ public class NetworkStatsFactory {
|
||||
entry.txPackets += reader.nextLong();
|
||||
}
|
||||
|
||||
stats.addEntry(entry);
|
||||
stats.insertEntry(entry);
|
||||
reader.finishLine();
|
||||
}
|
||||
} catch (NullPointerException|NumberFormatException e) {
|
||||
@@ -279,7 +279,7 @@ public class NetworkStatsFactory {
|
||||
entry.txBytes = reader.nextLong();
|
||||
entry.txPackets = reader.nextLong();
|
||||
|
||||
stats.addEntry(entry);
|
||||
stats.insertEntry(entry);
|
||||
reader.finishLine();
|
||||
}
|
||||
} catch (NullPointerException|NumberFormatException e) {
|
||||
@@ -439,7 +439,7 @@ public class NetworkStatsFactory {
|
||||
if ((limitIfaces == null || ArrayUtils.contains(limitIfaces, entry.iface))
|
||||
&& (limitUid == UID_ALL || limitUid == entry.uid)
|
||||
&& (limitTag == TAG_ALL || limitTag == entry.tag)) {
|
||||
stats.addEntry(entry);
|
||||
stats.insertEntry(entry);
|
||||
}
|
||||
|
||||
reader.finishLine();
|
||||
|
||||
@@ -759,7 +759,7 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
|
||||
final NetworkStatsHistory.Entry entry = history.getValues(start, end, now, null);
|
||||
|
||||
final NetworkStats stats = new NetworkStats(end - start, 1);
|
||||
stats.addEntry(new NetworkStats.Entry(IFACE_ALL, UID_ALL, SET_ALL, TAG_NONE,
|
||||
stats.insertEntry(new NetworkStats.Entry(IFACE_ALL, UID_ALL, SET_ALL, TAG_NONE,
|
||||
METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, entry.rxBytes, entry.rxPackets,
|
||||
entry.txBytes, entry.txPackets, entry.operations));
|
||||
return stats;
|
||||
|
||||
@@ -1006,7 +1006,7 @@ public class NetworkPolicyManagerServiceTest {
|
||||
|
||||
// pretend that 512 bytes total have happened
|
||||
stats = new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 256L, 2L, 256L, 2L);
|
||||
.insertEntry(TEST_IFACE, 256L, 2L, 256L, 2L);
|
||||
when(mStatsService.getNetworkTotalBytes(sTemplateWifi, CYCLE_START, CYCLE_END))
|
||||
.thenReturn(stats.getTotalBytes());
|
||||
|
||||
@@ -1198,11 +1198,11 @@ public class NetworkPolicyManagerServiceTest {
|
||||
history.recordData(start, end,
|
||||
new NetworkStats.Entry(DataUnit.MEGABYTES.toBytes(1440), 0L, 0L, 0L, 0));
|
||||
stats.clear();
|
||||
stats.addEntry(IFACE_ALL, UID_A, SET_ALL, TAG_ALL,
|
||||
stats.insertEntry(IFACE_ALL, UID_A, SET_ALL, TAG_ALL,
|
||||
DataUnit.MEGABYTES.toBytes(480), 0, 0, 0, 0);
|
||||
stats.addEntry(IFACE_ALL, UID_B, SET_ALL, TAG_ALL,
|
||||
stats.insertEntry(IFACE_ALL, UID_B, SET_ALL, TAG_ALL,
|
||||
DataUnit.MEGABYTES.toBytes(480), 0, 0, 0, 0);
|
||||
stats.addEntry(IFACE_ALL, UID_C, SET_ALL, TAG_ALL,
|
||||
stats.insertEntry(IFACE_ALL, UID_C, SET_ALL, TAG_ALL,
|
||||
DataUnit.MEGABYTES.toBytes(480), 0, 0, 0, 0);
|
||||
|
||||
reset(mNotifManager);
|
||||
@@ -1226,9 +1226,9 @@ public class NetworkPolicyManagerServiceTest {
|
||||
history.recordData(start, end,
|
||||
new NetworkStats.Entry(DataUnit.MEGABYTES.toBytes(1440), 0L, 0L, 0L, 0));
|
||||
stats.clear();
|
||||
stats.addEntry(IFACE_ALL, UID_A, SET_ALL, TAG_ALL,
|
||||
stats.insertEntry(IFACE_ALL, UID_A, SET_ALL, TAG_ALL,
|
||||
DataUnit.MEGABYTES.toBytes(960), 0, 0, 0, 0);
|
||||
stats.addEntry(IFACE_ALL, UID_B, SET_ALL, TAG_ALL,
|
||||
stats.insertEntry(IFACE_ALL, UID_B, SET_ALL, TAG_ALL,
|
||||
DataUnit.MEGABYTES.toBytes(480), 0, 0, 0, 0);
|
||||
|
||||
reset(mNotifManager);
|
||||
@@ -1260,7 +1260,7 @@ public class NetworkPolicyManagerServiceTest {
|
||||
// bring up wifi network with metered policy
|
||||
state = new NetworkState[] { buildWifi() };
|
||||
stats = new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 0L, 0L, 0L, 0L);
|
||||
.insertEntry(TEST_IFACE, 0L, 0L, 0L, 0L);
|
||||
|
||||
{
|
||||
when(mConnManager.getAllNetworkState()).thenReturn(state);
|
||||
@@ -1692,7 +1692,7 @@ public class NetworkPolicyManagerServiceTest {
|
||||
final int CYCLE_DAY = 15;
|
||||
|
||||
final NetworkStats stats = new NetworkStats(0L, 1);
|
||||
stats.addEntry(TEST_IFACE, UID_A, SET_ALL, TAG_NONE,
|
||||
stats.insertEntry(TEST_IFACE, UID_A, SET_ALL, TAG_NONE,
|
||||
2999, 1, 2000, 1, 0);
|
||||
when(mStatsService.getNetworkTotalBytes(any(), anyLong(), anyLong()))
|
||||
.thenReturn(stats.getTotalBytes());
|
||||
@@ -1716,7 +1716,7 @@ public class NetworkPolicyManagerServiceTest {
|
||||
reset(mStatsService);
|
||||
|
||||
// Increase the usage.
|
||||
stats.addEntry(TEST_IFACE, UID_A, SET_ALL, TAG_NONE,
|
||||
stats.insertEntry(TEST_IFACE, UID_A, SET_ALL, TAG_NONE,
|
||||
1000, 1, 999, 1, 0);
|
||||
when(mStatsService.getNetworkTotalBytes(any(), anyLong(), anyLong()))
|
||||
.thenReturn(stats.getTotalBytes());
|
||||
|
||||
@@ -64,15 +64,15 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testFindIndex() throws Exception {
|
||||
final NetworkStats stats = new NetworkStats(TEST_START, 5)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 1024L, 8L, 0L, 0L, 10)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 0L, 0L, 1024L, 8L, 11)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 0L, 0L, 1024L, 8L, 11)
|
||||
.addEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 1024L, 8L, 1024L, 8L, 12)
|
||||
.addEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
.insertEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 1024L, 8L, 1024L, 8L, 12);
|
||||
|
||||
assertEquals(4, stats.findIndex(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, METERED_YES,
|
||||
@@ -94,21 +94,21 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testFindIndexHinted() {
|
||||
final NetworkStats stats = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 1024L, 8L, 0L, 0L, 10)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 0L, 0L, 1024L, 8L, 11)
|
||||
.addEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 1024L, 8L, 1024L, 8L, 12)
|
||||
.addEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 1024L, 8L, 0L, 0L, 10)
|
||||
.addEntry(TEST_IFACE2, 101, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 101, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 0L, 0L, 1024L, 8L, 11)
|
||||
.addEntry(TEST_IFACE2, 101, SET_DEFAULT, 0xF00D, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 101, SET_DEFAULT, 0xF00D, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 0L, 0L, 1024L, 8L, 11)
|
||||
.addEntry(TEST_IFACE2, 102, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 102, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 1024L, 8L, 1024L, 8L, 12)
|
||||
.addEntry(TEST_IFACE2, 102, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
.insertEntry(TEST_IFACE2, 102, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
DEFAULT_NETWORK_NO, 1024L, 8L, 1024L, 8L, 12);
|
||||
|
||||
// verify that we correctly find across regardless of hinting
|
||||
@@ -143,27 +143,27 @@ public class NetworkStatsTest {
|
||||
assertEquals(0, stats.size());
|
||||
assertEquals(4, stats.internalSize());
|
||||
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 1L, 1L, 2L, 2L, 3);
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 2L, 2L, 2L, 2L, 4);
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 3L, 3L, 2L, 2L, 5);
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
DEFAULT_NETWORK_NO, 3L, 3L, 2L, 2L, 5);
|
||||
|
||||
assertEquals(4, stats.size());
|
||||
assertEquals(4, stats.internalSize());
|
||||
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 4L, 40L, 4L, 40L, 7);
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 5L, 50L, 4L, 40L, 8);
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 6L, 60L, 5L, 50L, 10);
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 7L, 70L, 5L, 50L, 11);
|
||||
stats.addEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
stats.insertEntry(TEST_IFACE, TEST_UID, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
DEFAULT_NETWORK_NO, 7L, 70L, 5L, 50L, 11);
|
||||
|
||||
assertEquals(9, stats.size());
|
||||
@@ -193,8 +193,8 @@ public class NetworkStatsTest {
|
||||
public void testCombineExisting() throws Exception {
|
||||
final NetworkStats stats = new NetworkStats(TEST_START, 10);
|
||||
|
||||
stats.addEntry(TEST_IFACE, 1001, SET_DEFAULT, TAG_NONE, 512L, 4L, 256L, 2L, 10);
|
||||
stats.addEntry(TEST_IFACE, 1001, SET_DEFAULT, 0xff, 128L, 1L, 128L, 1L, 2);
|
||||
stats.insertEntry(TEST_IFACE, 1001, SET_DEFAULT, TAG_NONE, 512L, 4L, 256L, 2L, 10);
|
||||
stats.insertEntry(TEST_IFACE, 1001, SET_DEFAULT, 0xff, 128L, 1L, 128L, 1L, 2);
|
||||
stats.combineValues(TEST_IFACE, 1001, SET_DEFAULT, TAG_NONE, -128L, -1L,
|
||||
-128L, -1L, -1);
|
||||
|
||||
@@ -215,12 +215,12 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testSubtractIdenticalData() throws Exception {
|
||||
final NetworkStats before = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
|
||||
final NetworkStats after = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
|
||||
final NetworkStats result = after.subtract(before);
|
||||
|
||||
@@ -234,12 +234,12 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testSubtractIdenticalRows() throws Exception {
|
||||
final NetworkStats before = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
|
||||
final NetworkStats after = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1025L, 9L, 2L, 1L, 15)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 3L, 1L, 1028L, 9L, 20);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1025L, 9L, 2L, 1L, 15)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 3L, 1L, 1028L, 9L, 20);
|
||||
|
||||
final NetworkStats result = after.subtract(before);
|
||||
|
||||
@@ -253,13 +253,13 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testSubtractNewRows() throws Exception {
|
||||
final NetworkStats before = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12);
|
||||
|
||||
final NetworkStats after = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12)
|
||||
.addEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 20);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 1024L, 8L, 0L, 0L, 11)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 0L, 0L, 1024L, 8L, 12)
|
||||
.insertEntry(TEST_IFACE, 102, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 20);
|
||||
|
||||
final NetworkStats result = after.subtract(before);
|
||||
|
||||
@@ -275,11 +275,11 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testSubtractMissingRows() throws Exception {
|
||||
final NetworkStats before = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, UID_ALL, SET_DEFAULT, TAG_NONE, 1024L, 0L, 0L, 0L, 0)
|
||||
.addEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, 2048L, 0L, 0L, 0L, 0);
|
||||
.insertEntry(TEST_IFACE, UID_ALL, SET_DEFAULT, TAG_NONE, 1024L, 0L, 0L, 0L, 0)
|
||||
.insertEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, 2048L, 0L, 0L, 0L, 0);
|
||||
|
||||
final NetworkStats after = new NetworkStats(TEST_START, 1)
|
||||
.addEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, 2049L, 2L, 3L, 4L, 0);
|
||||
.insertEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, 2049L, 2L, 3L, 4L, 0);
|
||||
|
||||
final NetworkStats result = after.subtract(before);
|
||||
|
||||
@@ -293,40 +293,40 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testTotalBytes() throws Exception {
|
||||
final NetworkStats iface = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, UID_ALL, SET_DEFAULT, TAG_NONE, 128L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, 256L, 0L, 0L, 0L, 0L);
|
||||
.insertEntry(TEST_IFACE, UID_ALL, SET_DEFAULT, TAG_NONE, 128L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, 256L, 0L, 0L, 0L, 0L);
|
||||
assertEquals(384L, iface.getTotalBytes());
|
||||
|
||||
final NetworkStats uidSet = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_FOREGROUND, TAG_NONE, 32L, 0L, 0L, 0L, 0L);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 32L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 32L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE, 101, SET_FOREGROUND, TAG_NONE, 32L, 0L, 0L, 0L, 0L);
|
||||
assertEquals(96L, uidSet.getTotalBytes());
|
||||
|
||||
final NetworkStats uidTag = new NetworkStats(TEST_START, 6)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, 8L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, 8L, 0L, 0L, 0L, 0L);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, 8L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 16L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, 8L, 0L, 0L, 0L, 0L);
|
||||
assertEquals(64L, uidTag.getTotalBytes());
|
||||
|
||||
final NetworkStats uidMetered = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L);
|
||||
assertEquals(96L, uidMetered.getTotalBytes());
|
||||
|
||||
final NetworkStats uidRoaming = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L);
|
||||
assertEquals(96L, uidRoaming.getTotalBytes());
|
||||
}
|
||||
@@ -343,11 +343,11 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testGroupedByIfaceAll() throws Exception {
|
||||
final NetworkStats uidStats = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(IFACE_ALL, 100, SET_ALL, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(IFACE_ALL, 100, SET_ALL, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 8L, 0L, 2L, 20L)
|
||||
.addEntry(IFACE_ALL, 101, SET_FOREGROUND, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(IFACE_ALL, 101, SET_FOREGROUND, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 128L, 8L, 0L, 2L, 20L)
|
||||
.addEntry(IFACE_ALL, 101, SET_ALL, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
.insertEntry(IFACE_ALL, 101, SET_ALL, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 128L, 8L, 0L, 2L, 20L);
|
||||
final NetworkStats grouped = uidStats.groupedByIface();
|
||||
|
||||
@@ -361,19 +361,19 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testGroupedByIface() throws Exception {
|
||||
final NetworkStats uidStats = new NetworkStats(TEST_START, 7)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 8L, 0L, 2L, 20L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 512L, 32L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 64L, 4L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 512L, 32L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 8L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 128L, 8L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 128L, 8L, 0L, 0L, 0L);
|
||||
|
||||
final NetworkStats grouped = uidStats.groupedByIface();
|
||||
@@ -390,19 +390,19 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testAddAllValues() {
|
||||
final NetworkStats first = new NetworkStats(TEST_START, 5)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 100, SET_FOREGROUND, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
.insertEntry(TEST_IFACE, 100, SET_FOREGROUND, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L);
|
||||
|
||||
final NetworkStats second = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, UID_ALL, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 32L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 100, SET_FOREGROUND, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
.insertEntry(TEST_IFACE, 100, SET_FOREGROUND, TAG_NONE, METERED_YES, ROAMING_YES,
|
||||
DEFAULT_NETWORK_YES, 32L, 0L, 0L, 0L, 0L);
|
||||
|
||||
first.combineAllValues(second);
|
||||
@@ -421,19 +421,19 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testGetTotal() {
|
||||
final NetworkStats stats = new NetworkStats(TEST_START, 7)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 8L, 0L, 2L, 20L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 512L, 32L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 64L, 4L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 512L,32L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 8L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 128L, 8L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_YES,
|
||||
DEFAULT_NETWORK_NO, 128L, 8L, 0L, 0L, 0L);
|
||||
|
||||
assertValues(stats.getTotal(null), 1408L, 88L, 0L, 2L, 20L);
|
||||
@@ -459,7 +459,7 @@ public class NetworkStatsTest {
|
||||
assertEquals(0, after.size());
|
||||
|
||||
// Test 1 item stats.
|
||||
before.addEntry(TEST_IFACE, 99, SET_DEFAULT, TAG_NONE, 1L, 128L, 0L, 2L, 20L);
|
||||
before.insertEntry(TEST_IFACE, 99, SET_DEFAULT, TAG_NONE, 1L, 128L, 0L, 2L, 20L);
|
||||
after = before.clone();
|
||||
after.removeUids(new int[0]);
|
||||
assertEquals(1, after.size());
|
||||
@@ -469,12 +469,12 @@ public class NetworkStatsTest {
|
||||
assertEquals(0, after.size());
|
||||
|
||||
// Append remaining test items.
|
||||
before.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 2L, 64L, 0L, 2L, 20L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 4L, 32L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, 8L, 16L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, 16L, 8L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 32L, 4L, 0L, 0L, 0L)
|
||||
.addEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, 64L, 2L, 0L, 0L, 0L);
|
||||
before.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 2L, 64L, 0L, 2L, 20L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 4L, 32L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, 0xF00D, 8L, 16L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_FOREGROUND, TAG_NONE, 16L, 8L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 32L, 4L, 0L, 0L, 0L)
|
||||
.insertEntry(TEST_IFACE, 101, SET_DEFAULT, 0xF00D, 64L, 2L, 0L, 0L, 0L);
|
||||
assertEquals(7, before.size());
|
||||
|
||||
// Test remove with empty uid list.
|
||||
@@ -505,12 +505,12 @@ public class NetworkStatsTest {
|
||||
@Test
|
||||
public void testClone() throws Exception {
|
||||
final NetworkStats original = new NetworkStats(TEST_START, 5)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 128L, 8L, 0L, 2L, 20L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 512L, 32L, 0L, 0L, 0L);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 128L, 8L, 0L, 2L, 20L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 512L, 32L, 0L, 0L, 0L);
|
||||
|
||||
// make clone and mutate original
|
||||
final NetworkStats clone = original.clone();
|
||||
original.addEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 128L, 8L, 0L, 0L, 0L);
|
||||
original.insertEntry(TEST_IFACE, 101, SET_DEFAULT, TAG_NONE, 128L, 8L, 0L, 0L, 0L);
|
||||
|
||||
assertEquals(3, original.size());
|
||||
assertEquals(2, clone.size());
|
||||
@@ -523,8 +523,8 @@ public class NetworkStatsTest {
|
||||
public void testAddWhenEmpty() throws Exception {
|
||||
final NetworkStats red = new NetworkStats(TEST_START, -1);
|
||||
final NetworkStats blue = new NetworkStats(TEST_START, 5)
|
||||
.addEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 128L, 8L, 0L, 2L, 20L)
|
||||
.addEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 512L, 32L, 0L, 0L, 0L);
|
||||
.insertEntry(TEST_IFACE, 100, SET_DEFAULT, TAG_NONE, 128L, 8L, 0L, 2L, 20L)
|
||||
.insertEntry(TEST_IFACE2, 100, SET_DEFAULT, TAG_NONE, 512L, 32L, 0L, 0L, 0L);
|
||||
|
||||
// We're mostly checking that we don't crash
|
||||
red.combineAllValues(blue);
|
||||
@@ -537,37 +537,37 @@ public class NetworkStatsTest {
|
||||
final String underlyingIface = "wlan0";
|
||||
final int testTag1 = 8888;
|
||||
NetworkStats delta = new NetworkStats(TEST_START, 17)
|
||||
.addEntry(tunIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 39605L, 46L, 12259L, 55L, 0L)
|
||||
.addEntry(tunIface, 10100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 10100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 0L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(tunIface, 10120, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 10120, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 72667L, 197L, 43909L, 241L, 0L)
|
||||
.addEntry(tunIface, 10120, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 10120, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 9297L, 17L, 4128L, 21L, 0L)
|
||||
// VPN package also uses some traffic through unprotected network.
|
||||
.addEntry(tunIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 4983L, 10L, 1801L, 12L, 0L)
|
||||
.addEntry(tunIface, tunUid, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, tunUid, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 0L, 0L, 0L, 0L, 0L)
|
||||
// Tag entries
|
||||
.addEntry(tunIface, 10120, SET_DEFAULT, testTag1, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 10120, SET_DEFAULT, testTag1, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 21691L, 41L, 13820L, 51L, 0L)
|
||||
.addEntry(tunIface, 10120, SET_FOREGROUND, testTag1, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 10120, SET_FOREGROUND, testTag1, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 1281L, 2L, 665L, 2L, 0L)
|
||||
// Irrelevant entries
|
||||
.addEntry(TEST_IFACE, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 1685L, 5L, 2070L, 6L, 0L)
|
||||
// Underlying Iface entries
|
||||
.addEntry(underlyingIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(underlyingIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 5178L, 8L, 2139L, 11L, 0L)
|
||||
.addEntry(underlyingIface, 10100, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 0L, 0L, 0L, 0L, 0L)
|
||||
.addEntry(underlyingIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(underlyingIface, 10100, SET_FOREGROUND, TAG_NONE, METERED_NO,
|
||||
ROAMING_NO, DEFAULT_NETWORK_NO, 0L, 0L, 0L, 0L, 0L)
|
||||
.insertEntry(underlyingIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 149873L, 287L, 59217L /* smaller than sum(tun0) */,
|
||||
299L /* smaller than sum(tun0) */, 0L)
|
||||
.addEntry(underlyingIface, tunUid, SET_FOREGROUND, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 0L, 0L, 0L, 0L, 0L);
|
||||
.insertEntry(underlyingIface, tunUid, SET_FOREGROUND, TAG_NONE, METERED_NO,
|
||||
ROAMING_NO, DEFAULT_NETWORK_NO, 0L, 0L, 0L, 0L, 0L);
|
||||
|
||||
delta.migrateTun(tunUid, tunIface, new String[]{underlyingIface});
|
||||
assertEquals(20, delta.size());
|
||||
@@ -635,19 +635,19 @@ public class NetworkStatsTest {
|
||||
final String underlyingIface = "wlan0";
|
||||
NetworkStats delta = new NetworkStats(TEST_START, 9)
|
||||
// 2 different apps sent/receive data via tun0.
|
||||
.addEntry(tunIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L)
|
||||
.addEntry(tunIface, 20100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, 20100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 500L, 2L, 200L, 5L, 0L)
|
||||
// VPN package resends data through the tunnel (with exaggerated overhead)
|
||||
.addEntry(tunIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(tunIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 240000, 100L, 120000L, 60L, 0L)
|
||||
// 1 app already has some traffic on the underlying interface, the other doesn't yet
|
||||
.addEntry(underlyingIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(underlyingIface, 10100, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 1000L, 10L, 2000L, 20L, 0L)
|
||||
// Traffic through the underlying interface via the vpn app.
|
||||
// This test should redistribute this data correctly.
|
||||
.addEntry(underlyingIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(underlyingIface, tunUid, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 75500L, 37L, 130000L, 70L, 0L);
|
||||
|
||||
delta.migrateTun(tunUid, tunIface, new String[]{underlyingIface});
|
||||
@@ -697,9 +697,9 @@ public class NetworkStatsTest {
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L);
|
||||
|
||||
NetworkStats stats = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(entry1)
|
||||
.addEntry(entry2)
|
||||
.addEntry(entry3);
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2)
|
||||
.insertEntry(entry3);
|
||||
|
||||
stats.filter(UID_ALL, INTERFACES_ALL, TAG_ALL);
|
||||
assertEquals(3, stats.size());
|
||||
@@ -724,9 +724,9 @@ public class NetworkStatsTest {
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L);
|
||||
|
||||
NetworkStats stats = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(entry1)
|
||||
.addEntry(entry2)
|
||||
.addEntry(entry3);
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2)
|
||||
.insertEntry(entry3);
|
||||
|
||||
stats.filter(testUid, INTERFACES_ALL, TAG_ALL);
|
||||
assertEquals(2, stats.size());
|
||||
@@ -755,10 +755,10 @@ public class NetworkStatsTest {
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L);
|
||||
|
||||
NetworkStats stats = new NetworkStats(TEST_START, 4)
|
||||
.addEntry(entry1)
|
||||
.addEntry(entry2)
|
||||
.addEntry(entry3)
|
||||
.addEntry(entry4);
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2)
|
||||
.insertEntry(entry3)
|
||||
.insertEntry(entry4);
|
||||
|
||||
stats.filter(UID_ALL, new String[] { testIf1, testIf2 }, TAG_ALL);
|
||||
assertEquals(3, stats.size());
|
||||
@@ -778,8 +778,8 @@ public class NetworkStatsTest {
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L);
|
||||
|
||||
NetworkStats stats = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(entry1)
|
||||
.addEntry(entry2);
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2);
|
||||
|
||||
stats.filter(UID_ALL, new String[] { }, TAG_ALL);
|
||||
assertEquals(0, stats.size());
|
||||
@@ -802,9 +802,9 @@ public class NetworkStatsTest {
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L);
|
||||
|
||||
NetworkStats stats = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(entry1)
|
||||
.addEntry(entry2)
|
||||
.addEntry(entry3);
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2)
|
||||
.insertEntry(entry3);
|
||||
|
||||
stats.filter(UID_ALL, INTERFACES_ALL, testTag);
|
||||
assertEquals(2, stats.size());
|
||||
@@ -831,10 +831,10 @@ public class NetworkStatsTest {
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L);
|
||||
|
||||
NetworkStats stats = new NetworkStats(TEST_START, 4)
|
||||
.addEntry(entry1)
|
||||
.addEntry(entry2)
|
||||
.addEntry(entry3)
|
||||
.addEntry(entry4);
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2)
|
||||
.insertEntry(entry3)
|
||||
.insertEntry(entry4);
|
||||
|
||||
stats.filterDebugEntries();
|
||||
|
||||
@@ -891,14 +891,14 @@ public class NetworkStatsTest {
|
||||
0 /* operations */);
|
||||
|
||||
final NetworkStats statsXt = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(appEntry)
|
||||
.addEntry(xtRootUidEntry)
|
||||
.addEntry(otherEntry);
|
||||
.insertEntry(appEntry)
|
||||
.insertEntry(xtRootUidEntry)
|
||||
.insertEntry(otherEntry);
|
||||
|
||||
final NetworkStats statsEbpf = new NetworkStats(TEST_START, 3)
|
||||
.addEntry(appEntry)
|
||||
.addEntry(ebpfRootUidEntry)
|
||||
.addEntry(otherEntry);
|
||||
.insertEntry(appEntry)
|
||||
.insertEntry(ebpfRootUidEntry)
|
||||
.insertEntry(otherEntry);
|
||||
|
||||
statsXt.apply464xlatAdjustments(stackedIface, false);
|
||||
statsEbpf.apply464xlatAdjustments(stackedIface, true);
|
||||
@@ -945,8 +945,8 @@ public class NetworkStatsTest {
|
||||
0 /* operations */);
|
||||
|
||||
NetworkStats stats = new NetworkStats(TEST_START, 2)
|
||||
.addEntry(firstEntry)
|
||||
.addEntry(secondEntry);
|
||||
.insertEntry(firstEntry)
|
||||
.insertEntry(secondEntry);
|
||||
|
||||
// Empty map: no adjustment
|
||||
stats.apply464xlatAdjustments(new ArrayMap<>(), false);
|
||||
|
||||
@@ -240,7 +240,7 @@ public class NetworkStatsObserversTest {
|
||||
|
||||
// Baseline
|
||||
NetworkStats xtSnapshot = new NetworkStats(TEST_START, 1 /* initialSize */)
|
||||
.addIfaceValues(TEST_IFACE, BASE_BYTES, 8L, BASE_BYTES, 16L);
|
||||
.insertEntry(TEST_IFACE, BASE_BYTES, 8L, BASE_BYTES, 16L);
|
||||
NetworkStats uidSnapshot = null;
|
||||
|
||||
mStatsObservers.updateStats(
|
||||
@@ -264,14 +264,14 @@ public class NetworkStatsObserversTest {
|
||||
|
||||
// Baseline
|
||||
NetworkStats xtSnapshot = new NetworkStats(TEST_START, 1 /* initialSize */)
|
||||
.addIfaceValues(TEST_IFACE, BASE_BYTES, 8L, BASE_BYTES, 16L);
|
||||
.insertEntry(TEST_IFACE, BASE_BYTES, 8L, BASE_BYTES, 16L);
|
||||
NetworkStats uidSnapshot = null;
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
|
||||
// Delta
|
||||
xtSnapshot = new NetworkStats(TEST_START, 1 /* initialSize */)
|
||||
.addIfaceValues(TEST_IFACE, BASE_BYTES + 1024L, 10L, BASE_BYTES + 2048L, 20L);
|
||||
.insertEntry(TEST_IFACE, BASE_BYTES + 1024L, 10L, BASE_BYTES + 2048L, 20L);
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
waitForObserverToIdle();
|
||||
@@ -294,14 +294,14 @@ public class NetworkStatsObserversTest {
|
||||
|
||||
// Baseline
|
||||
NetworkStats xtSnapshot = new NetworkStats(TEST_START, 1 /* initialSize */)
|
||||
.addIfaceValues(TEST_IFACE, BASE_BYTES, 8L, BASE_BYTES, 16L);
|
||||
.insertEntry(TEST_IFACE, BASE_BYTES, 8L, BASE_BYTES, 16L);
|
||||
NetworkStats uidSnapshot = null;
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
|
||||
// Delta
|
||||
xtSnapshot = new NetworkStats(TEST_START + MINUTE_IN_MILLIS, 1 /* initialSize */)
|
||||
.addIfaceValues(TEST_IFACE, BASE_BYTES + THRESHOLD_BYTES, 12L,
|
||||
.insertEntry(TEST_IFACE, BASE_BYTES + THRESHOLD_BYTES, 12L,
|
||||
BASE_BYTES + THRESHOLD_BYTES, 22L);
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
@@ -326,14 +326,14 @@ public class NetworkStatsObserversTest {
|
||||
// Baseline
|
||||
NetworkStats xtSnapshot = null;
|
||||
NetworkStats uidSnapshot = new NetworkStats(TEST_START, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, BASE_BYTES, 2L, BASE_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
|
||||
// Delta
|
||||
uidSnapshot = new NetworkStats(TEST_START + 2 * MINUTE_IN_MILLIS, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, BASE_BYTES + THRESHOLD_BYTES, 2L,
|
||||
BASE_BYTES + THRESHOLD_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
@@ -359,14 +359,14 @@ public class NetworkStatsObserversTest {
|
||||
// Baseline
|
||||
NetworkStats xtSnapshot = null;
|
||||
NetworkStats uidSnapshot = new NetworkStats(TEST_START, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, BASE_BYTES, 2L, BASE_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
|
||||
// Delta
|
||||
uidSnapshot = new NetworkStats(TEST_START + 2 * MINUTE_IN_MILLIS, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, BASE_BYTES + THRESHOLD_BYTES, 2L,
|
||||
BASE_BYTES + THRESHOLD_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
@@ -391,14 +391,14 @@ public class NetworkStatsObserversTest {
|
||||
// Baseline
|
||||
NetworkStats xtSnapshot = null;
|
||||
NetworkStats uidSnapshot = new NetworkStats(TEST_START, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, BASE_BYTES, 2L, BASE_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
|
||||
// Delta
|
||||
uidSnapshot = new NetworkStats(TEST_START + 2 * MINUTE_IN_MILLIS, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, BASE_BYTES + THRESHOLD_BYTES, 2L,
|
||||
BASE_BYTES + THRESHOLD_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
@@ -424,14 +424,14 @@ public class NetworkStatsObserversTest {
|
||||
// Baseline
|
||||
NetworkStats xtSnapshot = null;
|
||||
NetworkStats uidSnapshot = new NetworkStats(TEST_START, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_ANOTHER_USER, SET_DEFAULT, TAG_NONE, METERED_NO,
|
||||
.insertEntry(TEST_IFACE, UID_ANOTHER_USER, SET_DEFAULT, TAG_NONE, METERED_NO,
|
||||
ROAMING_NO, DEFAULT_NETWORK_YES, BASE_BYTES, 2L, BASE_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
xtSnapshot, uidSnapshot, mActiveIfaces, mActiveUidIfaces, TEST_START);
|
||||
|
||||
// Delta
|
||||
uidSnapshot = new NetworkStats(TEST_START + 2 * MINUTE_IN_MILLIS, 2 /* initialSize */)
|
||||
.addEntry(TEST_IFACE, UID_ANOTHER_USER, SET_DEFAULT, TAG_NONE, METERED_NO,
|
||||
.insertEntry(TEST_IFACE, UID_ANOTHER_USER, SET_DEFAULT, TAG_NONE, METERED_NO,
|
||||
ROAMING_NO, DEFAULT_NETWORK_NO, BASE_BYTES + THRESHOLD_BYTES, 2L,
|
||||
BASE_BYTES + THRESHOLD_BYTES, 2L, 0L);
|
||||
mStatsObservers.updateStats(
|
||||
|
||||
@@ -263,7 +263,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 1024L, 1L, 2048L, 2L));
|
||||
.insertEntry(TEST_IFACE, 1024L, 1L, 2048L, 2L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
@@ -276,7 +276,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(DAY_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 4096L, 4L, 8192L, 8L));
|
||||
.insertEntry(TEST_IFACE, 4096L, 4L, 8192L, 8L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
@@ -306,13 +306,13 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 1024L, 8L, 2048L, 16L));
|
||||
.insertEntry(TEST_IFACE, 1024L, 8L, 2048L, 16L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 2)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 512L, 4L, 256L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xFAAD, 256L, 2L, 128L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, TAG_NONE, 512L, 4L, 256L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, 0xFAAD, 256L, 2L, 128L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 128L, 1L, 128L, 1L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 512L, 4L, 256L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xFAAD, 256L, 2L, 128L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, TAG_NONE, 512L, 4L, 256L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, 0xFAAD, 256L, 2L, 128L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 128L, 1L, 128L, 1L, 0L));
|
||||
mService.setUidForeground(UID_RED, false);
|
||||
mService.incrementOperationCount(UID_RED, 0xFAAD, 4);
|
||||
mService.setUidForeground(UID_RED, true);
|
||||
@@ -375,7 +375,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(2 * HOUR_IN_MILLIS);
|
||||
expectSettings(0L, HOUR_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 512L, 4L, 512L, 4L));
|
||||
.insertEntry(TEST_IFACE, 512L, 4L, 512L, 4L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
@@ -415,11 +415,11 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 2048L, 16L, 512L, 4L));
|
||||
.insertEntry(TEST_IFACE, 2048L, 16L, 512L, 4L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1536L, 12L, 512L, 4L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 512L, 4L, 0L, 0L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1536L, 12L, 512L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 512L, 4L, 0L, 0L, 0L));
|
||||
mService.incrementOperationCount(UID_RED, 0xF00D, 10);
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -437,11 +437,11 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
states = new NetworkState[] {buildMobile3gState(IMSI_2)};
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 2048L, 16L, 512L, 4L));
|
||||
.insertEntry(TEST_IFACE, 2048L, 16L, 512L, 4L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1536L, 12L, 512L, 4L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 512L, 4L, 0L, 0L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1536L, 12L, 512L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 512L, 4L, 0L, 0L, 0L));
|
||||
|
||||
mService.forceUpdateIfaces(NETWORKS_MOBILE, states, getActiveIface(states), new VpnInfo[0]);
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -451,12 +451,12 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 2176L, 17L, 1536L, 12L));
|
||||
.insertEntry(TEST_IFACE, 2176L, 17L, 1536L, 12L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1536L, 12L, 512L, 4L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 640L, 5L, 1024L, 8L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, 0xFAAD, 128L, 1L, 1024L, 8L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1536L, 12L, 512L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 640L, 5L, 1024L, 8L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, 0xFAAD, 128L, 1L, 1024L, 8L, 0L));
|
||||
mService.incrementOperationCount(UID_BLUE, 0xFAAD, 10);
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -488,12 +488,13 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 4128L, 258L, 544L, 34L));
|
||||
.insertEntry(TEST_IFACE, 4128L, 258L, 544L, 34L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xFAAD, 16L, 1L, 16L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 4096L, 258L, 512L, 32L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_GREEN, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xFAAD, 16L, 1L, 16L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE,
|
||||
4096L, 258L, 512L, 32L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_GREEN, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L));
|
||||
mService.incrementOperationCount(UID_RED, 0xFAAD, 10);
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -509,12 +510,13 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// special "removed" bucket.
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 4128L, 258L, 544L, 34L));
|
||||
.insertEntry(TEST_IFACE, 4128L, 258L, 544L, 34L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xFAAD, 16L, 1L, 16L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 4096L, 258L, 512L, 32L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_GREEN, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xFAAD, 16L, 1L, 16L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE,
|
||||
4096L, 258L, 512L, 32L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_GREEN, SET_DEFAULT, TAG_NONE, 16L, 1L, 16L, 1L, 0L));
|
||||
final Intent intent = new Intent(ACTION_UID_REMOVED);
|
||||
intent.putExtra(EXTRA_UID, UID_BLUE);
|
||||
mServiceContext.sendBroadcast(intent);
|
||||
@@ -546,8 +548,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L));
|
||||
mService.incrementOperationCount(UID_RED, 0xF00D, 5);
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -562,8 +564,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
states = new NetworkState[] {buildMobile4gState(TEST_IFACE2)};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L));
|
||||
|
||||
mService.forceUpdateIfaces(NETWORKS_MOBILE, states, getActiveIface(states), new VpnInfo[0]);
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -574,10 +576,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.addEntry(TEST_IFACE2, UID_RED, SET_DEFAULT, TAG_NONE, 512L, 4L, 256L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE2, UID_RED, SET_DEFAULT, 0xFAAD, 512L, 4L, 256L, 2L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 1024L, 8L, 1024L, 8L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 512L, 4L, 512L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE2, UID_RED, SET_DEFAULT, TAG_NONE, 512L, 4L, 256L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE2, UID_RED, SET_DEFAULT, 0xFAAD, 512L, 4L, 256L, 2L, 0L));
|
||||
mService.incrementOperationCount(UID_RED, 0xFAAD, 5);
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -601,9 +603,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 50L, 5L, 50L, 5L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 10L, 1L, 10L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 1024L, 8L, 512L, 4L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 50L, 5L, 50L, 5L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 10L, 1L, 10L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 1024L, 8L, 512L, 4L, 0L));
|
||||
mService.incrementOperationCount(UID_RED, 0xF00D, 1);
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -618,9 +620,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 50L, 5L, 50L, 5L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 10L, 1L, 10L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 2048L, 16L, 1024L, 8L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 50L, 5L, 50L, 5L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 10L, 1L, 10L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE,
|
||||
2048L, 16L, 1024L, 8L, 0L));
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// first verify entire history present
|
||||
@@ -664,9 +667,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
.addEntry(entry1)
|
||||
.addEntry(entry2)
|
||||
.addEntry(entry3));
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2)
|
||||
.insertEntry(entry3));
|
||||
mService.incrementOperationCount(UID_RED, 0xF00D, 1);
|
||||
|
||||
NetworkStats stats = mService.getDetailedUidStats(INTERFACES_ALL);
|
||||
@@ -714,11 +717,11 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
.thenReturn(augmentedIfaceFilter);
|
||||
when(mStatsFactory.readNetworkStatsDetail(eq(UID_ALL), any(), eq(TAG_ALL)))
|
||||
.thenReturn(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(uidStats));
|
||||
.insertEntry(uidStats));
|
||||
when(mNetManager.getNetworkStatsTethering(STATS_PER_UID))
|
||||
.thenReturn(new NetworkStats(getElapsedRealtime(), 2)
|
||||
.addEntry(tetheredStats1)
|
||||
.addEntry(tetheredStats2));
|
||||
.insertEntry(tetheredStats1)
|
||||
.insertEntry(tetheredStats2));
|
||||
|
||||
NetworkStats stats = mService.getDetailedUidStats(ifaceFilter);
|
||||
|
||||
@@ -755,8 +758,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 128L, 2L, 128L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 64L, 1L, 64L, 1L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 128L, 2L, 128L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 64L, 1L, 64L, 1L, 0L));
|
||||
mService.incrementOperationCount(UID_RED, 0xF00D, 1);
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -770,10 +773,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 128L, 2L, 128L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 64L, 1L, 64L, 1L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, TAG_NONE, 32L, 2L, 32L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, 0xFAAD, 1L, 1L, 1L, 1L, 0L));
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 128L, 2L, 128L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, 64L, 1L, 64L, 1L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, TAG_NONE, 32L, 2L, 32L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_FOREGROUND, 0xFAAD, 1L, 1L, 1L, 1L, 0L));
|
||||
mService.setUidForeground(UID_RED, true);
|
||||
mService.incrementOperationCount(UID_RED, 0xFAAD, 1);
|
||||
|
||||
@@ -814,9 +817,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// and DEFAULT_NETWORK_YES, because these three properties aren't tracked at that layer.
|
||||
// We layer them on top by inspecting the iface properties.
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 2L, 128L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 64L, 1L, 64L, 1L, 0L));
|
||||
mService.incrementOperationCount(UID_RED, 0xF00D, 1);
|
||||
|
||||
@@ -853,9 +856,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// ROAMING_NO, because metered and roaming isn't tracked at that layer. We layer it
|
||||
// on top by inspecting the iface properties.
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_ALL, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_ALL, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 2L, 128L, 2L, 0L)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, METERED_ALL, ROAMING_NO,
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, METERED_ALL, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 64L, 1L, 64L, 1L, 0L));
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
@@ -888,17 +891,17 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// Traffic seen by kernel counters (includes software tethering).
|
||||
final NetworkStats ifaceStats = new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 1536L, 12L, 384L, 3L);
|
||||
.insertEntry(TEST_IFACE, 1536L, 12L, 384L, 3L);
|
||||
// Hardware tethering traffic, not seen by kernel counters.
|
||||
final NetworkStats tetherStatsHardware = new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 512L, 4L, 128L, 1L);
|
||||
.insertEntry(TEST_IFACE, 512L, 4L, 128L, 1L);
|
||||
|
||||
// Traffic for UID_RED.
|
||||
final NetworkStats uidStats = new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 128L, 2L, 128L, 2L, 0L);
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, 128L, 2L, 128L, 2L, 0L);
|
||||
// All tethering traffic, both hardware and software.
|
||||
final NetworkStats tetherStats = new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(TEST_IFACE, UID_TETHERING, SET_DEFAULT, TAG_NONE, 1920L, 14L, 384L, 2L,
|
||||
.insertEntry(TEST_IFACE, UID_TETHERING, SET_DEFAULT, TAG_NONE, 1920L, 14L, 384L, 2L,
|
||||
0L);
|
||||
|
||||
expectNetworkStatsSummary(ifaceStats, tetherStatsHardware);
|
||||
@@ -957,7 +960,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 1024L, 1L, 2048L, 2L));
|
||||
.insertEntry(TEST_IFACE, 1024L, 1L, 2048L, 2L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
@@ -972,7 +975,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
incrementCurrentTime(DAY_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addIfaceValues(TEST_IFACE, 4096000L, 4L, 8192000L, 8L));
|
||||
.insertEntry(TEST_IFACE, 4096000L, 4L, 8192000L, 8L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user