Add a performance test for filteredClone.
atest ConnectivityCoverageTests:android.net.connectivity.android.net.NetworkStatsTest#testFilteredPerformance -- --auto-collect DEVICE_TRACE Flag: TEST_ONLY Change-Id: Id47edc05bb39ce334da819129d4ee13b0796cbb5
This commit is contained in:
parent
cdb2f5a76c
commit
bcd9653ed3
1 changed files with 29 additions and 0 deletions
|
|
@ -42,6 +42,7 @@ import static org.junit.Assert.assertTrue;
|
|||
|
||||
import android.os.Build;
|
||||
import android.os.Process;
|
||||
import android.os.Trace;
|
||||
import android.util.ArrayMap;
|
||||
|
||||
import androidx.test.filters.SmallTest;
|
||||
|
|
@ -876,6 +877,34 @@ public class NetworkStatsTest {
|
|||
assertEquals(entry3, filtered.getValues(1, null));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFilteredPerformance() {
|
||||
final int size = 100000;
|
||||
NetworkStats stats = new NetworkStats(TEST_START, size);
|
||||
for (int i = 0; i < size; ++i) {
|
||||
NetworkStats.Entry entry = new NetworkStats.Entry(
|
||||
"test", 10100 + i % 100, SET_DEFAULT, i % 2, METERED_NO, ROAMING_NO,
|
||||
DEFAULT_NETWORK_NO, 50000L, 25L, 100000L, 50L, 0L);
|
||||
stats.insertEntry(entry);
|
||||
}
|
||||
|
||||
final int iterations = 1000;
|
||||
final int filterTag = 0;
|
||||
final int filterUid = 10100;
|
||||
|
||||
Trace.beginSection("MajorityFilter");
|
||||
for (int i = 0; i < iterations; ++i) {
|
||||
stats.filteredClone(UID_ALL, INTERFACES_ALL, filterTag);
|
||||
}
|
||||
Trace.endSection();
|
||||
|
||||
Trace.beginSection("MinorityFilter");
|
||||
for (int i = 0; i < iterations; ++i) {
|
||||
stats.filteredClone(filterUid, INTERFACES_ALL, TAG_ALL);
|
||||
}
|
||||
Trace.endSection();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFilter_InterfaceFilter() {
|
||||
final String testIf1 = "testif1";
|
||||
|
|
|
|||
Loading…
Reference in a new issue