diff options
author | Remi NGUYEN VAN <reminv@google.com> | 2020-04-30 03:33:37 +0000 |
---|---|---|
committer | Remi NGUYEN VAN <reminv@google.com> | 2020-04-30 06:25:54 +0000 |
commit | 675274fa929f64ce47392da3fcefc2f52f75523b (patch) | |
tree | 8906c5ed76e98bec13af87d9834bbf068d501a7c /src/android/net/ip/IpReachabilityMonitor.java | |
parent | 5f3bb6d04bc1f0d3d80f58d738be7411cd2cd348 (diff) |
Fix IpReachabilityMonitorTest flakes/Q failures
IpReachabilityMonitor was failing on Q because of:
- Usage of HexEncoding.encodeToString(byte[], boolean) that did not
exist in Q
- Flakes/failures caused by missing permissions when calling
IpConnectivityLog
- Flakes caused by mocking FileDescriptor#valid() while it could be
accessed from another thread
Bug: 152723363
Test: atest IpReachabilityMonitorTest --rerun-until-failure 500
Merged-In: I9d38c696bf1b3b63be3b9df3161168ee291e7beb
Change-Id: I9d38c696bf1b3b63be3b9df3161168ee291e7beb
(cherry picked from commit 162c7ee3601b49f55b7a72597067bc93836dbb96)
Diffstat (limited to 'src/android/net/ip/IpReachabilityMonitor.java')
-rw-r--r-- | src/android/net/ip/IpReachabilityMonitor.java | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/android/net/ip/IpReachabilityMonitor.java b/src/android/net/ip/IpReachabilityMonitor.java index e1d4548..db928d6 100644 --- a/src/android/net/ip/IpReachabilityMonitor.java +++ b/src/android/net/ip/IpReachabilityMonitor.java @@ -187,7 +187,7 @@ public class IpReachabilityMonitor { private final Dependencies mDependencies; private final boolean mUsingMultinetworkPolicyTracker; private final ConnectivityManager mCm; - private final IpConnectivityLog mMetricsLog = new IpConnectivityLog(); + private final IpConnectivityLog mMetricsLog; private final Context mContext; private final INetd mNetd; private LinkProperties mLinkProperties = new LinkProperties(); @@ -201,13 +201,13 @@ public class IpReachabilityMonitor { Context context, InterfaceParams ifParams, Handler h, SharedLog log, Callback callback, boolean usingMultinetworkPolicyTracker, final INetd netd) { this(context, ifParams, h, log, callback, usingMultinetworkPolicyTracker, - Dependencies.makeDefault(context, ifParams.name), netd); + Dependencies.makeDefault(context, ifParams.name), new IpConnectivityLog(), netd); } @VisibleForTesting IpReachabilityMonitor(Context context, InterfaceParams ifParams, Handler h, SharedLog log, Callback callback, boolean usingMultinetworkPolicyTracker, Dependencies dependencies, - final INetd netd) { + final IpConnectivityLog metricsLog, final INetd netd) { if (ifParams == null) throw new IllegalArgumentException("null InterfaceParams"); mContext = context; @@ -217,6 +217,7 @@ public class IpReachabilityMonitor { mUsingMultinetworkPolicyTracker = usingMultinetworkPolicyTracker; mCm = context.getSystemService(ConnectivityManager.class); mDependencies = dependencies; + mMetricsLog = metricsLog; mNetd = netd; Preconditions.checkNotNull(mNetd); Preconditions.checkArgument(!TextUtils.isEmpty(mInterfaceParams.name)); |