Revert "Move Compose Macrobenchmarks to a self-instrumenting test module." This reverts commit 6b8bf61f56fc3f53d43e8a88192fff81c477fabb. Reason for revert: Compose macrobenchmarks failing in CI Bug: 200274033 Change-Id: I7e441111c3823aac9e5b1dd5d897602f3e16e65d
diff --git a/buildSrc/private/src/main/kotlin/androidx/build/testConfiguration/TestSuiteConfiguration.kt b/buildSrc/private/src/main/kotlin/androidx/build/testConfiguration/TestSuiteConfiguration.kt index ed9c041..db5e430 100644 --- a/buildSrc/private/src/main/kotlin/androidx/build/testConfiguration/TestSuiteConfiguration.kt +++ b/buildSrc/private/src/main/kotlin/androidx/build/testConfiguration/TestSuiteConfiguration.kt
@@ -292,10 +292,8 @@ private fun Project.getOrCreateMacrobenchmarkConfigTask(variantName: String): TaskProvider<GenerateTestConfigurationTask> { val parentProject = this.parent!! - val taskCollection = parentProject.tasks.withType(GenerateTestConfigurationTask::class.java) - val taskNames = taskCollection.getNames() return if ( - "${AndroidXImplPlugin.GENERATE_TEST_CONFIGURATION_TASK}$variantName" !in taskNames + parentProject.tasks.withType(GenerateTestConfigurationTask::class.java).isEmpty() ) { parentProject.tasks.register( "${AndroidXImplPlugin.GENERATE_TEST_CONFIGURATION_TASK}$variantName",
diff --git a/compose/integration-tests/macrobenchmark/build.gradle b/compose/integration-tests/macrobenchmark/build.gradle index 6dfe087..4269659 100644 --- a/compose/integration-tests/macrobenchmark/build.gradle +++ b/compose/integration-tests/macrobenchmark/build.gradle
@@ -1,5 +1,5 @@ /* - * Copyright 2021 The Android Open Source Project + * Copyright (C) 2020 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,39 +16,26 @@ plugins { id("AndroidXPlugin") - id("com.android.test") + id("com.android.library") id("kotlin-android") } -android { - targetProjectPath = ":compose:integration-tests:macrobenchmark-target" - experimentalProperties["android.experimental.self-instrumenting"] = true - - buildTypes { - release { - debuggable = true - } - } - - defaultConfig { - minSdkVersion 28 - testInstrumentationRunnerArgument "androidx.benchmark.output.enable", "true" - } -} - -androidComponents { - beforeVariants(selector().all()) { - enabled = buildType == 'release' - } +android.defaultConfig { + minSdkVersion 28 + testInstrumentationRunnerArgument "androidx.benchmark.output.enable", "true" } dependencies { - implementation(project(":benchmark:benchmark-junit4")) - implementation(project(":benchmark:benchmark-macro-junit4")) - implementation(project(":internal-testutils-macrobenchmark")) - implementation(libs.testRules) - implementation(libs.testExtJunit) - implementation(libs.testCore) - implementation(libs.testRunner) - implementation(libs.testUiautomator) + androidTestImplementation(project(":benchmark:benchmark-junit4")) + androidTestImplementation(project(":benchmark:benchmark-macro-junit4")) + androidTestImplementation(project(":internal-testutils-macrobenchmark")) + androidTestImplementation(libs.testRules) + androidTestImplementation(libs.testExtJunit) + androidTestImplementation(libs.testCore) + androidTestImplementation(libs.testRunner) + androidTestImplementation(libs.testUiautomator) } + +// Define a task dependency so the app is installed before we run macro benchmarks. +tasks.getByPath(":compose:integration-tests:macrobenchmark:connectedCheck") + .dependsOn(tasks.getByPath(":compose:integration-tests:macrobenchmark-target:installRelease"))
diff --git a/compose/integration-tests/macrobenchmark/src/androidTest/AndroidManifest.xml b/compose/integration-tests/macrobenchmark/src/androidTest/AndroidManifest.xml new file mode 100644 index 0000000..0718de4 --- /dev/null +++ b/compose/integration-tests/macrobenchmark/src/androidTest/AndroidManifest.xml
@@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + ~ Copyright (C) 2020 The Android Open Source Project + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> +<manifest package="androidx.compose.integration.macrobenchmark.test"/>
diff --git a/compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/BenchmarkingUtils.kt b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/BenchmarkingUtils.kt similarity index 100% rename from compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/BenchmarkingUtils.kt rename to compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/BenchmarkingUtils.kt
diff --git a/compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/IoSettingsStartupBenchmark.kt b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/IoSettingsStartupBenchmark.kt similarity index 100% rename from compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/IoSettingsStartupBenchmark.kt rename to compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/IoSettingsStartupBenchmark.kt
diff --git a/compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/NestedListsScrollBenchmark.kt b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/NestedListsScrollBenchmark.kt similarity index 100% rename from compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/NestedListsScrollBenchmark.kt rename to compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/NestedListsScrollBenchmark.kt
diff --git a/compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/SmallListStartupBenchmark.kt b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/SmallListStartupBenchmark.kt similarity index 100% rename from compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/SmallListStartupBenchmark.kt rename to compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/SmallListStartupBenchmark.kt
diff --git a/compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/TrivialListScrollBenchmark.kt b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/TrivialListScrollBenchmark.kt similarity index 100% rename from compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/TrivialListScrollBenchmark.kt rename to compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/TrivialListScrollBenchmark.kt
diff --git a/compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/TrivialStartupBenchmark.kt b/compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/TrivialStartupBenchmark.kt similarity index 100% rename from compose/integration-tests/macrobenchmark/src/main/java/androidx/compose/integration/macrobenchmark/TrivialStartupBenchmark.kt rename to compose/integration-tests/macrobenchmark/src/androidTest/java/androidx/compose/integration/macrobenchmark/TrivialStartupBenchmark.kt
diff --git a/compose/integration-tests/macrobenchmark/src/main/AndroidManifest.xml b/compose/integration-tests/macrobenchmark/src/main/AndroidManifest.xml index 0718de4..34af7ba 100644 --- a/compose/integration-tests/macrobenchmark/src/main/AndroidManifest.xml +++ b/compose/integration-tests/macrobenchmark/src/main/AndroidManifest.xml
@@ -14,4 +14,4 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License. --> -<manifest package="androidx.compose.integration.macrobenchmark.test"/> +<manifest package="androidx.compose.integration.macrobenchmark" />