Merge "Add NetworkStack metrics to system API"
am: bda2c4fe17
Change-Id: I686e0ffb8d226d9245f1ef6c04bbc8d586c61e81
This commit is contained in:
@@ -18,14 +18,15 @@ package com.android.server.connectivity;
|
||||
|
||||
import static android.net.metrics.INetdEventListener.EVENT_GETADDRINFO;
|
||||
import static android.net.metrics.INetdEventListener.EVENT_GETHOSTBYNAME;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.timeout;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.timeout;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import android.content.Context;
|
||||
import android.net.ConnectivityManager;
|
||||
@@ -34,12 +35,11 @@ import android.net.IIpConnectivityMetrics;
|
||||
import android.net.IpPrefix;
|
||||
import android.net.LinkAddress;
|
||||
import android.net.LinkProperties;
|
||||
import android.net.RouteInfo;
|
||||
import android.net.Network;
|
||||
import android.net.NetworkCapabilities;
|
||||
import android.net.RouteInfo;
|
||||
import android.net.metrics.ApfProgramEvent;
|
||||
import android.net.metrics.ApfStats;
|
||||
import android.net.metrics.DefaultNetworkEvent;
|
||||
import android.net.metrics.DhcpClientEvent;
|
||||
import android.net.metrics.IpConnectivityLog;
|
||||
import android.net.metrics.IpManagerEvent;
|
||||
@@ -55,6 +55,13 @@ import android.util.Base64;
|
||||
import com.android.internal.util.BitUtils;
|
||||
import com.android.server.connectivity.metrics.nano.IpConnectivityLogClass;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.io.StringWriter;
|
||||
import java.util.Collections;
|
||||
@@ -62,13 +69,6 @@ import java.util.Comparator;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.MockitoAnnotations;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
@SmallTest
|
||||
public class IpConnectivityMetricsTest {
|
||||
@@ -154,7 +154,7 @@ public class IpConnectivityMetricsTest {
|
||||
@Test
|
||||
public void testRateLimiting() {
|
||||
final IpConnectivityLog logger = new IpConnectivityLog(mService.impl);
|
||||
final ApfProgramEvent ev = new ApfProgramEvent();
|
||||
final ApfProgramEvent ev = new ApfProgramEvent.Builder().build();
|
||||
final long fakeTimestamp = 1;
|
||||
|
||||
int attempt = 100; // More than burst quota, but less than buffer size.
|
||||
@@ -304,26 +304,31 @@ public class IpConnectivityMetricsTest {
|
||||
when(mCm.getNetworkCapabilities(new Network(100))).thenReturn(ncWifi);
|
||||
when(mCm.getNetworkCapabilities(new Network(101))).thenReturn(ncCell);
|
||||
|
||||
ApfStats apfStats = new ApfStats();
|
||||
apfStats.durationMs = 45000;
|
||||
apfStats.receivedRas = 10;
|
||||
apfStats.matchingRas = 2;
|
||||
apfStats.droppedRas = 2;
|
||||
apfStats.parseErrors = 2;
|
||||
apfStats.zeroLifetimeRas = 1;
|
||||
apfStats.programUpdates = 4;
|
||||
apfStats.programUpdatesAll = 7;
|
||||
apfStats.programUpdatesAllowingMulticast = 3;
|
||||
apfStats.maxProgramSize = 2048;
|
||||
ApfStats apfStats = new ApfStats.Builder()
|
||||
.setDurationMs(45000)
|
||||
.setReceivedRas(10)
|
||||
.setMatchingRas(2)
|
||||
.setDroppedRas(2)
|
||||
.setParseErrors(2)
|
||||
.setZeroLifetimeRas(1)
|
||||
.setProgramUpdates(4)
|
||||
.setProgramUpdatesAll(7)
|
||||
.setProgramUpdatesAllowingMulticast(3)
|
||||
.setMaxProgramSize(2048)
|
||||
.build();
|
||||
|
||||
ValidationProbeEvent validationEv = new ValidationProbeEvent();
|
||||
validationEv.durationMs = 40730;
|
||||
validationEv.probeType = ValidationProbeEvent.PROBE_HTTP;
|
||||
validationEv.returnCode = 204;
|
||||
final ValidationProbeEvent validationEv = new ValidationProbeEvent.Builder()
|
||||
.setDurationMs(40730)
|
||||
.setProbeType(ValidationProbeEvent.PROBE_HTTP, true)
|
||||
.setReturnCode(204)
|
||||
.build();
|
||||
|
||||
final DhcpClientEvent event = new DhcpClientEvent.Builder()
|
||||
.setMsg("SomeState")
|
||||
.setDurationMs(192)
|
||||
.build();
|
||||
Parcelable[] events = {
|
||||
new IpReachabilityEvent(IpReachabilityEvent.NUD_FAILED),
|
||||
new DhcpClientEvent("SomeState", 192),
|
||||
new IpReachabilityEvent(IpReachabilityEvent.NUD_FAILED), event,
|
||||
new IpManagerEvent(IpManagerEvent.PROVISIONING_OK, 5678),
|
||||
validationEv,
|
||||
apfStats,
|
||||
@@ -424,7 +429,7 @@ public class IpConnectivityMetricsTest {
|
||||
" validation_probe_event <",
|
||||
" latency_ms: 40730",
|
||||
" probe_result: 204",
|
||||
" probe_type: 1",
|
||||
" probe_type: 257",
|
||||
" >",
|
||||
">",
|
||||
"events <",
|
||||
|
||||
Reference in New Issue
Block a user