Convert VpnTest to JUnit4
This is to fix the error in errorprone target, the error message
is: [JUnit4ClassUsedInJUnit3] Assume cannot be used inside a
JUnit3 class. Convert your class to JUnit4 style.
The error method is: assumeTrue()
Bug: 191918368
Test: atest CtsHostsideNetworkTests:HostsideVpnTests
Change-Id: Ieb606d2ba31cc19510425114c76fd77417227f2c
diff --git a/tests/cts/hostside/app/src/com/android/cts/net/hostside/VpnTest.java b/tests/cts/hostside/app/src/com/android/cts/net/hostside/VpnTest.java
index 215f129..00807b4 100755
--- a/tests/cts/hostside/app/src/com/android/cts/net/hostside/VpnTest.java
+++ b/tests/cts/hostside/app/src/com/android/cts/net/hostside/VpnTest.java
@@ -30,9 +30,18 @@
import static android.system.OsConstants.SOCK_DGRAM;
import static android.test.MoreAsserts.assertNotEqual;
+import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation;
+
import static com.android.compatibility.common.util.SystemUtil.runWithShellPermissionIdentity;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
import android.annotation.Nullable;
+import android.app.Activity;
import android.app.DownloadManager;
import android.app.DownloadManager.Query;
import android.app.DownloadManager.Request;
@@ -71,15 +80,21 @@
import android.system.Os;
import android.system.OsConstants;
import android.system.StructPollfd;
-import android.test.InstrumentationTestCase;
import android.test.MoreAsserts;
import android.text.TextUtils;
import android.util.Log;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
import com.android.compatibility.common.util.BlockingBroadcastReceiver;
import com.android.modules.utils.build.SdkLevel;
import com.android.testutils.TestableNetworkCallback;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
import java.io.Closeable;
import java.io.FileDescriptor;
import java.io.IOException;
@@ -127,7 +142,8 @@
* https://source.android.com/devices/tech/config/kernel_network_tests.html
*
*/
-public class VpnTest extends InstrumentationTestCase {
+@RunWith(AndroidJUnit4.class)
+public class VpnTest {
// These are neither public nor @TestApi.
// TODO: add them to @TestApi.
@@ -161,17 +177,24 @@
return !pm.hasSystemFeature("android.hardware.type.watch");
}
- @Override
- public void setUp() throws Exception {
- super.setUp();
+ public final <T extends Activity> T launchActivity(String packageName, Class<T> activityClass) {
+ final Intent intent = new Intent(Intent.ACTION_MAIN);
+ intent.setClassName(packageName, activityClass.getName());
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ final T activity = (T) getInstrumentation().startActivitySync(intent);
+ getInstrumentation().waitForIdleSync();
+ return activity;
+ }
+ @Before
+ public void setUp() throws Exception {
mNetwork = null;
mCallback = null;
storePrivateDnsSetting();
mDevice = UiDevice.getInstance(getInstrumentation());
mActivity = launchActivity(getInstrumentation().getTargetContext().getPackageName(),
- MyActivity.class, null);
+ MyActivity.class);
mPackageName = mActivity.getPackageName();
mCM = (ConnectivityManager) mActivity.getSystemService(Context.CONNECTIVITY_SERVICE);
mWifiManager = (WifiManager) mActivity.getSystemService(Context.WIFI_SERVICE);
@@ -180,7 +203,7 @@
mDevice.waitForIdle();
}
- @Override
+ @After
public void tearDown() throws Exception {
restorePrivateDnsSetting();
mRemoteSocketFactoryClient.unbind();
@@ -190,7 +213,6 @@
Log.i(TAG, "Stopping VPN");
stopVpn();
mActivity.finish();
- super.tearDown();
}
private void prepareVpn() throws Exception {
@@ -702,6 +724,7 @@
setAndVerifyPrivateDns(initialMode);
}
+ @Test
public void testDefault() throws Exception {
if (!supportedHardware()) return;
// If adb TCP port opened, this test may running by adb over network.
@@ -781,6 +804,7 @@
receiver.unregisterQuietly();
}
+ @Test
public void testAppAllowed() throws Exception {
if (!supportedHardware()) return;
@@ -801,6 +825,7 @@
checkStrictModePrivateDns();
}
+ @Test
public void testAppDisallowed() throws Exception {
if (!supportedHardware()) return;
@@ -829,6 +854,7 @@
assertFalse(nc.hasTransport(TRANSPORT_VPN));
}
+ @Test
public void testGetConnectionOwnerUidSecurity() throws Exception {
if (!supportedHardware()) return;
@@ -850,6 +876,7 @@
}
}
+ @Test
public void testSetProxy() throws Exception {
if (!supportedHardware()) return;
ProxyInfo initialProxy = mCM.getDefaultProxy();
@@ -889,6 +916,7 @@
assertDefaultProxy(initialProxy);
}
+ @Test
public void testSetProxyDisallowedApps() throws Exception {
if (!supportedHardware()) return;
ProxyInfo initialProxy = mCM.getDefaultProxy();
@@ -908,6 +936,7 @@
assertDefaultProxy(initialProxy);
}
+ @Test
public void testNoProxy() throws Exception {
if (!supportedHardware()) return;
ProxyInfo initialProxy = mCM.getDefaultProxy();
@@ -942,6 +971,7 @@
assertNetworkHasExpectedProxy(initialProxy, mCM.getActiveNetwork());
}
+ @Test
public void testBindToNetworkWithProxy() throws Exception {
if (!supportedHardware()) return;
String allowedApps = mPackageName;
@@ -966,6 +996,7 @@
assertDefaultProxy(initialProxy);
}
+ @Test
public void testVpnMeterednessWithNoUnderlyingNetwork() throws Exception {
if (!supportedHardware()) {
return;
@@ -988,6 +1019,7 @@
maybeExpectVpnTransportInfo(mCM.getActiveNetwork());
}
+ @Test
public void testVpnMeterednessWithNullUnderlyingNetwork() throws Exception {
if (!supportedHardware()) {
return;
@@ -1016,6 +1048,7 @@
maybeExpectVpnTransportInfo(mCM.getActiveNetwork());
}
+ @Test
public void testVpnMeterednessWithNonNullUnderlyingNetwork() throws Exception {
if (!supportedHardware()) {
return;
@@ -1045,6 +1078,7 @@
maybeExpectVpnTransportInfo(mCM.getActiveNetwork());
}
+ @Test
public void testAlwaysMeteredVpnWithNullUnderlyingNetwork() throws Exception {
if (!supportedHardware()) {
return;
@@ -1071,6 +1105,7 @@
maybeExpectVpnTransportInfo(mCM.getActiveNetwork());
}
+ @Test
public void testAlwaysMeteredVpnWithNonNullUnderlyingNetwork() throws Exception {
if (!supportedHardware()) {
return;
@@ -1098,6 +1133,7 @@
maybeExpectVpnTransportInfo(mCM.getActiveNetwork());
}
+ @Test
public void testB141603906() throws Exception {
if (!supportedHardware()) {
return;
@@ -1176,7 +1212,7 @@
private boolean received;
public ProxyChangeBroadcastReceiver() {
- super(VpnTest.this.getInstrumentation().getContext(), Proxy.PROXY_CHANGE_ACTION);
+ super(getInstrumentation().getContext(), Proxy.PROXY_CHANGE_ACTION);
received = false;
}
@@ -1196,6 +1232,7 @@
* allowed list.
* See b/165774987.
*/
+ @Test
public void testDownloadWithDownloadManagerDisallowed() throws Exception {
if (!supportedHardware()) return;
@@ -1205,7 +1242,7 @@
"" /* allowedApps */, "com.android.providers.downloads", null /* proxyInfo */,
null /* underlyingNetworks */, false /* isAlwaysMetered */);
- final Context context = VpnTest.this.getInstrumentation().getContext();
+ final Context context = getInstrumentation().getContext();
final DownloadManager dm = context.getSystemService(DownloadManager.class);
final DownloadCompleteReceiver receiver = new DownloadCompleteReceiver();
try {