Merge "Rename expect* methods that are used in NetworkStatsServiceTest"
This commit is contained in:
@@ -355,9 +355,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
mElapsedRealtime = 0L;
|
||||
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
expectSystemReady();
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
prepareForSystemReady();
|
||||
mService.systemReady();
|
||||
// Verify that system ready fetches realtime stats
|
||||
verify(mStatsFactory).readNetworkStatsDetail(UID_ALL, INTERFACES_ALL, TAG_ALL);
|
||||
@@ -514,10 +514,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
private void initWifiStats(NetworkStateSnapshot snapshot) throws Exception {
|
||||
// pretend that wifi network comes online; service should ask about full
|
||||
// network state, and poll any existing interfaces before updating.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {snapshot};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
@@ -526,10 +526,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
private void incrementWifiStats(long durationMillis, String iface,
|
||||
long rxb, long rxp, long txb, long txp) throws Exception {
|
||||
incrementCurrentTime(durationMillis);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(iface, rxb, rxp, txb, txp));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
}
|
||||
|
||||
@@ -595,10 +595,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// pretend that wifi network comes online; service should ask about full
|
||||
// network state, and poll any existing interfaces before updating.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
@@ -609,10 +609,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// modify some number on wifi, and trigger poll event
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 1024L, 8L, 2048L, 16L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 2)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 2)
|
||||
.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)
|
||||
@@ -640,14 +640,14 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// graceful shutdown system, which should trigger persist of stats, and
|
||||
// clear any values in memory.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
mServiceContext.sendBroadcast(new Intent(Intent.ACTION_SHUTDOWN));
|
||||
assertStatsFilesExist(true);
|
||||
|
||||
// boot through serviceReady() again
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
expectSystemReady();
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
prepareForSystemReady();
|
||||
|
||||
mService.systemReady();
|
||||
|
||||
@@ -672,20 +672,20 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// pretend that wifi network comes online; service should ask about full
|
||||
// network state, and poll any existing interfaces before updating.
|
||||
expectSettings(0L, HOUR_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
mockSettings(HOUR_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// modify some number on wifi, and trigger poll event
|
||||
incrementCurrentTime(2 * HOUR_IN_MILLIS);
|
||||
expectSettings(0L, HOUR_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockSettings(HOUR_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 512L, 4L, 512L, 4L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// verify service recorded history
|
||||
@@ -697,9 +697,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// now change bucket duration setting and trigger another poll with
|
||||
// exact same values, which should resize existing buckets.
|
||||
expectSettings(0L, 30 * MINUTE_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockSettings(30 * MINUTE_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// verify identical stats, but spread across 4 buckets now
|
||||
@@ -713,20 +713,20 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testUidStatsAcrossNetworks() throws Exception {
|
||||
// pretend first mobile network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildMobileState(IMSI_1)};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// create some traffic on first network
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 2048L, 16L, 512L, 4L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
.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));
|
||||
@@ -744,11 +744,11 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// now switch networks; this also tests that we're okay with interfaces
|
||||
// disappearing, to verify we don't count backwards.
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
states = new NetworkStateSnapshot[] {buildMobileState(IMSI_2)};
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 2048L, 16L, 512L, 4L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
.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));
|
||||
@@ -760,10 +760,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// create traffic on second network
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 2176L, 17L, 1536L, 12L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.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)
|
||||
@@ -788,20 +788,20 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testUidRemovedIsMoved() throws Exception {
|
||||
// pretend that network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// create some traffic
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 4128L, 258L, 544L, 34L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.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,
|
||||
@@ -820,10 +820,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// now pretend two UIDs are uninstalled, which should migrate stats to
|
||||
// special "removed" bucket.
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 4128L, 258L, 544L, 34L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.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,
|
||||
@@ -860,8 +860,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
new NetworkStateSnapshot[]{buildMobileState(IMSI_1)};
|
||||
|
||||
// 3G network comes online.
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
setMobileRatTypeAndWaitForIdle(TelephonyManager.NETWORK_TYPE_UMTS);
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
@@ -869,7 +869,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 12L, 18L, 14L, 1L, 0L)));
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -883,7 +883,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// 4G network comes online.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
setMobileRatTypeAndWaitForIdle(TelephonyManager.NETWORK_TYPE_LTE);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
// Append more traffic on existing 3g stats entry.
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 16L, 22L, 17L, 2L, 0L))
|
||||
@@ -903,7 +903,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// 5g network comes online.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
setMobileRatTypeAndWaitForIdle(TelephonyManager.NETWORK_TYPE_NR);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
// Existing stats remains.
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 16L, 22L, 17L, 2L, 0L))
|
||||
@@ -934,9 +934,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
.setRatType(TelephonyManager.NETWORK_TYPE_NR)
|
||||
.setMeteredness(METERED_NO).build();
|
||||
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
// Pretend that 5g mobile network comes online
|
||||
final NetworkStateSnapshot[] mobileStates =
|
||||
@@ -951,7 +951,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// and DEFAULT_NETWORK_YES, because these three properties aren't tracked at that layer.
|
||||
// They are layered on top by inspecting the iface properties.
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 2L, 128L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE2, UID_RED, SET_DEFAULT, TAG_NONE, METERED_YES, ROAMING_NO,
|
||||
@@ -984,14 +984,14 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[]{
|
||||
buildOemManagedMobileState(IMSI_1, false,
|
||||
new int[]{NetworkCapabilities.NET_CAPABILITY_OEM_PAID})};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 36L, 41L, 24L, 96L, 0L)));
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -999,14 +999,14 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// OEM_PRIVATE network comes online.
|
||||
states = new NetworkStateSnapshot[]{buildOemManagedMobileState(IMSI_1, false,
|
||||
new int[]{NetworkCapabilities.NET_CAPABILITY_OEM_PRIVATE})};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 49L, 71L, 72L, 48L, 0L)));
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -1015,28 +1015,28 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
states = new NetworkStateSnapshot[]{buildOemManagedMobileState(IMSI_1, false,
|
||||
new int[]{NetworkCapabilities.NET_CAPABILITY_OEM_PRIVATE,
|
||||
NetworkCapabilities.NET_CAPABILITY_OEM_PAID})};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 57L, 86L, 83L, 93L, 0L)));
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// OEM_NONE network comes online.
|
||||
states = new NetworkStateSnapshot[]{buildOemManagedMobileState(IMSI_1, false, new int[]{})};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 29L, 73L, 34L, 31L, 0L)));
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -1079,19 +1079,19 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testSummaryForAllUid() throws Exception {
|
||||
// pretend that network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// create some traffic for two apps
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.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));
|
||||
@@ -1106,9 +1106,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// now create more traffic in next hour, but only for one app
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.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,
|
||||
@@ -1138,10 +1138,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testGetLatestSummary() throws Exception {
|
||||
// Pretend that network comes online.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[]{buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
@@ -1151,8 +1151,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
NetworkStats.Entry entry = new NetworkStats.Entry(
|
||||
TEST_IFACE, UID_ALL, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 50L, 5L, 51L, 1L, 3L);
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1).insertEntry(entry));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1).insertEntry(entry));
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// Verify the mocked stats is returned by querying with the range of the latest bucket.
|
||||
@@ -1175,10 +1175,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testUidStatsForTransport() throws Exception {
|
||||
// pretend that network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
@@ -1194,9 +1194,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
DEFAULT_NETWORK_NO, 1024L, 8L, 512L, 4L, 0L);
|
||||
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 3)
|
||||
.insertEntry(entry1)
|
||||
.insertEntry(entry2)
|
||||
.insertEntry(entry3));
|
||||
@@ -1218,19 +1218,19 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testForegroundBackground() throws Exception {
|
||||
// pretend that network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// create some initial traffic
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.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);
|
||||
@@ -1243,9 +1243,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// now switch to foreground
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.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)
|
||||
@@ -1277,23 +1277,23 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testMetered() throws Exception {
|
||||
// pretend that network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states =
|
||||
new NetworkStateSnapshot[] {buildWifiState(true /* isMetered */, TEST_IFACE)};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// create some initial traffic
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
// Note that all traffic from NetworkManagementService is tagged as METERED_NO, ROAMING_NO
|
||||
// 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)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 2L, 128L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, METERED_NO, ROAMING_NO,
|
||||
@@ -1317,24 +1317,24 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testRoaming() throws Exception {
|
||||
// pretend that network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states =
|
||||
new NetworkStateSnapshot[] {buildMobileState(TEST_IFACE, IMSI_1,
|
||||
false /* isTemporarilyNotMetered */, true /* isRoaming */)};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// Create some traffic
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
// Note that all traffic from NetworkManagementService is tagged as METERED_NO and
|
||||
// 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)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_ALL, ROAMING_NO,
|
||||
DEFAULT_NETWORK_YES, 128L, 2L, 128L, 2L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, 0xF00D, METERED_ALL, ROAMING_NO,
|
||||
@@ -1357,18 +1357,18 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testTethering() throws Exception {
|
||||
// pretend first mobile network comes online
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
final NetworkStateSnapshot[] states =
|
||||
new NetworkStateSnapshot[]{buildMobileState(IMSI_1)};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_MOBILE, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// create some tethering traffic
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
|
||||
// Register custom provider and retrieve callback.
|
||||
final TestableNetworkStatsProviderBinder provider =
|
||||
@@ -1400,8 +1400,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
final TetherStatsParcel[] tetherStatsParcels =
|
||||
{buildTetherStatsParcel(TEST_IFACE, 1408L, 10L, 256L, 1L, 0)};
|
||||
|
||||
expectNetworkStatsSummary(swIfaceStats);
|
||||
expectNetworkStatsUidDetail(localUidStats, tetherStatsParcels);
|
||||
mockNetworkStatsSummary(swIfaceStats);
|
||||
mockNetworkStatsUidDetail(localUidStats, tetherStatsParcels);
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// verify service recorded history
|
||||
@@ -1414,10 +1414,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
public void testRegisterUsageCallback() throws Exception {
|
||||
// pretend that wifi network comes online; service should ask about full
|
||||
// network state, and poll any existing interfaces before updating.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
@@ -1429,9 +1429,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
DataUsageRequest.REQUEST_ID_UNSET, sTemplateWifi, thresholdInBytes);
|
||||
|
||||
// Force poll
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
// Register and verify request and that binder was called
|
||||
DataUsageRequest request = mService.registerUsageCallback(
|
||||
@@ -1449,10 +1449,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// modify some number on wifi, and trigger poll event
|
||||
// not enough traffic to call data usage callback
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 1024L, 1L, 2048L, 2L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// verify service recorded history
|
||||
@@ -1464,10 +1464,10 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// and bump forward again, with counters going higher. this is
|
||||
// important, since it will trigger the data usage callback
|
||||
incrementCurrentTime(DAY_IN_MILLIS);
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 4096000L, 4L, 8192000L, 8L));
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
// verify service recorded history
|
||||
@@ -1504,11 +1504,11 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testStatsProviderUpdateStats() throws Exception {
|
||||
// Pretend that network comes online.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
final NetworkStateSnapshot[] states =
|
||||
new NetworkStateSnapshot[]{buildWifiState(true /* isMetered */, TEST_IFACE)};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
// Register custom provider and retrieve callback.
|
||||
final TestableNetworkStatsProviderBinder provider =
|
||||
@@ -1537,7 +1537,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// Make another empty mutable stats object. This is necessary since the new NetworkStats
|
||||
// object will be used to compare with the old one in NetworkStatsRecoder, two of them
|
||||
// cannot be the same object.
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
@@ -1566,14 +1566,14 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testDualVilteProviderStats() throws Exception {
|
||||
// Pretend that network comes online.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
final int subId1 = 1;
|
||||
final int subId2 = 2;
|
||||
final NetworkStateSnapshot[] states = new NetworkStateSnapshot[]{
|
||||
buildImsState(IMSI_1, subId1, TEST_IFACE),
|
||||
buildImsState(IMSI_2, subId2, TEST_IFACE2)};
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
// Register custom provider and retrieve callback.
|
||||
final TestableNetworkStatsProviderBinder provider =
|
||||
@@ -1604,7 +1604,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// Make another empty mutable stats object. This is necessary since the new NetworkStats
|
||||
// object will be used to compare with the old one in NetworkStatsRecoder, two of them
|
||||
// cannot be the same object.
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
forcePollAndWaitForIdle();
|
||||
|
||||
@@ -1637,7 +1637,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testStatsProviderSetAlert() throws Exception {
|
||||
// Pretend that network comes online.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states =
|
||||
new NetworkStateSnapshot[]{buildWifiState(true /* isMetered */, TEST_IFACE)};
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
@@ -1687,8 +1687,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
final NetworkStateSnapshot[] states =
|
||||
new NetworkStateSnapshot[]{buildMobileState(IMSI_1)};
|
||||
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
|
||||
// 3G network comes online.
|
||||
setMobileRatTypeAndWaitForIdle(TelephonyManager.NETWORK_TYPE_UMTS);
|
||||
@@ -1697,7 +1697,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 12L, 18L, 14L, 1L, 0L)));
|
||||
forcePollAndWaitForIdle();
|
||||
@@ -1721,7 +1721,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
// Append more traffic on existing snapshot.
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 12L + 4L, 18L + 4L, 14L + 3L,
|
||||
1L + 1L, 0L))
|
||||
@@ -1744,7 +1744,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
// Create some traffic.
|
||||
incrementCurrentTime(MINUTE_IN_MILLIS);
|
||||
// Append more traffic on existing snapshot.
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE,
|
||||
METERED_NO, ROAMING_NO, DEFAULT_NETWORK_NO, 22L, 26L, 19L, 5L, 0L))
|
||||
.addEntry(new NetworkStats.Entry(TEST_IFACE, UID_RED, SET_FOREGROUND, TAG_NONE,
|
||||
@@ -1761,16 +1761,16 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testOperationCount_nonDefault_traffic() throws Exception {
|
||||
// Pretend mobile network comes online, but wifi is the default network.
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[]{
|
||||
buildWifiState(true /*isMetered*/, TEST_IFACE2), buildMobileState(IMSI_1)};
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
mService.notifyNetworkStatus(NETWORKS_WIFI, states, getActiveIface(states),
|
||||
new UnderlyingNetworkInfo[0]);
|
||||
|
||||
// Create some traffic on mobile network.
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 4)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 4)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 2L, 1L, 3L, 4L, 0L)
|
||||
.insertEntry(TEST_IFACE, UID_RED, SET_DEFAULT, TAG_NONE, METERED_NO, ROAMING_NO,
|
||||
@@ -1843,7 +1843,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testDataMigration() throws Exception {
|
||||
assertStatsFilesExist(false);
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[] {buildWifiState()};
|
||||
|
||||
@@ -1852,10 +1852,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// modify some number on wifi, and trigger poll event
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
// expectDefaultSettings();
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 1024L, 8L, 2048L, 16L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 2)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 2)
|
||||
.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)
|
||||
@@ -1892,9 +1891,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
getLegacyCollection(PREFIX_UID_TAG, true /* includeTags */));
|
||||
|
||||
// Mock zero usage and boot through serviceReady(), verify there is no imported data.
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
expectSystemReady();
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
prepareForSystemReady();
|
||||
mService.systemReady();
|
||||
assertStatsFilesExist(false);
|
||||
|
||||
@@ -1905,9 +1904,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
assertStatsFilesExist(false);
|
||||
|
||||
// Boot through systemReady() again.
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
expectSystemReady();
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
prepareForSystemReady();
|
||||
mService.systemReady();
|
||||
|
||||
// After systemReady(), the service should have historical stats loaded again.
|
||||
@@ -1928,7 +1927,7 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
@Test
|
||||
public void testDataMigration_differentFromFallback() throws Exception {
|
||||
assertStatsFilesExist(false);
|
||||
expectDefaultSettings();
|
||||
mockDefaultSettings();
|
||||
|
||||
NetworkStateSnapshot[] states = new NetworkStateSnapshot[]{buildWifiState()};
|
||||
|
||||
@@ -1937,9 +1936,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
|
||||
// modify some number on wifi, and trigger poll event
|
||||
incrementCurrentTime(HOUR_IN_MILLIS);
|
||||
expectNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsSummary(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, 1024L, 8L, 2048L, 16L));
|
||||
expectNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
mockNetworkStatsUidDetail(new NetworkStats(getElapsedRealtime(), 1)
|
||||
.insertEntry(TEST_IFACE, UID_BLUE, SET_DEFAULT, TAG_NONE, 128L, 1L, 128L, 1L, 0L));
|
||||
forcePollAndWaitForIdle();
|
||||
// Simulate shutdown to force persisting data
|
||||
@@ -1980,9 +1979,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
getLegacyCollection(PREFIX_UID_TAG, true /* includeTags */));
|
||||
|
||||
// Mock zero usage and boot through serviceReady(), verify there is no imported data.
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
expectSystemReady();
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
prepareForSystemReady();
|
||||
mService.systemReady();
|
||||
assertStatsFilesExist(false);
|
||||
|
||||
@@ -1993,9 +1992,9 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
assertStatsFilesExist(false);
|
||||
|
||||
// Boot through systemReady() again.
|
||||
expectDefaultSettings();
|
||||
expectNetworkStatsUidDetail(buildEmptyStats());
|
||||
expectSystemReady();
|
||||
mockDefaultSettings();
|
||||
mockNetworkStatsUidDetail(buildEmptyStats());
|
||||
prepareForSystemReady();
|
||||
mService.systemReady();
|
||||
|
||||
// Verify the result read from public API matches the result returned from the importer.
|
||||
@@ -2090,8 +2089,8 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
rxBytes, rxPackets, txBytes, txPackets, operations);
|
||||
}
|
||||
|
||||
private void expectSystemReady() throws Exception {
|
||||
expectNetworkStatsSummary(buildEmptyStats());
|
||||
private void prepareForSystemReady() throws Exception {
|
||||
mockNetworkStatsSummary(buildEmptyStats());
|
||||
}
|
||||
|
||||
private String getActiveIface(NetworkStateSnapshot... states) throws Exception {
|
||||
@@ -2101,27 +2100,25 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
return states[0].getLinkProperties().getInterfaceName();
|
||||
}
|
||||
|
||||
// TODO: These expect* methods are used to have NetworkStatsService returns the given stats
|
||||
// instead of expecting anything. Therefore, these methods should be renamed properly.
|
||||
private void expectNetworkStatsSummary(NetworkStats summary) throws Exception {
|
||||
expectNetworkStatsSummaryDev(summary.clone());
|
||||
expectNetworkStatsSummaryXt(summary.clone());
|
||||
private void mockNetworkStatsSummary(NetworkStats summary) throws Exception {
|
||||
mockNetworkStatsSummaryDev(summary.clone());
|
||||
mockNetworkStatsSummaryXt(summary.clone());
|
||||
}
|
||||
|
||||
private void expectNetworkStatsSummaryDev(NetworkStats summary) throws Exception {
|
||||
private void mockNetworkStatsSummaryDev(NetworkStats summary) throws Exception {
|
||||
when(mStatsFactory.readNetworkStatsSummaryDev()).thenReturn(summary);
|
||||
}
|
||||
|
||||
private void expectNetworkStatsSummaryXt(NetworkStats summary) throws Exception {
|
||||
private void mockNetworkStatsSummaryXt(NetworkStats summary) throws Exception {
|
||||
when(mStatsFactory.readNetworkStatsSummaryXt()).thenReturn(summary);
|
||||
}
|
||||
|
||||
private void expectNetworkStatsUidDetail(NetworkStats detail) throws Exception {
|
||||
private void mockNetworkStatsUidDetail(NetworkStats detail) throws Exception {
|
||||
final TetherStatsParcel[] tetherStatsParcels = {};
|
||||
expectNetworkStatsUidDetail(detail, tetherStatsParcels);
|
||||
mockNetworkStatsUidDetail(detail, tetherStatsParcels);
|
||||
}
|
||||
|
||||
private void expectNetworkStatsUidDetail(NetworkStats detail,
|
||||
private void mockNetworkStatsUidDetail(NetworkStats detail,
|
||||
TetherStatsParcel[] tetherStatsParcels) throws Exception {
|
||||
when(mStatsFactory.readNetworkStatsDetail(UID_ALL, INTERFACES_ALL, TAG_ALL))
|
||||
.thenReturn(detail);
|
||||
@@ -2130,12 +2127,11 @@ public class NetworkStatsServiceTest extends NetworkStatsBaseTest {
|
||||
when(mNetd.tetherGetStats()).thenReturn(tetherStatsParcels);
|
||||
}
|
||||
|
||||
private void expectDefaultSettings() throws Exception {
|
||||
expectSettings(0L, HOUR_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
private void mockDefaultSettings() throws Exception {
|
||||
mockSettings(HOUR_IN_MILLIS, WEEK_IN_MILLIS);
|
||||
}
|
||||
|
||||
private void expectSettings(long persistBytes, long bucketDuration, long deleteAge)
|
||||
throws Exception {
|
||||
private void mockSettings(long bucketDuration, long deleteAge) throws Exception {
|
||||
when(mSettings.getPollInterval()).thenReturn(HOUR_IN_MILLIS);
|
||||
when(mSettings.getPollDelay()).thenReturn(0L);
|
||||
when(mSettings.getSampleEnabled()).thenReturn(true);
|
||||
|
||||
Reference in New Issue
Block a user