Merge "Wipe the data in IpMemoryStore database upon network factory reset."
diff --git a/core/java/android/net/StaticIpConfiguration.java b/core/java/android/net/StaticIpConfiguration.java
index baf7ae0..0600036 100644
--- a/core/java/android/net/StaticIpConfiguration.java
+++ b/core/java/android/net/StaticIpConfiguration.java
@@ -22,7 +22,6 @@
 import android.annotation.TestApi;
 import android.annotation.UnsupportedAppUsage;
 import android.net.shared.InetAddressUtils;
-import android.os.Build;
 import android.os.Parcel;
 import android.os.Parcelable;
 
@@ -54,7 +53,7 @@
 @TestApi
 public final class StaticIpConfiguration implements Parcelable {
     /** @hide */
-    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
+    @UnsupportedAppUsage
     @Nullable
     public LinkAddress ipAddress;
     /** @hide */
diff --git a/tests/net/java/android/net/util/DnsUtilsTest.java b/tests/net/java/android/net/util/DnsUtilsTest.java
index e5cb09f..42e340b 100644
--- a/tests/net/java/android/net/util/DnsUtilsTest.java
+++ b/tests/net/java/android/net/util/DnsUtilsTest.java
@@ -19,7 +19,6 @@
 import static android.net.util.DnsUtils.IPV6_ADDR_SCOPE_GLOBAL;
 import static android.net.util.DnsUtils.IPV6_ADDR_SCOPE_LINKLOCAL;
 import static android.net.util.DnsUtils.IPV6_ADDR_SCOPE_SITELOCAL;
-import static android.net.util.DnsUtils.rfc6724Sort;
 
 import static org.junit.Assert.assertEquals;
 
@@ -56,24 +55,6 @@
     }
 
     @Test
-    public void testRfc6724Sort() {
-        final List<InetAddress> testAddresses = Arrays.asList(
-                stringToAddress("172.217.24.14"),
-                stringToAddress("216.58.200.46"),
-                stringToAddress("2404:6800:4008:802::200e"));
-
-        final List<InetAddress> expected = Arrays.asList(
-                stringToAddress("2404:6800:4008:802::200e"),
-                stringToAddress("172.217.24.14"),
-                stringToAddress("216.58.200.46"));
-
-        final List<InetAddress> result = rfc6724Sort(null, testAddresses);
-
-        assertEquals(result.size(), testAddresses.size());
-        assertEquals(result, expected);
-    }
-
-    @Test
     public void testRfc6724Comparator() {
         final List<DnsUtils.SortableAddress> test = Arrays.asList(
                 makeSortableAddress("216.58.200.36"),             // Ipv4
diff --git a/tests/net/java/com/android/server/ConnectivityServiceTest.java b/tests/net/java/com/android/server/ConnectivityServiceTest.java
index 3dcd610..cb774ba 100644
--- a/tests/net/java/com/android/server/ConnectivityServiceTest.java
+++ b/tests/net/java/com/android/server/ConnectivityServiceTest.java
@@ -615,7 +615,7 @@
         private void onValidationRequested() {
             try {
                 if (mNmProvNotificationRequested
-                        && mNmValidationResult == VALIDATION_RESULT_VALID) {
+                        && ((mNmValidationResult & NETWORK_VALIDATION_RESULT_VALID) != 0)) {
                     mNmCallbacks.hideProvisioningNotification();
                     mNmProvNotificationRequested = false;
                 }
@@ -2781,10 +2781,10 @@
         // Bring up a network with a captive portal.
         // Expect onAvailable callback of listen for NET_CAPABILITY_CAPTIVE_PORTAL.
         mWiFiNetworkAgent = new MockNetworkAgent(TRANSPORT_WIFI);
-        String firstRedirectUrl = "http://example.com/firstPath";
-        mWiFiNetworkAgent.connectWithCaptivePortal(firstRedirectUrl);
+        String redirectUrl = "http://android.com/path";
+        mWiFiNetworkAgent.connectWithCaptivePortal(redirectUrl);
         captivePortalCallback.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent);
-        assertEquals(mWiFiNetworkAgent.waitForRedirectUrl(), firstRedirectUrl);
+        assertEquals(mWiFiNetworkAgent.waitForRedirectUrl(), redirectUrl);
 
         // Check that startCaptivePortalApp sends the expected command to NetworkMonitor.
         mCm.startCaptivePortalApp(mWiFiNetworkAgent.getNetwork());
@@ -2794,7 +2794,7 @@
         // Report that the captive portal is dismissed with partial connectivity, and check that
         // callbacks are fired.
         mWiFiNetworkAgent.setNetworkPartial();
-        mWiFiNetworkAgent.mNetworkMonitor.forceReevaluation(Process.myUid());
+        mCm.reportNetworkConnectivity(mWiFiNetworkAgent.getNetwork(), true);
         waitForIdle();
         captivePortalCallback.expectCapabilitiesWith(NET_CAPABILITY_PARTIAL_CONNECTIVITY,
                 mWiFiNetworkAgent);
@@ -2805,6 +2805,7 @@
                 false /* always */);
         waitForIdle();
         mCm.reportNetworkConnectivity(mWiFiNetworkAgent.getNetwork(), true);
+        captivePortalCallback.expectCallback(CallbackState.LOST, mWiFiNetworkAgent);
         validatedCallback.expectAvailableCallbacksValidated(mWiFiNetworkAgent);
         NetworkCapabilities nc =
                 validatedCallback.expectCapabilitiesWith(NET_CAPABILITY_PARTIAL_CONNECTIVITY,