From 04d72a0cde78ea8a34b660101bfb171a54244e1e Mon Sep 17 00:00:00 2001 From: Patrick Rohr Date: Mon, 5 Jun 2023 15:27:26 -0700 Subject: [PATCH] cronet tests: Do not run integration tests on R CtsNetHttpTestCases were missing a DevSdkIgnoreRule after updating the min_sdk version to R+ (which made it installable on R where the cronet classes are not in the bootclasspath.) Test: atest CtsNetHttpTestCases Bug: 259632936 (cherry picked from https://android-review.googlesource.com/q/commit:92c4636c5cda994f0ad9508e3cd5e26ea727079f) Merged-In: I706ff92376227c1759fd6e542066fcff3a7cf052 Change-Id: I706ff92376227c1759fd6e542066fcff3a7cf052 --- Cronet/tests/cts/Android.bp | 1 + .../src/android/net/http/cts/BidirectionalStreamTest.kt | 7 +++++-- .../cts/src/android/net/http/cts/CallbackExceptionTest.kt | 7 +++++-- .../net/http/cts/ConnectionMigrationOptionsTest.kt | 7 +++++-- .../tests/cts/src/android/net/http/cts/DnsOptionsTest.kt | 7 +++++-- .../cts/src/android/net/http/cts/HttpEngineTest.java | 8 ++++++-- .../cts/src/android/net/http/cts/NetworkExceptionTest.kt | 7 +++++-- .../cts/src/android/net/http/cts/QuicExceptionTest.kt | 7 +++++-- .../tests/cts/src/android/net/http/cts/QuicOptionsTest.kt | 7 +++++-- .../cts/src/android/net/http/cts/UrlRequestTest.java | 8 ++++++-- .../cts/src/android/net/http/cts/UrlResponseInfoTest.kt | 7 +++++-- 11 files changed, 53 insertions(+), 20 deletions(-) diff --git a/Cronet/tests/cts/Android.bp b/Cronet/tests/cts/Android.bp index 1e0adefa89..a0b2434a38 100644 --- a/Cronet/tests/cts/Android.bp +++ b/Cronet/tests/cts/Android.bp @@ -37,6 +37,7 @@ android_library { "junit", "kotlin-test", "mockito-target", + "net-tests-utils", "truth", ], libs: [ diff --git a/Cronet/tests/cts/src/android/net/http/cts/BidirectionalStreamTest.kt b/Cronet/tests/cts/src/android/net/http/cts/BidirectionalStreamTest.kt index bead1f8553..0760e68536 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/BidirectionalStreamTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/BidirectionalStreamTest.kt @@ -23,8 +23,10 @@ import android.net.http.cts.util.TestBidirectionalStreamCallback import android.net.http.cts.util.TestBidirectionalStreamCallback.ResponseStep import android.net.http.cts.util.assumeOKStatusCode import android.net.http.cts.util.skipIfNoInternetConnection +import android.os.Build import androidx.test.core.app.ApplicationProvider -import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import kotlin.test.Test import kotlin.test.assertEquals import org.hamcrest.MatcherAssert @@ -39,7 +41,8 @@ private const val URL = "https://source.android.com" * This tests uses a non-hermetic server. Instead of asserting, assume the next callback. This way, * if the request were to fail, the test would just be skipped instead of failing. */ -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class BidirectionalStreamTest { private val context: Context = ApplicationProvider.getApplicationContext() private val callback = TestBidirectionalStreamCallback() diff --git a/Cronet/tests/cts/src/android/net/http/cts/CallbackExceptionTest.kt b/Cronet/tests/cts/src/android/net/http/cts/CallbackExceptionTest.kt index 749389eb4b..1405ed90c4 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/CallbackExceptionTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/CallbackExceptionTest.kt @@ -23,8 +23,10 @@ import android.net.http.cts.util.HttpCtsTestServer import android.net.http.cts.util.TestUrlRequestCallback import android.net.http.cts.util.TestUrlRequestCallback.FailureType import android.net.http.cts.util.TestUrlRequestCallback.ResponseStep +import android.os.Build import androidx.test.core.app.ApplicationProvider -import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import kotlin.test.Test import kotlin.test.assertEquals import kotlin.test.assertIs @@ -32,7 +34,8 @@ import kotlin.test.assertSame import kotlin.test.assertTrue import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class CallbackExceptionTest { @Test diff --git a/Cronet/tests/cts/src/android/net/http/cts/ConnectionMigrationOptionsTest.kt b/Cronet/tests/cts/src/android/net/http/cts/ConnectionMigrationOptionsTest.kt index 219db61bae..10c7f3c301 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/ConnectionMigrationOptionsTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/ConnectionMigrationOptionsTest.kt @@ -19,12 +19,15 @@ package android.net.http.cts import android.net.http.ConnectionMigrationOptions import android.net.http.ConnectionMigrationOptions.MIGRATION_OPTION_ENABLED import android.net.http.ConnectionMigrationOptions.MIGRATION_OPTION_UNSPECIFIED -import androidx.test.ext.junit.runners.AndroidJUnit4 +import android.os.Build +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import kotlin.test.Test import kotlin.test.assertEquals import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class ConnectionMigrationOptionsTest { @Test diff --git a/Cronet/tests/cts/src/android/net/http/cts/DnsOptionsTest.kt b/Cronet/tests/cts/src/android/net/http/cts/DnsOptionsTest.kt index 6f4a9792b9..56802c6b21 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/DnsOptionsTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/DnsOptionsTest.kt @@ -19,7 +19,9 @@ package android.net.http.cts import android.net.http.DnsOptions import android.net.http.DnsOptions.DNS_OPTION_ENABLED import android.net.http.DnsOptions.DNS_OPTION_UNSPECIFIED -import androidx.test.ext.junit.runners.AndroidJUnit4 +import android.os.Build +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import java.time.Duration import kotlin.test.Test import kotlin.test.assertEquals @@ -27,7 +29,8 @@ import kotlin.test.assertNotNull import kotlin.test.assertNull import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class DnsOptionsTest { @Test diff --git a/Cronet/tests/cts/src/android/net/http/cts/HttpEngineTest.java b/Cronet/tests/cts/src/android/net/http/cts/HttpEngineTest.java index 31990fb9bf..9fc4389103 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/HttpEngineTest.java +++ b/Cronet/tests/cts/src/android/net/http/cts/HttpEngineTest.java @@ -40,9 +40,12 @@ import android.net.http.UrlResponseInfo; import android.net.http.cts.util.HttpCtsTestServer; import android.net.http.cts.util.TestUrlRequestCallback; import android.net.http.cts.util.TestUrlRequestCallback.ResponseStep; +import android.os.Build; import androidx.test.core.app.ApplicationProvider; -import androidx.test.ext.junit.runners.AndroidJUnit4; + +import com.android.testutils.DevSdkIgnoreRule; +import com.android.testutils.DevSdkIgnoreRunner; import org.junit.After; import org.junit.Before; @@ -55,7 +58,8 @@ import java.util.Arrays; import java.util.Calendar; import java.util.Set; -@RunWith(AndroidJUnit4.class) +@RunWith(DevSdkIgnoreRunner.class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) public class HttpEngineTest { private static final String HOST = "source.android.com"; private static final String URL = "https://" + HOST; diff --git a/Cronet/tests/cts/src/android/net/http/cts/NetworkExceptionTest.kt b/Cronet/tests/cts/src/android/net/http/cts/NetworkExceptionTest.kt index dd4cf0ddf0..cff54b3646 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/NetworkExceptionTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/NetworkExceptionTest.kt @@ -19,8 +19,10 @@ package android.net.http.cts import android.net.http.HttpEngine import android.net.http.NetworkException import android.net.http.cts.util.TestUrlRequestCallback +import android.os.Build import androidx.test.core.app.ApplicationProvider -import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import kotlin.test.assertEquals import kotlin.test.assertIs import kotlin.test.assertSame @@ -28,7 +30,8 @@ import kotlin.test.assertTrue import org.junit.Test import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class NetworkExceptionTest { @Test diff --git a/Cronet/tests/cts/src/android/net/http/cts/QuicExceptionTest.kt b/Cronet/tests/cts/src/android/net/http/cts/QuicExceptionTest.kt index 4b7aa14c44..2705fc3678 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/QuicExceptionTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/QuicExceptionTest.kt @@ -17,12 +17,15 @@ package android.net.http.cts import android.net.http.QuicException -import androidx.test.ext.junit.runners.AndroidJUnit4 +import android.os.Build +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import kotlin.test.Test import kotlin.test.assertEquals import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class QuicExceptionTest { @Test diff --git a/Cronet/tests/cts/src/android/net/http/cts/QuicOptionsTest.kt b/Cronet/tests/cts/src/android/net/http/cts/QuicOptionsTest.kt index 0b02aa73be..da0b15c528 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/QuicOptionsTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/QuicOptionsTest.kt @@ -16,7 +16,9 @@ package android.net.http.cts import android.net.http.QuicOptions -import androidx.test.ext.junit.runners.AndroidJUnit4 +import android.os.Build +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import com.google.common.truth.Truth.assertThat import java.time.Duration import kotlin.test.assertFailsWith @@ -25,7 +27,8 @@ import kotlin.test.assertTrue import org.junit.Test import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class QuicOptionsTest { @Test fun testQuicOptions_defaultValues() { diff --git a/Cronet/tests/cts/src/android/net/http/cts/UrlRequestTest.java b/Cronet/tests/cts/src/android/net/http/cts/UrlRequestTest.java index 422f4d5089..07e7d45fe7 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/UrlRequestTest.java +++ b/Cronet/tests/cts/src/android/net/http/cts/UrlRequestTest.java @@ -42,12 +42,15 @@ import android.net.http.cts.util.TestStatusListener; import android.net.http.cts.util.TestUrlRequestCallback; import android.net.http.cts.util.TestUrlRequestCallback.ResponseStep; import android.net.http.cts.util.UploadDataProviders; +import android.os.Build; import android.webkit.cts.CtsTestServer; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.test.core.app.ApplicationProvider; -import androidx.test.ext.junit.runners.AndroidJUnit4; + +import com.android.testutils.DevSdkIgnoreRule; +import com.android.testutils.DevSdkIgnoreRunner; import com.google.common.base.Strings; @@ -70,7 +73,8 @@ import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import java.util.stream.Stream; -@RunWith(AndroidJUnit4.class) +@RunWith(DevSdkIgnoreRunner.class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) public class UrlRequestTest { private static final Executor DIRECT_EXECUTOR = Runnable::run; diff --git a/Cronet/tests/cts/src/android/net/http/cts/UrlResponseInfoTest.kt b/Cronet/tests/cts/src/android/net/http/cts/UrlResponseInfoTest.kt index 38da9c5e1b..f1b57c6498 100644 --- a/Cronet/tests/cts/src/android/net/http/cts/UrlResponseInfoTest.kt +++ b/Cronet/tests/cts/src/android/net/http/cts/UrlResponseInfoTest.kt @@ -21,15 +21,18 @@ import android.net.http.HttpEngine import android.net.http.cts.util.HttpCtsTestServer import android.net.http.cts.util.TestUrlRequestCallback import android.net.http.cts.util.TestUrlRequestCallback.ResponseStep +import android.os.Build import androidx.test.core.app.ApplicationProvider -import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.testutils.DevSdkIgnoreRule +import com.android.testutils.DevSdkIgnoreRunner import kotlin.test.Test import kotlin.test.assertEquals import kotlin.test.assertFalse import kotlin.test.assertTrue import org.junit.runner.RunWith -@RunWith(AndroidJUnit4::class) +@RunWith(DevSdkIgnoreRunner::class) +@DevSdkIgnoreRule.IgnoreUpTo(Build.VERSION_CODES.R) class UrlResponseInfoTest { @Test