diff --git a/tests/unit/java/com/android/server/ConnectivityServiceTest.java b/tests/unit/java/com/android/server/ConnectivityServiceTest.java index 4dadfeeda08fb9c3df3440e95fc6942a9a41c820..5d957b7b90e0811aafceeae5c696940832bc176a 100755 --- a/tests/unit/java/com/android/server/ConnectivityServiceTest.java +++ b/tests/unit/java/com/android/server/ConnectivityServiceTest.java @@ -9053,6 +9053,18 @@ public class ConnectivityServiceTest { mCm.registerNetworkCallback(vpnNetworkRequest, vpnNetworkCallback); vpnNetworkCallback.assertNoCallback(); + // Lingering timer is short and cell might be disconnected if the device is particularly + // slow running the test, unless it's requested. Make sure the networks the test needs + // are all requested. + final NetworkCallback cellCallback = new NetworkCallback() {}; + final NetworkCallback wifiCallback = new NetworkCallback() {}; + mCm.requestNetwork( + new NetworkRequest.Builder().addTransportType(TRANSPORT_CELLULAR).build(), + cellCallback); + mCm.requestNetwork( + new NetworkRequest.Builder().addTransportType(TRANSPORT_WIFI).build(), + wifiCallback); + mMockVpn.establishForMyUid(true /* validated */, false /* hasInternet */, false /* privateDnsProbeSent */); assertUidRangesUpdatedForMyUid(true); @@ -9209,6 +9221,8 @@ public class ConnectivityServiceTest { assertDefaultNetworkCapabilities(userId /* no networks */); mMockVpn.disconnect(); + mCm.unregisterNetworkCallback(cellCallback); + mCm.unregisterNetworkCallback(wifiCallback); } @Test