From 38b7a40643abfe905006db913059664d5f6979ef Mon Sep 17 00:00:00 2001 From: Chiachang Wang Date: Wed, 28 Apr 2021 15:39:32 +0800 Subject: [PATCH] Add test for ConnectivityManager.setGlobalProxy() ConnectivityManager.setGlobalProxy() requires NETWORK_STACK permission. Add test to verify exception thrown if caller has no permission. Bug: 186061922 Test: atest CtsNetTestCases CtsNetTestCasesLatestSdk Change-Id: I87e2e6a878bd538b2e8c6f72f44335746151a9a7 --- .../net/src/android/net/cts/ConnectivityManagerTest.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java b/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java index fda128cb15..3fd4d33d63 100644 --- a/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java +++ b/tests/cts/net/src/android/net/cts/ConnectivityManagerTest.java @@ -102,6 +102,7 @@ import android.net.NetworkInfo.DetailedState; import android.net.NetworkInfo.State; import android.net.NetworkRequest; import android.net.NetworkUtils; +import android.net.ProxyInfo; import android.net.SocketKeepalive; import android.net.TestNetworkInterface; import android.net.TestNetworkManager; @@ -1912,4 +1913,12 @@ public class ConnectivityManagerTest { assertNull(NetworkInformationShimImpl.newInstance() .getCapabilityCarrierName(ConstantsShim.NET_CAPABILITY_NOT_VCN_MANAGED)); } + + @Test + public void testSetGlobalProxy() { + assumeTrue(TestUtils.shouldTestSApis()); + // Behavior is verified in gts. Verify exception thrown w/o permission. + assertThrows(SecurityException.class, () -> mCm.setGlobalProxy( + ProxyInfo.buildDirectProxy("example.com" /* host */, 8080 /* port */))); + } }