Fix incubating API exclusion
Previously, all classes with Test as a suffix were being excluded.
Bug: 328748784
Bug: 328749096
Bug: 331936874
Bug: 331936874
Bug: 335848584
Test: Updated expectation files
Change-Id: Ibfd1ab37f5a92c1e2db2d313dc4e92ee7b32d7a9
diff --git a/build-system/gradle-api/api/current.txt b/build-system/gradle-api/api/current.txt
index d9fe109..e7afcd7 100644
--- a/build-system/gradle-api/api/current.txt
+++ b/build-system/gradle-api/api/current.txt
@@ -371,9 +371,9 @@
}
@org.gradle.api.Incubating public interface AndroidTest {
- method public boolean getEnableMinification();
- method public void setEnableMinification(boolean);
- property public abstract boolean enableMinification;
+ method @org.gradle.api.Incubating public boolean getEnableMinification();
+ method @org.gradle.api.Incubating public void setEnableMinification(boolean);
+ property @org.gradle.api.Incubating public abstract boolean enableMinification;
}
public interface AnnotationProcessorOptions {
diff --git a/build-system/gradle-api/src/main/java/com/android/build/api/dsl/AndroidTest.kt b/build-system/gradle-api/src/main/java/com/android/build/api/dsl/AndroidTest.kt
index ce49eb9..33a003d 100644
--- a/build-system/gradle-api/src/main/java/com/android/build/api/dsl/AndroidTest.kt
+++ b/build-system/gradle-api/src/main/java/com/android/build/api/dsl/AndroidTest.kt
@@ -36,5 +36,7 @@
interface AndroidTest {
/** Enable minification for the android test component */
+ @get:Incubating
+ @set:Incubating
var enableMinification: Boolean
}
diff --git a/build-system/gradle-api/src/test/java/com/android/build/api/ApiTestUtils.kt b/build-system/gradle-api/src/test/java/com/android/build/api/ApiTestUtils.kt
index b9b1627..626289d 100644
--- a/build-system/gradle-api/src/test/java/com/android/build/api/ApiTestUtils.kt
+++ b/build-system/gradle-api/src/test/java/com/android/build/api/ApiTestUtils.kt
@@ -18,17 +18,28 @@
package com.android.build.api
+import com.android.build.api.extension.DslExtensionTest
+import com.android.build.api.transform.SecondaryFileTest
import com.google.common.base.Charsets
import com.google.common.base.Splitter
import com.google.common.io.Resources
import com.google.common.reflect.ClassPath
import java.net.URL
+val nonApiClasses = listOf(
+ DslExtensionTest::class,
+ SecondaryFileTest::class,
+ AndroidPluginVersionTest::class,
+ DeprecatedApiTest::class,
+ DeprecatedApiUpdater::class,
+ IncubatingApiTest::class,
+ IncubatingApiUpdater::class,
+ OperationRequestTest::class,
+ SourcesTest::class
+).map { it.qualifiedName }.toSet()
+
fun filterNonApiClasses(classInfo: ClassPath.ClassInfo): Boolean =
- !classInfo.simpleName.endsWith("Test") &&
- classInfo.simpleName != "StableApiUpdater" &&
- classInfo.simpleName != "DeprecatedApiUpdater" &&
- classInfo.simpleName != "ApiTestUtils"
+ !nonApiClasses.contains(classInfo.name) && classInfo.name != "com.android.build.api.ApiTestUtils"
internal fun transformFinalFileContent(currentSnapshotContent: List<String>, snapshotFileUrl: URL, currentKey: String, keyPrefix: String, keyOrdering: Comparator<String>):
diff --git a/build-system/gradle-api/src/test/resources/com/android/build/api/deprecated-api.txt b/build-system/gradle-api/src/test/resources/com/android/build/api/deprecated-api.txt
index dc6687d..3dbf126 100644
--- a/build-system/gradle-api/src/test/resources/com/android/build/api/deprecated-api.txt
+++ b/build-system/gradle-api/src/test/resources/com/android/build/api/deprecated-api.txt
@@ -96,6 +96,7 @@
* com.android.build.api.variant.Component.setAsmFramesComputationMode: void (com.android.build.api.instrumentation.FramesComputationMode)
* com.android.build.api.variant.Component.transformClassesWith: void (java.lang.Class<? extends com.android.build.api.instrumentation.AsmClassVisitorFactory<ParamT>>, com.android.build.api.instrumentation.InstrumentationScope, kotlin.jvm.functions.Function1<? super ParamT, kotlin.Unit>)
Deprecated from AGP UNKNOWN_VERSION
+ * com.android.build.api.component.UnitTest implements com.android.build.api.variant.UnitTest
* com.android.build.api.dsl.AaptOptions implements com.android.build.api.dsl.AndroidResources
* com.android.build.api.dsl.AdbOptions implements com.android.build.api.dsl.Installation
* com.android.build.api.dsl.AndroidSourceSet.getJni: com.android.build.api.dsl.AndroidSourceDirectorySet ()
diff --git a/build-system/gradle-api/src/test/resources/com/android/build/api/incubating-api.txt b/build-system/gradle-api/src/test/resources/com/android/build/api/incubating-api.txt
index c120d41..b214562 100644
--- a/build-system/gradle-api/src/test/resources/com/android/build/api/incubating-api.txt
+++ b/build-system/gradle-api/src/test/resources/com/android/build/api/incubating-api.txt
@@ -255,6 +255,11 @@
* com.android.build.api.dsl.TestOptions.failureRetention: void (kotlin.jvm.functions.Function1<? super com.android.build.api.dsl.FailureRetention, kotlin.Unit>)
* com.android.build.api.dsl.TestOptions.getFailureRetention: com.android.build.api.dsl.FailureRetention ()
https://issuetracker.google.com/328748784
+ * com.android.build.api.variant.DeviceTest implements com.android.build.api.variant.GeneratesTestApk, com.android.build.api.variant.HasAndroidResources, com.android.build.api.variant.TestComponent
+ * com.android.build.api.variant.DeviceTest.getApplicationId: org.gradle.api.provider.Property<java.lang.String> ()
+ * com.android.build.api.variant.DeviceTest.getBuildConfigFields: org.gradle.api.provider.MapProperty<java.lang.String, ? extends com.android.build.api.variant.BuildConfigField<? extends java.io.Serializable>> ()
+ * com.android.build.api.variant.DeviceTest.getProguardFiles: org.gradle.api.provider.ListProperty<org.gradle.api.file.RegularFile> ()
+ * com.android.build.api.variant.DeviceTest.getSigningConfig: com.android.build.api.variant.SigningConfig ()
* com.android.build.api.variant.HasDeviceTests
* com.android.build.api.variant.HasDeviceTests.getDeviceTests: java.util.List<com.android.build.api.variant.DeviceTest> ()
https://issuetracker.google.com/328748820
@@ -485,6 +490,9 @@
https://issuetracker.google.com/328749082
* com.android.build.api.variant.AarMetadata.getMinAgpVersion: org.gradle.api.provider.Property<java.lang.String> ()
https://issuetracker.google.com/328749096
+ * com.android.build.api.dsl.AndroidTest
+ * com.android.build.api.dsl.AndroidTest.getEnableMinification: boolean ()
+ * com.android.build.api.dsl.AndroidTest.setEnableMinification: void (boolean)
* com.android.build.api.dsl.LibraryBuildType.androidTest: void (kotlin.jvm.functions.Function1<? super com.android.build.api.dsl.AndroidTest, kotlin.Unit>)
* com.android.build.api.dsl.LibraryBuildType.getAndroidTest: com.android.build.api.dsl.AndroidTest ()
https://issuetracker.google.com/328749098
@@ -690,6 +698,7 @@
* com.android.build.api.variant.HasHostTests.getHostTests: java.util.Map<java.lang.String, com.android.build.api.variant.HostTest> ()
* com.android.build.api.variant.HasHostTestsBuilder
* com.android.build.api.variant.HasHostTestsBuilder.getHostTests: java.util.Map<java.lang.String, com.android.build.api.variant.HostTestBuilder> ()
+ * com.android.build.api.variant.HostTest implements com.android.build.api.variant.TestComponent
* com.android.build.api.variant.HostTestBuilder
* com.android.build.api.variant.HostTestBuilder.getEnable: boolean ()
* com.android.build.api.variant.HostTestBuilder.getType: java.lang.String ()
@@ -699,5 +708,9 @@
https://issuetracker.google.com/333537222
* com.android.build.api.dsl.AndroidSourceDirectorySet.getDirectories: java.util.Set<java.lang.String> ()
https://issuetracker.google.com/335848584
+ * com.android.build.api.variant.HostTest.isCodeCoverageEnabled: boolean ()
* com.android.build.api.variant.HostTestBuilder.getEnableCodeCoverage: boolean ()
* com.android.build.api.variant.HostTestBuilder.setEnableCodeCoverage: void (boolean)
+https://issuetracker.google.com/336985668
+ * com.android.build.api.variant.HostTest.configureTestTask: void (kotlin.jvm.functions.Function1<? super org.gradle.api.tasks.testing.Test, kotlin.Unit>)
+ * com.android.build.api.variant.UnitTest.configureTestTask: void (kotlin.jvm.functions.Function1<? super org.gradle.api.tasks.testing.Test, kotlin.Unit>)