Merge "Rename expect* methods that are used in NetworkStatsServiceTest"

This commit is contained in:
Aaron Huang
2022-08-26 14:18:43 +00:00
committed by Gerrit Code Review

View File

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