Merge "Revert "[VCN06.1] Add CTS for request background network""
diff --git a/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java b/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java
index bfa5e1e..cbf43e7 100644
--- a/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java
+++ b/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java
@@ -25,12 +25,10 @@
import static android.content.pm.PackageManager.FEATURE_WIFI;
import static android.content.pm.PackageManager.GET_PERMISSIONS;
import static android.content.pm.PackageManager.PERMISSION_GRANTED;
-import static android.net.NetworkCapabilities.NET_CAPABILITY_FOREGROUND;
import static android.net.NetworkCapabilities.NET_CAPABILITY_IMS;
import static android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET;
import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_METERED;
import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED;
-import static android.net.NetworkCapabilities.TRANSPORT_CELLULAR;
import static android.net.NetworkCapabilities.TRANSPORT_WIFI;
import static android.net.cts.util.CtsNetUtils.ConnectivityActionReceiver;
import static android.net.cts.util.CtsNetUtils.HTTP_PORT;
@@ -45,7 +43,6 @@
import static com.android.compatibility.common.util.SystemUtil.runShellCommand;
import static com.android.compatibility.common.util.SystemUtil.runWithShellPermissionIdentity;
-import static com.android.testutils.MiscAsserts.assertThrows;
import static com.android.testutils.TestPermissionUtil.runAsShell;
import static org.junit.Assert.assertEquals;
@@ -107,10 +104,10 @@
import com.android.testutils.SkipPresubmit;
import com.android.testutils.TestableNetworkCallback;
-import junit.framework.AssertionFailedError;
-
import libcore.io.Streams;
+import junit.framework.AssertionFailedError;
+
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -1534,53 +1531,4 @@
throw new AssertionFailedError("Captive portal server URL is invalid: " + e);
}
}
-
- /**
- * Verify background request can only be requested when acquiring
- * {@link android.Manifest.permission.NETWORK_SETTINGS}.
- */
- @Test
- public void testRequestBackgroundNetwork() throws InterruptedException {
- if (!mPackageManager.hasSystemFeature(FEATURE_WIFI)
- || !mPackageManager.hasSystemFeature(FEATURE_TELEPHONY)) {
- Log.i(TAG, "testRequestBackgroundNetwork cannot execute unless device "
- + "supports WiFi and Cellular");
- return;
- }
-
- // Make sure the wifi network occupied the default network request. Thus,
- // the cellular could have no foreground request if no one is using it.
- final Network wifiNetwork = ensureWifiConnected();
- assertNotNull(wifiNetwork);
- assertEquals(wifiNetwork, mCm.getActiveNetwork());
-
- final TestableNetworkCallback cellCallback = new TestableNetworkCallback();
- try {
- // Verify a normal cellular network can be requested.
- final NetworkRequest cellRequest = new NetworkRequest.Builder()
- .addTransportType(TRANSPORT_CELLULAR)
- .addCapability(NET_CAPABILITY_INTERNET).build();
- mCm.requestNetwork(cellRequest, cellCallback);
- waitForAvailable(cellCallback);
- mCm.unregisterNetworkCallback(cellCallback);
-
- // Verify background network cannot be requested with the same parameters
- // without NETWORK_SETTINGS permission.
- assertThrows(SecurityException.class,
- () -> mCm.requestBackgroundNetwork(cellRequest, null, cellCallback));
-
- // Request background network via Shell identity which has NETWORK_SETTINGS
- // permission granted. Verify the cellular network is not foreground.
- runWithShellPermissionIdentity(
- () -> mCm.requestBackgroundNetwork(cellRequest, null, cellCallback),
- android.Manifest.permission.NETWORK_SETTINGS);
- waitForAvailable(cellCallback);
- final Network cellNetwork = cellCallback.getLastAvailableNetwork();
- assertNotNull(cellNetwork);
- assertFalse(mCm.getNetworkCapabilities(cellNetwork).hasCapability(
- NET_CAPABILITY_FOREGROUND));
- } finally {
- mCm.unregisterNetworkCallback(cellCallback);
- }
- }
}