Move shared/basic testing utilities to a testbase module
Bug: 327326057
Change-Id: I0ffaaf3fc9a5db57df41b06fa45d273b2595da2e
diff --git a/d8_r8/test/build.gradle.kts b/d8_r8/test/build.gradle.kts
index ef3e504..2bd2638 100644
--- a/d8_r8/test/build.gradle.kts
+++ b/d8_r8/test/build.gradle.kts
@@ -80,18 +80,22 @@
archiveFileName.set("r8test_base.jar")
}
- // When testing R8 lib with relocated deps we must relocate kotlinx.metadata in the tests, since
- // types from kotlinx.metadata are used on the R8 main/R8 test boundary.
- //
- // This is not needed when testing R8 lib excluding deps since we simply include the deps on the
- // classpath at runtime.
- val relocateTestsForR8LibWithRelocatedDeps by registering(Exec::class) {
- dependsOn(packageTests, r8WithRelocatedDepsTask)
- val r8WithRelocatedDepsJar = r8WithRelocatedDepsTask.getSingleOutputFile()
- val testJar = packageTests.getSingleOutputFile()
- inputs.files(r8WithRelocatedDepsJar, testJar)
- val outputJar = file(Paths.get("build", "libs", "r8tests-relocated.jar"))
+ val packageTestBaseExcludeKeep by registering(Jar::class) {
+ dependsOn(packageTestBase)
+ from(zipTree(packageTestBase.getSingleOutputFile()))
+ // TODO(b/328353718): we have com.android.tools.r8.Keep in both test_base and main
+ exclude("com/android/tools/r8/Keep.class")
+ archiveFileName.set("r8test_base_no_keep.jar")
+ }
+
+
+ fun Exec.executeRelocator(jarProvider: TaskProvider<*>, artifactName: String) {
+ dependsOn(r8WithRelocatedDepsTask, jarProvider)
+ val outputJar = file(Paths.get("build", "libs", artifactName))
outputs.file(outputJar)
+ val r8WithRelocatedDepsJar = r8WithRelocatedDepsTask.getSingleOutputFile()
+ val testJar = jarProvider.getSingleOutputFile()
+ inputs.files(r8WithRelocatedDepsJar, testJar)
commandLine = baseCompilerCommandLine(
r8WithRelocatedDepsJar,
"relocator",
@@ -103,6 +107,19 @@
"kotlinx.metadata.**->com.android.tools.r8.jetbrains.kotlinx.metadata"))
}
+ // When testing R8 lib with relocated deps we must relocate kotlinx.metadata in the tests, since
+ // types from kotlinx.metadata are used on the R8 main/R8 test boundary.
+ //
+ // This is not needed when testing R8 lib excluding deps since we simply include the deps on the
+ // classpath at runtime.
+ val relocateTestsForR8LibWithRelocatedDeps by registering(Exec::class) {
+ executeRelocator(packageTests, "r8tests-relocated.jar")
+ }
+
+ val relocateTestBaseForR8LibWithRelocatedDeps by registering(Exec::class) {
+ executeRelocator(packageTestBase, "r8testbase-relocated.jar")
+ }
+
fun Exec.generateKeepRulesForR8Lib(
targetJarProvider: Task, testJarProviders: List<TaskProvider<*>>, artifactName: String) {
dependsOn(
@@ -146,7 +163,7 @@
val generateKeepRulesForR8LibWithRelocatedDeps by registering(Exec::class) {
generateKeepRulesForR8Lib(
r8WithRelocatedDepsTask,
- listOf(relocateTestsForR8LibWithRelocatedDeps, packageTestBase),
+ listOf(relocateTestsForR8LibWithRelocatedDeps, relocateTestBaseForR8LibWithRelocatedDeps),
"generated-keep-rules-r8lib.txt")
}
@@ -258,12 +275,12 @@
r8JarProvider,
r8WithRelocatedDepsTask,
testJarProvider,
- packageTestBase)
+ packageTestBaseExcludeKeep)
val keepRulesFile = keepRulesFileProvider.getSingleOutputFile()
val rtJar = resolve(ThirdPartyDeps.java8Runtime, "rt.jar").getSingleFile()
val r8Jar = r8JarProvider.getSingleOutputFile()
val r8WithRelocatedDepsJar = r8WithRelocatedDepsTask.getSingleOutputFile()
- val testBaseJar = packageTestBase.getSingleOutputFile()
+ val testBaseJar = packageTestBaseExcludeKeep.getSingleOutputFile()
val testDepsJar = packageTestDeps.getSingleOutputFile()
val testJar = testJarProvider.getSingleOutputFile()
inputs.files(keepRulesFile, rtJar, r8Jar, r8WithRelocatedDepsJar, testDepsJar, testJar)
@@ -306,7 +323,7 @@
rewriteTestsForR8Lib(
generateTestKeepRulesR8LibWithRelocatedDeps,
r8WithRelocatedDepsTask,
- packageTestBase,
+ relocateTestBaseForR8LibWithRelocatedDeps,
"r8libtestbase-cf.jar",
false)
}
@@ -333,6 +350,13 @@
into(outputDir)
}
+ val unzipTestBase by registering(Copy::class) {
+ dependsOn(cleanUnzipTests, packageTestBase)
+ val outputDir = file("${buildDir}/unpacked/testbase")
+ from(zipTree(packageTestBase.getSingleOutputFile()))
+ into(outputDir)
+ }
+
fun Copy.unzipRewrittenTestsForR8Lib(
rewrittenTestJarProvider: TaskProvider<Exec>, outDirName: String) {
dependsOn(rewrittenTestJarProvider)
@@ -374,6 +398,7 @@
rewriteTestBaseForR8LibWithRelocatedDeps,
unzipRewrittenTests,
unzipTests,
+ unzipTestBase,
gradle.includedBuild("shared").task(":downloadDeps"))
if (!project.hasProperty("no_internal")) {
dependsOn(gradle.includedBuild("shared").task(":downloadDepsInternal"))
@@ -392,6 +417,8 @@
rewriteTestBaseForR8LibWithRelocatedDeps.getSingleOutputFile())
testClassesDirs = unzipRewrittenTests.get().getOutputs().getFiles()
systemProperty("TEST_DATA_LOCATION", unzipTests.getSingleOutputFile())
+ systemProperty("TESTBASE_DATA_LOCATION", unzipTestBase.getSingleOutputFile())
+
systemProperty(
"BUILD_PROP_KEEPANNO_RUNTIME_PATH",
keepAnnoCompileTask.getOutputs().getFiles().getAsPath().split(File.pathSeparator)[0])
diff --git a/d8_r8/test_modules/tests_java_8/build.gradle.kts b/d8_r8/test_modules/tests_java_8/build.gradle.kts
index 1d76606..779cd6c 100644
--- a/d8_r8/test_modules/tests_java_8/build.gradle.kts
+++ b/d8_r8/test_modules/tests_java_8/build.gradle.kts
@@ -131,6 +131,9 @@
dependsOn(sourceSetDependencyTask)
systemProperty("TEST_DATA_LOCATION",
layout.buildDirectory.dir("classes/java/test").get().toString())
+ systemProperty("TESTBASE_DATA_LOCATION",
+ testbaseJavaCompileTask.outputs.files.getAsPath().split(File.pathSeparator)[0])
+
systemProperty(
"BUILD_PROP_KEEPANNO_RUNTIME_PATH",
keepAnnoCompileTask.outputs.files.getAsPath().split(File.pathSeparator)[0])
diff --git a/src/test/bootstrap/com/android/tools/r8/bootstrap/RetraceStackTraceFunctionalCompositionTest.java b/src/test/bootstrap/com/android/tools/r8/bootstrap/RetraceStackTraceFunctionalCompositionTest.java
index 7fcb455..35f157d 100644
--- a/src/test/bootstrap/com/android/tools/r8/bootstrap/RetraceStackTraceFunctionalCompositionTest.java
+++ b/src/test/bootstrap/com/android/tools/r8/bootstrap/RetraceStackTraceFunctionalCompositionTest.java
@@ -16,7 +16,6 @@
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
import com.android.tools.r8.ToolHelper;
-import com.android.tools.r8.dex.Marker.Backend;
import com.android.tools.r8.retrace.ProguardMapProducer;
import com.android.tools.r8.retrace.ProguardMappingSupplier;
import com.android.tools.r8.retrace.Retrace;
diff --git a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsCollection.java b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsCollection.java
index a960739..14b10f4 100644
--- a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsCollection.java
+++ b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsCollection.java
@@ -3,7 +3,6 @@
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.benchmarks;
-import com.android.tools.r8.benchmarks.BenchmarkRunner.ResultMode;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
diff --git a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsSingle.java b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsSingle.java
index fc6540e..e0bb9f193 100644
--- a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsSingle.java
+++ b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsSingle.java
@@ -3,7 +3,6 @@
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.benchmarks;
-import com.android.tools.r8.benchmarks.BenchmarkRunner.ResultMode;
import it.unimi.dsi.fastutil.longs.LongArrayList;
import it.unimi.dsi.fastutil.longs.LongList;
import java.util.Set;
diff --git a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsWarmup.java b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsWarmup.java
index 86b1dc4..2ac97a6 100644
--- a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsWarmup.java
+++ b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResultsWarmup.java
@@ -3,7 +3,6 @@
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.benchmarks;
-import com.android.tools.r8.benchmarks.BenchmarkRunner.ResultMode;
import it.unimi.dsi.fastutil.longs.LongArrayList;
import it.unimi.dsi.fastutil.longs.LongList;
diff --git a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkRunner.java b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkRunner.java
index f210e18..2fed6dc 100644
--- a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkRunner.java
+++ b/src/test/java/com/android/tools/r8/benchmarks/BenchmarkRunner.java
@@ -3,7 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.benchmarks;
-import com.android.tools.r8.utils.StringUtils;
+import com.android.tools.r8.benchmarks.BenchmarkResults.ResultMode;
public class BenchmarkRunner {
@@ -11,20 +11,10 @@
void run(BenchmarkResults results) throws Exception;
}
- public enum ResultMode {
- AVERAGE,
- SUM;
-
- @Override
- public String toString() {
- return StringUtils.toLowerCase(name());
- }
- }
-
private final BenchmarkConfig config;
private int warmups = 0;
private int iterations = 1;
- private ResultMode resultMode = ResultMode.AVERAGE;
+ private ResultMode resultMode = BenchmarkResults.ResultMode.AVERAGE;
private BenchmarkRunner(BenchmarkConfig config) {
this.config = config;
@@ -45,12 +35,12 @@
}
public BenchmarkRunner reportResultAverage() {
- resultMode = ResultMode.AVERAGE;
+ resultMode = BenchmarkResults.ResultMode.AVERAGE;
return this;
}
public BenchmarkRunner reportResultSum() {
- resultMode = ResultMode.SUM;
+ resultMode = BenchmarkResults.ResultMode.SUM;
return this;
}
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedByteReturnPropagationTest.java b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedByteReturnPropagationTest.java
index 3043c57..a9f0afe 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedByteReturnPropagationTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedByteReturnPropagationTest.java
@@ -11,7 +11,6 @@
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.ir.optimize.boxedprimitives.BoxedBooleanReturnPropagationTest.Main;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import org.junit.Test;
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedCharacterReturnPropagationTest.java b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedCharacterReturnPropagationTest.java
index 6542212..cca4303 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedCharacterReturnPropagationTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedCharacterReturnPropagationTest.java
@@ -11,7 +11,6 @@
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.ir.optimize.boxedprimitives.BoxedByteReturnPropagationTest.Main;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import org.junit.Test;
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedDoubleReturnPropagationTest.java b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedDoubleReturnPropagationTest.java
index a383a2d..c3944d5 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedDoubleReturnPropagationTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedDoubleReturnPropagationTest.java
@@ -11,7 +11,6 @@
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.ir.optimize.boxedprimitives.BoxedCharacterReturnPropagationTest.Main;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import org.junit.Test;
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedFloatReturnPropagationTest.java b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedFloatReturnPropagationTest.java
index ca68794..2b7ba63 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedFloatReturnPropagationTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedFloatReturnPropagationTest.java
@@ -11,7 +11,6 @@
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.ir.optimize.boxedprimitives.BoxedCharacterReturnPropagationTest.Main;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import org.junit.Test;
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedIntegerReturnPropagationTest.java b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedIntegerReturnPropagationTest.java
index 0f205ea..bc39ab8 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedIntegerReturnPropagationTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedIntegerReturnPropagationTest.java
@@ -11,7 +11,6 @@
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.ir.optimize.boxedprimitives.BoxedCharacterReturnPropagationTest.Main;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import org.junit.Test;
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedLongReturnPropagationTest.java b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedLongReturnPropagationTest.java
index e588489..53aebf8 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedLongReturnPropagationTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedLongReturnPropagationTest.java
@@ -11,7 +11,6 @@
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.ir.optimize.boxedprimitives.BoxedCharacterReturnPropagationTest.Main;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import org.junit.Test;
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedShortReturnPropagationTest.java b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedShortReturnPropagationTest.java
index 3c8b0b8..fecac90 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedShortReturnPropagationTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/boxedprimitives/BoxedShortReturnPropagationTest.java
@@ -11,7 +11,6 @@
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
import com.android.tools.r8.TestParametersCollection;
-import com.android.tools.r8.ir.optimize.boxedprimitives.BoxedCharacterReturnPropagationTest.Main;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import org.junit.Test;
diff --git a/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfConstClassArraysTest.java b/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfConstClassArraysTest.java
index b37c8a2..d2afb69 100644
--- a/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfConstClassArraysTest.java
+++ b/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfConstClassArraysTest.java
@@ -10,7 +10,6 @@
import com.android.tools.r8.NeverInline;
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
-import com.android.tools.r8.rewrite.arrays.ConstClassArrayWithUniqueValuesTest.TestClass;
import com.android.tools.r8.utils.StringUtils;
import com.android.tools.r8.utils.codeinspector.CodeInspector;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
diff --git a/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfStringArraysTest.java b/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfStringArraysTest.java
index d238b1a..5aaed9c 100644
--- a/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfStringArraysTest.java
+++ b/src/test/java/com/android/tools/r8/rewrite/arrays/ArrayOfStringArraysTest.java
@@ -10,7 +10,6 @@
import com.android.tools.r8.NeverInline;
import com.android.tools.r8.TestBase;
import com.android.tools.r8.TestParameters;
-import com.android.tools.r8.rewrite.arrays.ArrayOfConstClassArraysTest.TestClass;
import com.android.tools.r8.utils.StringUtils;
import com.android.tools.r8.utils.codeinspector.CodeInspector;
import com.android.tools.r8.utils.codeinspector.InstructionSubject;
diff --git a/src/test/java/com/android/tools/r8/AlwaysClassInline.java b/src/test/testbase/java/com/android/tools/r8/AlwaysClassInline.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/AlwaysClassInline.java
rename to src/test/testbase/java/com/android/tools/r8/AlwaysClassInline.java
diff --git a/src/test/java/com/android/tools/r8/AlwaysInline.java b/src/test/testbase/java/com/android/tools/r8/AlwaysInline.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/AlwaysInline.java
rename to src/test/testbase/java/com/android/tools/r8/AlwaysInline.java
diff --git a/src/test/java/com/android/tools/r8/AsmTestBase.java b/src/test/testbase/java/com/android/tools/r8/AsmTestBase.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/AsmTestBase.java
rename to src/test/testbase/java/com/android/tools/r8/AsmTestBase.java
diff --git a/src/test/java/com/android/tools/r8/AssumeMayHaveSideEffects.java b/src/test/testbase/java/com/android/tools/r8/AssumeMayHaveSideEffects.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/AssumeMayHaveSideEffects.java
rename to src/test/testbase/java/com/android/tools/r8/AssumeMayHaveSideEffects.java
diff --git a/src/test/java/com/android/tools/r8/AssumeNoClassInitializationSideEffects.java b/src/test/testbase/java/com/android/tools/r8/AssumeNoClassInitializationSideEffects.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/AssumeNoClassInitializationSideEffects.java
rename to src/test/testbase/java/com/android/tools/r8/AssumeNoClassInitializationSideEffects.java
diff --git a/src/test/java/com/android/tools/r8/AssumeNoSideEffects.java b/src/test/testbase/java/com/android/tools/r8/AssumeNoSideEffects.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/AssumeNoSideEffects.java
rename to src/test/testbase/java/com/android/tools/r8/AssumeNoSideEffects.java
diff --git a/src/test/java/com/android/tools/r8/AssumeNotNull.java b/src/test/testbase/java/com/android/tools/r8/AssumeNotNull.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/AssumeNotNull.java
rename to src/test/testbase/java/com/android/tools/r8/AssumeNotNull.java
diff --git a/src/test/java/com/android/tools/r8/CheckEnumUnboxed.java b/src/test/testbase/java/com/android/tools/r8/CheckEnumUnboxed.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/CheckEnumUnboxed.java
rename to src/test/testbase/java/com/android/tools/r8/CheckEnumUnboxed.java
diff --git a/src/test/java/com/android/tools/r8/CollectorsUtils.java b/src/test/testbase/java/com/android/tools/r8/CollectorsUtils.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/CollectorsUtils.java
rename to src/test/testbase/java/com/android/tools/r8/CollectorsUtils.java
diff --git a/src/test/java/com/android/tools/r8/D8TestBuilder.java b/src/test/testbase/java/com/android/tools/r8/D8TestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/D8TestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/D8TestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/D8TestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/D8TestCompileResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/D8TestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/D8TestCompileResult.java
diff --git a/src/test/java/com/android/tools/r8/D8TestRunResult.java b/src/test/testbase/java/com/android/tools/r8/D8TestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/D8TestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/D8TestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/DXTestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/DXTestCompileResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DXTestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/DXTestCompileResult.java
diff --git a/src/test/java/com/android/tools/r8/DXTestRunResult.java b/src/test/testbase/java/com/android/tools/r8/DXTestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DXTestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/DXTestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/DesugarTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/DesugarTestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DesugarTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/DesugarTestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/DesugarTestConfiguration.java b/src/test/testbase/java/com/android/tools/r8/DesugarTestConfiguration.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DesugarTestConfiguration.java
rename to src/test/testbase/java/com/android/tools/r8/DesugarTestConfiguration.java
diff --git a/src/test/java/com/android/tools/r8/DesugarTestRunResult.java b/src/test/testbase/java/com/android/tools/r8/DesugarTestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DesugarTestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/DesugarTestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/DeviceRunner.java b/src/test/testbase/java/com/android/tools/r8/DeviceRunner.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DeviceRunner.java
rename to src/test/testbase/java/com/android/tools/r8/DeviceRunner.java
diff --git a/src/test/java/com/android/tools/r8/Dex2OatTestRunResult.java b/src/test/testbase/java/com/android/tools/r8/Dex2OatTestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/Dex2OatTestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/Dex2OatTestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/DiagnosticsChecker.java b/src/test/testbase/java/com/android/tools/r8/DiagnosticsChecker.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DiagnosticsChecker.java
rename to src/test/testbase/java/com/android/tools/r8/DiagnosticsChecker.java
diff --git a/src/test/java/com/android/tools/r8/DiagnosticsMatcher.java b/src/test/testbase/java/com/android/tools/r8/DiagnosticsMatcher.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/DiagnosticsMatcher.java
rename to src/test/testbase/java/com/android/tools/r8/DiagnosticsMatcher.java
diff --git a/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java b/src/test/testbase/java/com/android/tools/r8/ExternalR8TestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/ExternalR8TestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/ExternalR8TestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/ExternalR8TestCompileResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ExternalR8TestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/ExternalR8TestCompileResult.java
diff --git a/src/test/java/com/android/tools/r8/ExternalR8TestRunResult.java b/src/test/testbase/java/com/android/tools/r8/ExternalR8TestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ExternalR8TestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/ExternalR8TestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/GenerateMainDexListResult.java b/src/test/testbase/java/com/android/tools/r8/GenerateMainDexListResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/GenerateMainDexListResult.java
rename to src/test/testbase/java/com/android/tools/r8/GenerateMainDexListResult.java
diff --git a/src/test/java/com/android/tools/r8/GenerateMainDexListRunResult.java b/src/test/testbase/java/com/android/tools/r8/GenerateMainDexListRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/GenerateMainDexListRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/GenerateMainDexListRunResult.java
diff --git a/src/test/java/com/android/tools/r8/GenerateMainDexListTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/GenerateMainDexListTestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/GenerateMainDexListTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/GenerateMainDexListTestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/IntermediateCfD8TestBuilder.java b/src/test/testbase/java/com/android/tools/r8/IntermediateCfD8TestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/IntermediateCfD8TestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/IntermediateCfD8TestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/JavaCompilerTool.java b/src/test/testbase/java/com/android/tools/r8/JavaCompilerTool.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/JavaCompilerTool.java
rename to src/test/testbase/java/com/android/tools/r8/JavaCompilerTool.java
diff --git a/src/test/java/com/android/tools/r8/Jdk9TestUtils.java b/src/test/testbase/java/com/android/tools/r8/Jdk9TestUtils.java
similarity index 76%
rename from src/test/java/com/android/tools/r8/Jdk9TestUtils.java
rename to src/test/testbase/java/com/android/tools/r8/Jdk9TestUtils.java
index 8b6bfbb..302927b 100644
--- a/src/test/java/com/android/tools/r8/Jdk9TestUtils.java
+++ b/src/test/testbase/java/com/android/tools/r8/Jdk9TestUtils.java
@@ -6,13 +6,14 @@
import static com.android.tools.r8.desugar.LibraryFilesHelper.getJdk9LibraryFiles;
+import com.android.tools.r8.desugar.LibraryFilesHelper;
import org.junit.rules.TemporaryFolder;
public class Jdk9TestUtils {
public static ThrowableConsumer<R8FullTestBuilder> addJdk9LibraryFiles(
TemporaryFolder temporaryFolder) {
- return builder -> builder.addLibraryFiles(getJdk9LibraryFiles(temporaryFolder));
+ return builder -> builder.addLibraryFiles(LibraryFilesHelper.getJdk9LibraryFiles(temporaryFolder));
}
}
diff --git a/src/test/java/com/android/tools/r8/JvmTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/JvmTestBuilder.java
similarity index 97%
rename from src/test/java/com/android/tools/r8/JvmTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/JvmTestBuilder.java
index f919181..0423904 100644
--- a/src/test/java/com/android/tools/r8/JvmTestBuilder.java
+++ b/src/test/testbase/java/com/android/tools/r8/JvmTestBuilder.java
@@ -5,6 +5,7 @@
import com.android.tools.r8.ToolHelper.ProcessResult;
import com.android.tools.r8.debug.CfDebugTestConfig;
+import com.android.tools.r8.dex.Marker.Tool;
import com.android.tools.r8.errors.Unimplemented;
import com.android.tools.r8.testing.AndroidBuildVersion;
import com.android.tools.r8.utils.AndroidApiLevel;
@@ -152,7 +153,8 @@
}
public JvmTestBuilder addTestClasspath() {
- return addClasspath(ToolHelper.getClassPathForTests());
+ return addClasspath(ToolHelper.getClassPathForTests())
+ .addClasspath(ToolHelper.getTestBaseclassPath());
}
public JvmTestBuilder enablePreview() {
diff --git a/src/test/java/com/android/tools/r8/JvmTestRunResult.java b/src/test/testbase/java/com/android/tools/r8/JvmTestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/JvmTestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/JvmTestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/Keep.java b/src/test/testbase/java/com/android/tools/r8/Keep.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/Keep.java
rename to src/test/testbase/java/com/android/tools/r8/Keep.java
diff --git a/src/test/java/com/android/tools/r8/KeepConstantArguments.java b/src/test/testbase/java/com/android/tools/r8/KeepConstantArguments.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/KeepConstantArguments.java
rename to src/test/testbase/java/com/android/tools/r8/KeepConstantArguments.java
diff --git a/src/test/java/com/android/tools/r8/KeepUnusedArguments.java b/src/test/testbase/java/com/android/tools/r8/KeepUnusedArguments.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/KeepUnusedArguments.java
rename to src/test/testbase/java/com/android/tools/r8/KeepUnusedArguments.java
diff --git a/src/test/java/com/android/tools/r8/KeepUnusedReturnValue.java b/src/test/testbase/java/com/android/tools/r8/KeepUnusedReturnValue.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/KeepUnusedReturnValue.java
rename to src/test/testbase/java/com/android/tools/r8/KeepUnusedReturnValue.java
diff --git a/src/test/java/com/android/tools/r8/KotlinCompilerTool.java b/src/test/testbase/java/com/android/tools/r8/KotlinCompilerTool.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/KotlinCompilerTool.java
rename to src/test/testbase/java/com/android/tools/r8/KotlinCompilerTool.java
diff --git a/src/test/java/com/android/tools/r8/KotlinTestBase.java b/src/test/testbase/java/com/android/tools/r8/KotlinTestBase.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/KotlinTestBase.java
rename to src/test/testbase/java/com/android/tools/r8/KotlinTestBase.java
diff --git a/src/test/java/com/android/tools/r8/KotlinTestParameters.java b/src/test/testbase/java/com/android/tools/r8/KotlinTestParameters.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/KotlinTestParameters.java
rename to src/test/testbase/java/com/android/tools/r8/KotlinTestParameters.java
diff --git a/src/test/java/com/android/tools/r8/KotlinTestParametersCollection.java b/src/test/testbase/java/com/android/tools/r8/KotlinTestParametersCollection.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/KotlinTestParametersCollection.java
rename to src/test/testbase/java/com/android/tools/r8/KotlinTestParametersCollection.java
diff --git a/src/test/java/com/android/tools/r8/L8TestBuilder.java b/src/test/testbase/java/com/android/tools/r8/L8TestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/L8TestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/L8TestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/L8TestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/L8TestCompileResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/L8TestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/L8TestCompileResult.java
diff --git a/src/test/java/com/android/tools/r8/L8TestRunResult.java b/src/test/testbase/java/com/android/tools/r8/L8TestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/L8TestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/L8TestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/LibraryDesugaringTestConfiguration.java b/src/test/testbase/java/com/android/tools/r8/LibraryDesugaringTestConfiguration.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/LibraryDesugaringTestConfiguration.java
rename to src/test/testbase/java/com/android/tools/r8/LibraryDesugaringTestConfiguration.java
diff --git a/src/test/java/com/android/tools/r8/MarkerMatcher.java b/src/test/testbase/java/com/android/tools/r8/MarkerMatcher.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/MarkerMatcher.java
rename to src/test/testbase/java/com/android/tools/r8/MarkerMatcher.java
diff --git a/src/test/java/com/android/tools/r8/NeverClassInline.java b/src/test/testbase/java/com/android/tools/r8/NeverClassInline.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NeverClassInline.java
rename to src/test/testbase/java/com/android/tools/r8/NeverClassInline.java
diff --git a/src/test/java/com/android/tools/r8/NeverInline.java b/src/test/testbase/java/com/android/tools/r8/NeverInline.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NeverInline.java
rename to src/test/testbase/java/com/android/tools/r8/NeverInline.java
diff --git a/src/test/java/com/android/tools/r8/NeverPropagateValue.java b/src/test/testbase/java/com/android/tools/r8/NeverPropagateValue.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NeverPropagateValue.java
rename to src/test/testbase/java/com/android/tools/r8/NeverPropagateValue.java
diff --git a/src/test/java/com/android/tools/r8/NeverReprocessClassInitializer.java b/src/test/testbase/java/com/android/tools/r8/NeverReprocessClassInitializer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NeverReprocessClassInitializer.java
rename to src/test/testbase/java/com/android/tools/r8/NeverReprocessClassInitializer.java
diff --git a/src/test/java/com/android/tools/r8/NeverReprocessMethod.java b/src/test/testbase/java/com/android/tools/r8/NeverReprocessMethod.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NeverReprocessMethod.java
rename to src/test/testbase/java/com/android/tools/r8/NeverReprocessMethod.java
diff --git a/src/test/java/com/android/tools/r8/NeverSingleCallerInline.java b/src/test/testbase/java/com/android/tools/r8/NeverSingleCallerInline.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NeverSingleCallerInline.java
rename to src/test/testbase/java/com/android/tools/r8/NeverSingleCallerInline.java
diff --git a/src/test/java/com/android/tools/r8/NoAccessModification.java b/src/test/testbase/java/com/android/tools/r8/NoAccessModification.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoAccessModification.java
rename to src/test/testbase/java/com/android/tools/r8/NoAccessModification.java
diff --git a/src/test/java/com/android/tools/r8/NoFieldTypeStrengthening.java b/src/test/testbase/java/com/android/tools/r8/NoFieldTypeStrengthening.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoFieldTypeStrengthening.java
rename to src/test/testbase/java/com/android/tools/r8/NoFieldTypeStrengthening.java
diff --git a/src/test/java/com/android/tools/r8/NoHorizontalClassMerging.java b/src/test/testbase/java/com/android/tools/r8/NoHorizontalClassMerging.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoHorizontalClassMerging.java
rename to src/test/testbase/java/com/android/tools/r8/NoHorizontalClassMerging.java
diff --git a/src/test/java/com/android/tools/r8/NoInliningOfDefaultInitializer.java b/src/test/testbase/java/com/android/tools/r8/NoInliningOfDefaultInitializer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoInliningOfDefaultInitializer.java
rename to src/test/testbase/java/com/android/tools/r8/NoInliningOfDefaultInitializer.java
diff --git a/src/test/java/com/android/tools/r8/NoMethodStaticizing.java b/src/test/testbase/java/com/android/tools/r8/NoMethodStaticizing.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoMethodStaticizing.java
rename to src/test/testbase/java/com/android/tools/r8/NoMethodStaticizing.java
diff --git a/src/test/java/com/android/tools/r8/NoParameterReordering.java b/src/test/testbase/java/com/android/tools/r8/NoParameterReordering.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoParameterReordering.java
rename to src/test/testbase/java/com/android/tools/r8/NoParameterReordering.java
diff --git a/src/test/java/com/android/tools/r8/NoParameterTypeStrengthening.java b/src/test/testbase/java/com/android/tools/r8/NoParameterTypeStrengthening.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoParameterTypeStrengthening.java
rename to src/test/testbase/java/com/android/tools/r8/NoParameterTypeStrengthening.java
diff --git a/src/test/java/com/android/tools/r8/NoRedundantFieldLoadElimination.java b/src/test/testbase/java/com/android/tools/r8/NoRedundantFieldLoadElimination.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoRedundantFieldLoadElimination.java
rename to src/test/testbase/java/com/android/tools/r8/NoRedundantFieldLoadElimination.java
diff --git a/src/test/java/com/android/tools/r8/NoReturnTypeStrengthening.java b/src/test/testbase/java/com/android/tools/r8/NoReturnTypeStrengthening.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoReturnTypeStrengthening.java
rename to src/test/testbase/java/com/android/tools/r8/NoReturnTypeStrengthening.java
diff --git a/src/test/java/com/android/tools/r8/NoUnusedInterfaceRemoval.java b/src/test/testbase/java/com/android/tools/r8/NoUnusedInterfaceRemoval.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoUnusedInterfaceRemoval.java
rename to src/test/testbase/java/com/android/tools/r8/NoUnusedInterfaceRemoval.java
diff --git a/src/test/java/com/android/tools/r8/NoVerticalClassMerging.java b/src/test/testbase/java/com/android/tools/r8/NoVerticalClassMerging.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/NoVerticalClassMerging.java
rename to src/test/testbase/java/com/android/tools/r8/NoVerticalClassMerging.java
diff --git a/src/test/java/com/android/tools/r8/OriginMatcher.java b/src/test/testbase/java/com/android/tools/r8/OriginMatcher.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/OriginMatcher.java
rename to src/test/testbase/java/com/android/tools/r8/OriginMatcher.java
diff --git a/src/test/java/com/android/tools/r8/PositionMatcher.java b/src/test/testbase/java/com/android/tools/r8/PositionMatcher.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/PositionMatcher.java
rename to src/test/testbase/java/com/android/tools/r8/PositionMatcher.java
diff --git a/src/test/java/com/android/tools/r8/ProguardTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/ProguardTestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ProguardTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/ProguardTestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/ProguardTestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/ProguardTestCompileResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ProguardTestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/ProguardTestCompileResult.java
diff --git a/src/test/java/com/android/tools/r8/ProguardTestRunResult.java b/src/test/testbase/java/com/android/tools/r8/ProguardTestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ProguardTestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/ProguardTestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/ProguardVersion.java b/src/test/testbase/java/com/android/tools/r8/ProguardVersion.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ProguardVersion.java
rename to src/test/testbase/java/com/android/tools/r8/ProguardVersion.java
diff --git a/src/test/java/com/android/tools/r8/R8CompatTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/R8CompatTestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/R8CompatTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/R8CompatTestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/R8FullTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/R8FullTestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/R8FullTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/R8FullTestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/R8RunArtTestsTest.java b/src/test/testbase/java/com/android/tools/r8/R8RunArtTestsTest.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/R8RunArtTestsTest.java
rename to src/test/testbase/java/com/android/tools/r8/R8RunArtTestsTest.java
diff --git a/src/test/java/com/android/tools/r8/R8TestBuilder.java b/src/test/testbase/java/com/android/tools/r8/R8TestBuilder.java
similarity index 97%
rename from src/test/java/com/android/tools/r8/R8TestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/R8TestBuilder.java
index 5184c82..a9c431a 100644
--- a/src/test/java/com/android/tools/r8/R8TestBuilder.java
+++ b/src/test/testbase/java/com/android/tools/r8/R8TestBuilder.java
@@ -11,6 +11,7 @@
import com.android.tools.r8.TestBase.Backend;
import com.android.tools.r8.androidresources.AndroidResourceTestingUtils.AndroidTestResource;
import com.android.tools.r8.benchmarks.BenchmarkResults;
+import com.android.tools.r8.dexsplitter.SplitterTestBase;
import com.android.tools.r8.dexsplitter.SplitterTestBase.RunInterface;
import com.android.tools.r8.dexsplitter.SplitterTestBase.SplitRunner;
import com.android.tools.r8.errors.Unreachable;
@@ -44,6 +45,7 @@
import com.android.tools.r8.utils.Pair;
import com.android.tools.r8.utils.SemanticVersion;
import com.android.tools.r8.utils.SourceFileTemplateProvider;
+import com.android.tools.r8.utils.codeinspector.Matchers;
import java.io.IOException;
import java.lang.annotation.Annotation;
import java.nio.file.Path;
@@ -172,7 +174,7 @@
case NONE:
if (allowUnusedProguardConfigurationRules) {
compileResult
- .assertAllInfosMatch(proguardConfigurationRuleDoesNotMatch())
+ .assertAllInfosMatch(Matchers.proguardConfigurationRuleDoesNotMatch())
.assertNoErrorMessages()
.assertNoWarningMessages();
} else {
@@ -186,9 +188,9 @@
throw new Unreachable();
}
if (allowUnusedProguardConfigurationRules) {
- compileResult.assertInfoThatMatches(proguardConfigurationRuleDoesNotMatch());
+ compileResult.assertInfoThatMatches(Matchers.proguardConfigurationRuleDoesNotMatch());
} else {
- compileResult.assertNoInfoThatMatches(proguardConfigurationRuleDoesNotMatch());
+ compileResult.assertNoInfoThatMatches(Matchers.proguardConfigurationRuleDoesNotMatch());
}
return compileResult;
}
@@ -855,7 +857,7 @@
public T addFeatureSplit(Class<?>... classes) throws IOException {
Path path = getState().getNewTempFile("feature.zip");
builder.addFeatureSplit(
- builder -> simpleSplitProvider(builder, path, getState().getTempFolder(), classes));
+ builder -> SplitterTestBase.simpleSplitProvider(builder, path, getState().getTempFolder(), classes));
features.add(path);
return self();
}
@@ -865,7 +867,7 @@
Path path = getState().getNewTempFolder().resolve("feature.zip");
builder.addFeatureSplit(
builder ->
- splitWithNonJavaFile(builder, path, getState().getTempFolder(), nonJavaFiles, classes));
+ SplitterTestBase.splitWithNonJavaFile(builder, path, getState().getTempFolder(), nonJavaFiles, classes));
features.add(path);
return self();
}
diff --git a/src/test/java/com/android/tools/r8/R8TestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/R8TestCompileResult.java
similarity index 97%
rename from src/test/java/com/android/tools/r8/R8TestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/R8TestCompileResult.java
index 336eb75..9b51098 100644
--- a/src/test/java/com/android/tools/r8/R8TestCompileResult.java
+++ b/src/test/testbase/java/com/android/tools/r8/R8TestCompileResult.java
@@ -25,6 +25,7 @@
import com.android.tools.r8.utils.ZipUtils;
import com.android.tools.r8.utils.codeinspector.ClassSubject;
import com.android.tools.r8.utils.codeinspector.CodeInspector;
+import com.android.tools.r8.utils.codeinspector.Matchers;
import com.android.tools.r8.utils.graphinspector.GraphInspector;
import java.io.IOException;
import java.io.UncheckedIOException;
@@ -238,18 +239,18 @@
throws IOException {
assert getBackend() == runtime.getBackend();
ClassSubject mainClassSubject = inspector().clazz(SplitRunner.class);
- assertThat("Did you forget a keep rule for the main method?", mainClassSubject, isPresent());
+ assertThat("Did you forget a keep rule for the main method?", mainClassSubject, Matchers.isPresent());
assertThat(
"Did you forget a keep rule for the main method?",
mainClassSubject.mainMethod(),
- isPresent());
+ Matchers.isPresent());
ClassSubject mainFeatureClassSubject = featureInspector(feature).clazz(mainFeatureClass);
assertThat(
- "Did you forget a keep rule for the run method?", mainFeatureClassSubject, isPresent());
+ "Did you forget a keep rule for the run method?", mainFeatureClassSubject, Matchers.isPresent());
assertThat(
"Did you forget a keep rule for the run method?",
mainFeatureClassSubject.uniqueMethodWithOriginalName("run"),
- isPresent());
+ Matchers.isPresent());
String[] args = new String[2 + featureDependencies.length];
args[0] = mainFeatureClassSubject.getFinalName();
args[1] = feature.toString();
diff --git a/src/test/java/com/android/tools/r8/R8TestRunResult.java b/src/test/testbase/java/com/android/tools/r8/R8TestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/R8TestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/R8TestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/RelocatorTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/RelocatorTestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/RelocatorTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/RelocatorTestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/RelocatorTestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/RelocatorTestCompileResult.java
similarity index 89%
rename from src/test/java/com/android/tools/r8/RelocatorTestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/RelocatorTestCompileResult.java
index 1f58f84..f3c624c 100644
--- a/src/test/java/com/android/tools/r8/RelocatorTestCompileResult.java
+++ b/src/test/testbase/java/com/android/tools/r8/RelocatorTestCompileResult.java
@@ -16,10 +16,12 @@
import com.android.tools.r8.utils.codeinspector.FoundClassSubject;
import com.android.tools.r8.utils.codeinspector.FoundFieldSubject;
import com.android.tools.r8.utils.codeinspector.FoundMethodSubject;
+import com.android.tools.r8.utils.codeinspector.Matchers;
import java.io.IOException;
import java.nio.file.Path;
import java.util.concurrent.ExecutionException;
import org.hamcrest.Matcher;
+import org.hamcrest.MatcherAssert;
public class RelocatorTestCompileResult extends TestRunResult<RelocatorTestCompileResult> {
@@ -86,7 +88,7 @@
String relocatedName =
newPrefix + clazz.getFinalName().substring(originalPrefix.length());
ClassSubject relocatedClass = relocatedInspector.clazz(relocatedName);
- assertThat(relocatedClass, isPresent());
+ MatcherAssert.assertThat(relocatedClass, Matchers.isPresent());
}
}
});
@@ -97,13 +99,13 @@
inspect(
inspector -> {
for (FoundClassSubject clazz : inspector.allClasses()) {
- assertThat(clazz.getFinalSignatureAttribute(), not(containsString(originalPrefix)));
+ MatcherAssert.assertThat(clazz.getFinalSignatureAttribute(), not(containsString(originalPrefix)));
for (FoundMethodSubject method : clazz.allMethods()) {
- assertThat(
+ MatcherAssert.assertThat(
method.getJvmMethodSignatureAsString(), not(containsString(originalPrefix)));
}
for (FoundFieldSubject field : clazz.allFields()) {
- assertThat(field.getJvmFieldSignatureAsString(), not(containsString(originalPrefix)));
+ MatcherAssert.assertThat(field.getJvmFieldSignatureAsString(), not(containsString(originalPrefix)));
}
}
});
diff --git a/src/test/java/com/android/tools/r8/ReprocessClassInitializer.java b/src/test/testbase/java/com/android/tools/r8/ReprocessClassInitializer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ReprocessClassInitializer.java
rename to src/test/testbase/java/com/android/tools/r8/ReprocessClassInitializer.java
diff --git a/src/test/java/com/android/tools/r8/ReprocessMethod.java b/src/test/testbase/java/com/android/tools/r8/ReprocessMethod.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ReprocessMethod.java
rename to src/test/testbase/java/com/android/tools/r8/ReprocessMethod.java
diff --git a/src/test/java/com/android/tools/r8/SingleTestRunResult.java b/src/test/testbase/java/com/android/tools/r8/SingleTestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/SingleTestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/SingleTestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/SoftVerificationErrorJarGenerator.java b/src/test/testbase/java/com/android/tools/r8/SoftVerificationErrorJarGenerator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/SoftVerificationErrorJarGenerator.java
rename to src/test/testbase/java/com/android/tools/r8/SoftVerificationErrorJarGenerator.java
diff --git a/src/test/java/com/android/tools/r8/SoftVerificationErrorJarRunner.java b/src/test/testbase/java/com/android/tools/r8/SoftVerificationErrorJarRunner.java
similarity index 95%
rename from src/test/java/com/android/tools/r8/SoftVerificationErrorJarRunner.java
rename to src/test/testbase/java/com/android/tools/r8/SoftVerificationErrorJarRunner.java
index b345c16..df94fbc 100644
--- a/src/test/java/com/android/tools/r8/SoftVerificationErrorJarRunner.java
+++ b/src/test/testbase/java/com/android/tools/r8/SoftVerificationErrorJarRunner.java
@@ -20,9 +20,11 @@
import com.android.tools.r8.utils.ZipUtils;
import com.android.tools.r8.utils.codeinspector.ClassSubject;
import com.android.tools.r8.utils.codeinspector.CodeInspector;
+import com.android.tools.r8.utils.codeinspector.Matchers;
import java.io.File;
import java.nio.file.Path;
import java.nio.file.Paths;
+import org.hamcrest.MatcherAssert;
public class SoftVerificationErrorJarRunner extends TestBase {
@@ -108,11 +110,11 @@
+ (isOutlined ? "ApiCallerOutlined" : "ApiCallerInlined")
+ (numberOfClasses - 1);
ClassSubject clazz = inspector.clazz(name);
- assertThat(clazz, isPresent());
+ MatcherAssert.assertThat(clazz, Matchers.isPresent());
if (isOutlined) {
ClassSubject apiCallerInlined =
inspector.clazz("com.example.softverificationsample.ApiCallerInlined");
- assertThat(apiCallerInlined, isPresent());
+ MatcherAssert.assertThat(apiCallerInlined, Matchers.isPresent());
}
}
}
diff --git a/src/test/java/com/android/tools/r8/TestAppViewBuilder.java b/src/test/testbase/java/com/android/tools/r8/TestAppViewBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestAppViewBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/TestAppViewBuilder.java
diff --git a/src/test/java/com/android/tools/r8/TestBase.java b/src/test/testbase/java/com/android/tools/r8/TestBase.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestBase.java
rename to src/test/testbase/java/com/android/tools/r8/TestBase.java
diff --git a/src/test/java/com/android/tools/r8/TestBaseBuilder.java b/src/test/testbase/java/com/android/tools/r8/TestBaseBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestBaseBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/TestBaseBuilder.java
diff --git a/src/test/java/com/android/tools/r8/TestBaseResult.java b/src/test/testbase/java/com/android/tools/r8/TestBaseResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestBaseResult.java
rename to src/test/testbase/java/com/android/tools/r8/TestBaseResult.java
diff --git a/src/test/java/com/android/tools/r8/TestBuilder.java b/src/test/testbase/java/com/android/tools/r8/TestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/TestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/TestBuilderCollection.java b/src/test/testbase/java/com/android/tools/r8/TestBuilderCollection.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestBuilderCollection.java
rename to src/test/testbase/java/com/android/tools/r8/TestBuilderCollection.java
diff --git a/src/test/java/com/android/tools/r8/TestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/TestCompileResult.java
similarity index 98%
rename from src/test/java/com/android/tools/r8/TestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/TestCompileResult.java
index 9c29aa2..545a36e 100644
--- a/src/test/java/com/android/tools/r8/TestCompileResult.java
+++ b/src/test/testbase/java/com/android/tools/r8/TestCompileResult.java
@@ -31,6 +31,7 @@
import com.android.tools.r8.utils.TriFunction;
import com.android.tools.r8.utils.codeinspector.ClassSubject;
import com.android.tools.r8.utils.codeinspector.CodeInspector;
+import com.android.tools.r8.utils.codeinspector.Matchers;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.ObjectArrays;
@@ -51,6 +52,7 @@
import java.util.function.Function;
import java.util.stream.Collectors;
import org.hamcrest.Matcher;
+import org.hamcrest.MatcherAssert;
public abstract class TestCompileResult<
CR extends TestCompileResult<CR, RR>, RR extends TestRunResult<RR>>
@@ -177,7 +179,7 @@
public RR run(String mainClass) throws IOException {
assert !libraryDesugaringTestConfiguration.isEnabled();
ClassSubject mainClassSubject = inspector().clazz(mainClass);
- assertThat(mainClassSubject, isPresent());
+ MatcherAssert.assertThat(mainClassSubject, Matchers.isPresent());
switch (getBackend()) {
case DEX:
return runArt(
@@ -216,7 +218,7 @@
}
}
}
- assertThat("Did you forget a keep rule for the main method?", mainClassSubject, isPresent());
+ assertThat("Did you forget a keep rule for the main method?", mainClassSubject, Matchers.isPresent());
if (runtime.isDex()) {
return runArt(runtime, mainClassSubject.getFinalName(), args);
}
diff --git a/src/test/java/com/android/tools/r8/TestCompilerBuilder.java b/src/test/testbase/java/com/android/tools/r8/TestCompilerBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestCompilerBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/TestCompilerBuilder.java
diff --git a/src/test/java/com/android/tools/r8/TestCondition.java b/src/test/testbase/java/com/android/tools/r8/TestCondition.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestCondition.java
rename to src/test/testbase/java/com/android/tools/r8/TestCondition.java
diff --git a/src/test/java/com/android/tools/r8/TestDiagnostic.java b/src/test/testbase/java/com/android/tools/r8/TestDiagnostic.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestDiagnostic.java
rename to src/test/testbase/java/com/android/tools/r8/TestDiagnostic.java
diff --git a/src/test/java/com/android/tools/r8/TestDiagnosticMessages.java b/src/test/testbase/java/com/android/tools/r8/TestDiagnosticMessages.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestDiagnosticMessages.java
rename to src/test/testbase/java/com/android/tools/r8/TestDiagnosticMessages.java
diff --git a/src/test/java/com/android/tools/r8/TestDiagnosticMessagesImpl.java b/src/test/testbase/java/com/android/tools/r8/TestDiagnosticMessagesImpl.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestDiagnosticMessagesImpl.java
rename to src/test/testbase/java/com/android/tools/r8/TestDiagnosticMessagesImpl.java
diff --git a/src/test/java/com/android/tools/r8/TestParameters.java b/src/test/testbase/java/com/android/tools/r8/TestParameters.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestParameters.java
rename to src/test/testbase/java/com/android/tools/r8/TestParameters.java
diff --git a/src/test/java/com/android/tools/r8/TestParametersBuilder.java b/src/test/testbase/java/com/android/tools/r8/TestParametersBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestParametersBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/TestParametersBuilder.java
diff --git a/src/test/java/com/android/tools/r8/TestParametersCollection.java b/src/test/testbase/java/com/android/tools/r8/TestParametersCollection.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestParametersCollection.java
rename to src/test/testbase/java/com/android/tools/r8/TestParametersCollection.java
diff --git a/src/test/java/com/android/tools/r8/TestRunResult.java b/src/test/testbase/java/com/android/tools/r8/TestRunResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestRunResult.java
rename to src/test/testbase/java/com/android/tools/r8/TestRunResult.java
diff --git a/src/test/java/com/android/tools/r8/TestRunResultCollection.java b/src/test/testbase/java/com/android/tools/r8/TestRunResultCollection.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestRunResultCollection.java
rename to src/test/testbase/java/com/android/tools/r8/TestRunResultCollection.java
diff --git a/src/test/java/com/android/tools/r8/TestRuntime.java b/src/test/testbase/java/com/android/tools/r8/TestRuntime.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestRuntime.java
rename to src/test/testbase/java/com/android/tools/r8/TestRuntime.java
diff --git a/src/test/java/com/android/tools/r8/TestShrinkerBuilder.java b/src/test/testbase/java/com/android/tools/r8/TestShrinkerBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestShrinkerBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/TestShrinkerBuilder.java
diff --git a/src/test/java/com/android/tools/r8/TestState.java b/src/test/testbase/java/com/android/tools/r8/TestState.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/TestState.java
rename to src/test/testbase/java/com/android/tools/r8/TestState.java
diff --git a/src/test/java/com/android/tools/r8/ThrowingBiFunction.java b/src/test/testbase/java/com/android/tools/r8/ThrowingBiFunction.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ThrowingBiFunction.java
rename to src/test/testbase/java/com/android/tools/r8/ThrowingBiFunction.java
diff --git a/src/test/java/com/android/tools/r8/ThrowingFunction.java b/src/test/testbase/java/com/android/tools/r8/ThrowingFunction.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/ThrowingFunction.java
rename to src/test/testbase/java/com/android/tools/r8/ThrowingFunction.java
diff --git a/src/test/java/com/android/tools/r8/ToolHelper.java b/src/test/testbase/java/com/android/tools/r8/ToolHelper.java
similarity index 98%
rename from src/test/java/com/android/tools/r8/ToolHelper.java
rename to src/test/testbase/java/com/android/tools/r8/ToolHelper.java
index b92a8dc..d3481a6 100644
--- a/src/test/java/com/android/tools/r8/ToolHelper.java
+++ b/src/test/testbase/java/com/android/tools/r8/ToolHelper.java
@@ -165,6 +165,14 @@
}
}
+ public Path getTestBaseClassLocation() {
+ String testbaseDataLocation = System.getProperty("TESTBASE_DATA_LOCATION");
+ if (testbaseDataLocation != null) {
+ return Paths.get(testbaseDataLocation);
+ }
+ throw new Unreachable("TESTBASE_DATA_LOCATION not set from gradle");
+ }
+
public static TestDataSourceSet computeLegacyOrGradleSpecifiedLocation() {
return TestDataSourceSet.SPECIFIED_BY_GRADLE_PROPERTY;
}
@@ -1512,6 +1520,10 @@
return getClassPathForTestDataSourceSet(computeLegacyOrGradleSpecifiedLocation());
}
+ public static Path getTestBaseclassPath() {
+ return computeLegacyOrGradleSpecifiedLocation().getTestBaseClassLocation();
+ }
+
public static Path getClassPathForTestDataSourceSet(TestDataSourceSet sourceSet) {
return sourceSet.getBuildDir();
}
@@ -1563,11 +1575,15 @@
public static Path getClassFileForTestClass(Class<?> clazz, TestDataSourceSet sourceSet) {
List<String> parts = getNamePartsForTestClass(clazz);
+ Path filePath = Paths.get("", parts.toArray(StringUtils.EMPTY_ARRAY));
Path resolve =
getClassPathForTestDataSourceSet(sourceSet)
- .resolve(Paths.get("", parts.toArray(StringUtils.EMPTY_ARRAY)));
+ .resolve(filePath);
if (!Files.exists(resolve)) {
- throw new RuntimeException("Could not find: " + resolve.toString());
+ resolve = sourceSet.getTestBaseClassLocation().resolve(filePath);
+ if (!Files.exists(resolve)) {
+ throw new RuntimeException("Could not find: " + resolve.toString());
+ }
}
return resolve;
}
diff --git a/src/test/java/com/android/tools/r8/VmTestRunner.java b/src/test/testbase/java/com/android/tools/r8/VmTestRunner.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/VmTestRunner.java
rename to src/test/testbase/java/com/android/tools/r8/VmTestRunner.java
diff --git a/src/test/java/com/android/tools/r8/androidresources/AndroidResourceTestingUtils.java b/src/test/testbase/java/com/android/tools/r8/androidresources/AndroidResourceTestingUtils.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/androidresources/AndroidResourceTestingUtils.java
rename to src/test/testbase/java/com/android/tools/r8/androidresources/AndroidResourceTestingUtils.java
diff --git a/src/test/java/com/android/tools/r8/androidresources/Resources.java b/src/test/testbase/java/com/android/tools/r8/androidresources/Resources.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/androidresources/Resources.java
rename to src/test/testbase/java/com/android/tools/r8/androidresources/Resources.java
diff --git a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkMetric.java b/src/test/testbase/java/com/android/tools/r8/benchmarks/BenchmarkMetric.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/benchmarks/BenchmarkMetric.java
rename to src/test/testbase/java/com/android/tools/r8/benchmarks/BenchmarkMetric.java
diff --git a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResults.java b/src/test/testbase/java/com/android/tools/r8/benchmarks/BenchmarkResults.java
similarity index 86%
rename from src/test/java/com/android/tools/r8/benchmarks/BenchmarkResults.java
rename to src/test/testbase/java/com/android/tools/r8/benchmarks/BenchmarkResults.java
index 25e2958..3e52ba7 100644
--- a/src/test/java/com/android/tools/r8/benchmarks/BenchmarkResults.java
+++ b/src/test/testbase/java/com/android/tools/r8/benchmarks/BenchmarkResults.java
@@ -3,7 +3,7 @@
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.benchmarks;
-import com.android.tools.r8.benchmarks.BenchmarkRunner.ResultMode;
+import com.android.tools.r8.utils.StringUtils;
public interface BenchmarkResults {
// Append a runtime result. This may be summed or averaged depending on the benchmark set up.
@@ -28,4 +28,14 @@
static String prettyMetric(String name, BenchmarkMetric metric, String value) {
return name + "(" + metric.name() + "): " + value;
}
+
+ enum ResultMode {
+ AVERAGE,
+ SUM;
+
+ @Override
+ public String toString() {
+ return StringUtils.toLowerCase(name());
+ }
+ }
}
diff --git a/src/test/java/com/android/tools/r8/debug/CfDebugTestConfig.java b/src/test/testbase/java/com/android/tools/r8/debug/CfDebugTestConfig.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/debug/CfDebugTestConfig.java
rename to src/test/testbase/java/com/android/tools/r8/debug/CfDebugTestConfig.java
diff --git a/src/test/java/com/android/tools/r8/debug/DebugTestConfig.java b/src/test/testbase/java/com/android/tools/r8/debug/DebugTestConfig.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/debug/DebugTestConfig.java
rename to src/test/testbase/java/com/android/tools/r8/debug/DebugTestConfig.java
diff --git a/src/test/java/com/android/tools/r8/debug/DexDebugTestConfig.java b/src/test/testbase/java/com/android/tools/r8/debug/DexDebugTestConfig.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/debug/DexDebugTestConfig.java
rename to src/test/testbase/java/com/android/tools/r8/debug/DexDebugTestConfig.java
diff --git a/src/test/java/com/android/tools/r8/desugar/LibraryFilesHelper.java b/src/test/testbase/java/com/android/tools/r8/desugar/LibraryFilesHelper.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/LibraryFilesHelper.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/LibraryFilesHelper.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryTestBase.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryTestBase.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryTestBase.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/DesugaredLibraryTestBase.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/jdk11/DesugaredLibraryJDK11Undesugarer.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/CompilationSpecification.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/CompilationSpecification.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/CompilationSpecification.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/CompilationSpecification.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/CustomLibrarySpecification.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/CustomLibrarySpecification.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/CustomLibrarySpecification.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/CustomLibrarySpecification.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestBuilder.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestBuilder.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestCompileResult.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestCompileResult.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestCompileResult.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/DesugaredLibraryTestCompileResult.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/LibraryDesugaringSpecification.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/LibraryDesugaringSpecification.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/LibraryDesugaringSpecification.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/LibraryDesugaringSpecification.java
diff --git a/src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/TestingKeepRuleConsumer.java b/src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/TestingKeepRuleConsumer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/desugar/desugaredlibrary/test/TestingKeepRuleConsumer.java
rename to src/test/testbase/java/com/android/tools/r8/desugar/desugaredlibrary/test/TestingKeepRuleConsumer.java
diff --git a/src/test/java/com/android/tools/r8/dexsplitter/SplitterTestBase.java b/src/test/testbase/java/com/android/tools/r8/dexsplitter/SplitterTestBase.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/dexsplitter/SplitterTestBase.java
rename to src/test/testbase/java/com/android/tools/r8/dexsplitter/SplitterTestBase.java
diff --git a/src/test/java/com/android/tools/r8/diagnosticinspector/DiagnosticSubject.java b/src/test/testbase/java/com/android/tools/r8/diagnosticinspector/DiagnosticSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/diagnosticinspector/DiagnosticSubject.java
rename to src/test/testbase/java/com/android/tools/r8/diagnosticinspector/DiagnosticSubject.java
diff --git a/src/test/java/com/android/tools/r8/diagnosticinspector/FoundDiagnosticSubject.java b/src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundDiagnosticSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/diagnosticinspector/FoundDiagnosticSubject.java
rename to src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundDiagnosticSubject.java
diff --git a/src/test/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionContextSubject.java b/src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionContextSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionContextSubject.java
rename to src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionContextSubject.java
diff --git a/src/test/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionInfoSubject.java b/src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionInfoSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionInfoSubject.java
rename to src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionInfoSubject.java
diff --git a/src/test/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionsDiagnosticSubject.java b/src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionsDiagnosticSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionsDiagnosticSubject.java
rename to src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundMissingDefinitionsDiagnosticSubject.java
diff --git a/src/test/java/com/android/tools/r8/diagnosticinspector/FoundStringDiagnosticSubject.java b/src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundStringDiagnosticSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/diagnosticinspector/FoundStringDiagnosticSubject.java
rename to src/test/testbase/java/com/android/tools/r8/diagnosticinspector/FoundStringDiagnosticSubject.java
diff --git a/src/test/java/com/android/tools/r8/dump/CompilerDump.java b/src/test/testbase/java/com/android/tools/r8/dump/CompilerDump.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/dump/CompilerDump.java
rename to src/test/testbase/java/com/android/tools/r8/dump/CompilerDump.java
diff --git a/src/test/java/com/android/tools/r8/jasmin/JasminBuilder.java b/src/test/testbase/java/com/android/tools/r8/jasmin/JasminBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/jasmin/JasminBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/jasmin/JasminBuilder.java
diff --git a/src/test/java/com/android/tools/r8/jasmin/JasminTestBase.java b/src/test/testbase/java/com/android/tools/r8/jasmin/JasminTestBase.java
similarity index 98%
rename from src/test/java/com/android/tools/r8/jasmin/JasminTestBase.java
rename to src/test/testbase/java/com/android/tools/r8/jasmin/JasminTestBase.java
index 20de747..899696d 100644
--- a/src/test/java/com/android/tools/r8/jasmin/JasminTestBase.java
+++ b/src/test/testbase/java/com/android/tools/r8/jasmin/JasminTestBase.java
@@ -15,14 +15,11 @@
import com.android.tools.r8.origin.Origin;
import com.android.tools.r8.utils.AndroidApp;
import com.android.tools.r8.utils.InternalOptions;
-import com.android.tools.r8.utils.StringUtils;
import com.android.tools.r8.utils.codeinspector.CodeInspector;
import com.android.tools.r8.utils.codeinspector.MethodSubject;
import com.google.common.collect.ImmutableList;
-import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
-import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.function.Consumer;
diff --git a/src/test/java/com/android/tools/r8/keepanno/KeepAnnoTestUtils.java b/src/test/testbase/java/com/android/tools/r8/keepanno/KeepAnnoTestUtils.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/keepanno/KeepAnnoTestUtils.java
rename to src/test/testbase/java/com/android/tools/r8/keepanno/KeepAnnoTestUtils.java
diff --git a/src/test/java/com/android/tools/r8/naming/retrace/StackTrace.java b/src/test/testbase/java/com/android/tools/r8/naming/retrace/StackTrace.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/naming/retrace/StackTrace.java
rename to src/test/testbase/java/com/android/tools/r8/naming/retrace/StackTrace.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfile.java b/src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfile.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfile.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfile.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfileClassRule.java b/src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfileClassRule.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfileClassRule.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfileClassRule.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfileMethodRule.java b/src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfileMethodRule.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfileMethodRule.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfileMethodRule.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfileRule.java b/src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfileRule.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/model/ExternalArtProfileRule.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/model/ExternalArtProfileRule.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileClassRuleInspector.java b/src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileClassRuleInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileClassRuleInspector.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileClassRuleInspector.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileInspector.java b/src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileInspector.java
similarity index 94%
rename from src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileInspector.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileInspector.java
index e6f9092..fb96468 100644
--- a/src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileInspector.java
+++ b/src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileInspector.java
@@ -18,6 +18,7 @@
import java.util.HashSet;
import java.util.Set;
import java.util.function.Consumer;
+import org.hamcrest.MatcherAssert;
public class ArtProfileInspector {
@@ -61,7 +62,7 @@
}
public ArtProfileInspector assertContainsClassRule(ClassReference classReference) {
- assertThat(artProfile, ArtProfileMatchers.containsClassRule(classReference));
+ MatcherAssert.assertThat(artProfile, ArtProfileMatchers.containsClassRule(classReference));
checkedClassReferences.add(classReference);
return this;
}
@@ -85,7 +86,7 @@
}
public ArtProfileInspector assertContainsMethodRule(MethodReference methodReference) {
- assertThat(artProfile, ArtProfileMatchers.containsMethodRule(methodReference));
+ MatcherAssert.assertThat(artProfile, ArtProfileMatchers.containsMethodRule(methodReference));
checkedMethodReferences.add(methodReference);
return this;
}
diff --git a/src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileMatchers.java b/src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileMatchers.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileMatchers.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileMatchers.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileMethodRuleInspector.java b/src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileMethodRuleInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileMethodRuleInspector.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileMethodRuleInspector.java
diff --git a/src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileTestingUtils.java b/src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileTestingUtils.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/profile/art/utils/ArtProfileTestingUtils.java
rename to src/test/testbase/java/com/android/tools/r8/profile/art/utils/ArtProfileTestingUtils.java
diff --git a/src/test/java/com/android/tools/r8/smali/SmaliBuilder.java b/src/test/testbase/java/com/android/tools/r8/smali/SmaliBuilder.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/smali/SmaliBuilder.java
rename to src/test/testbase/java/com/android/tools/r8/smali/SmaliBuilder.java
diff --git a/src/test/java/com/android/tools/r8/synthesis/SyntheticItemsTestUtils.java b/src/test/testbase/java/com/android/tools/r8/synthesis/SyntheticItemsTestUtils.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/synthesis/SyntheticItemsTestUtils.java
rename to src/test/testbase/java/com/android/tools/r8/synthesis/SyntheticItemsTestUtils.java
diff --git a/src/test/java/com/android/tools/r8/testing/AndroidBuildVersion.java b/src/test/testbase/java/com/android/tools/r8/testing/AndroidBuildVersion.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/testing/AndroidBuildVersion.java
rename to src/test/testbase/java/com/android/tools/r8/testing/AndroidBuildVersion.java
diff --git a/src/test/java/com/android/tools/r8/transformers/ClassFileTransformer.java b/src/test/testbase/java/com/android/tools/r8/transformers/ClassFileTransformer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/transformers/ClassFileTransformer.java
rename to src/test/testbase/java/com/android/tools/r8/transformers/ClassFileTransformer.java
diff --git a/src/test/java/com/android/tools/r8/transformers/ClassTransformer.java b/src/test/testbase/java/com/android/tools/r8/transformers/ClassTransformer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/transformers/ClassTransformer.java
rename to src/test/testbase/java/com/android/tools/r8/transformers/ClassTransformer.java
diff --git a/src/test/java/com/android/tools/r8/transformers/MethodTransformer.java b/src/test/testbase/java/com/android/tools/r8/transformers/MethodTransformer.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/transformers/MethodTransformer.java
rename to src/test/testbase/java/com/android/tools/r8/transformers/MethodTransformer.java
diff --git a/src/test/java/com/android/tools/r8/utils/ApkUtils.java b/src/test/testbase/java/com/android/tools/r8/utils/ApkUtils.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/ApkUtils.java
rename to src/test/testbase/java/com/android/tools/r8/utils/ApkUtils.java
diff --git a/src/test/java/com/android/tools/r8/utils/ArtErrorParser.java b/src/test/testbase/java/com/android/tools/r8/utils/ArtErrorParser.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/ArtErrorParser.java
rename to src/test/testbase/java/com/android/tools/r8/utils/ArtErrorParser.java
diff --git a/src/test/java/com/android/tools/r8/utils/ForwardingOutputStream.java b/src/test/testbase/java/com/android/tools/r8/utils/ForwardingOutputStream.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/ForwardingOutputStream.java
rename to src/test/testbase/java/com/android/tools/r8/utils/ForwardingOutputStream.java
diff --git a/src/test/java/com/android/tools/r8/utils/Smali.java b/src/test/testbase/java/com/android/tools/r8/utils/Smali.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/Smali.java
rename to src/test/testbase/java/com/android/tools/r8/utils/Smali.java
diff --git a/src/test/java/com/android/tools/r8/utils/TestDescriptionWatcher.java b/src/test/testbase/java/com/android/tools/r8/utils/TestDescriptionWatcher.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/TestDescriptionWatcher.java
rename to src/test/testbase/java/com/android/tools/r8/utils/TestDescriptionWatcher.java
diff --git a/src/test/java/com/android/tools/r8/utils/ThrowingOutputStream.java b/src/test/testbase/java/com/android/tools/r8/utils/ThrowingOutputStream.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/ThrowingOutputStream.java
rename to src/test/testbase/java/com/android/tools/r8/utils/ThrowingOutputStream.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentAnnotationSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentAnnotationSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentAnnotationSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentAnnotationSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentClassSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentClassSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentClassSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentClassSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentFieldSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentFieldSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentFieldSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentFieldSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmClassSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmClassSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmClassSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmClassSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmFunctionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmFunctionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmFunctionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmFunctionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmPackageSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmPackageSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmPackageSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmPackageSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmPropertySubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmPropertySubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmPropertySubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmPropertySubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeAliasSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeAliasSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeAliasSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeAliasSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeParameterSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeParameterSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeParameterSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentKmTypeParameterSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AbsentMethodSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentMethodSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AbsentMethodSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AbsentMethodSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AnnotationMatchers.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AnnotationMatchers.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AnnotationMatchers.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AnnotationMatchers.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AnnotationSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AnnotationSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AnnotationSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AnnotationSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/ArgumentPropagatorCodeScannerResultInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ArgumentPropagatorCodeScannerResultInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/ArgumentPropagatorCodeScannerResultInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ArgumentPropagatorCodeScannerResultInspector.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/AssertUtils.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AssertUtils.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/AssertUtils.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/AssertUtils.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CfInstructionIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfInstructionIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CfInstructionIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfInstructionIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CfInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CfInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CfTryCatchIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfTryCatchIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CfTryCatchIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfTryCatchIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CfTryCatchSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfTryCatchSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CfTryCatchSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CfTryCatchSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CheckCastCfInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CheckCastCfInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CheckCastCfInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CheckCastCfInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CheckCastDexInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CheckCastDexInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CheckCastDexInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CheckCastDexInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CheckCastInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CheckCastInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CheckCastInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CheckCastInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/ClassOrMemberSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ClassOrMemberSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/ClassOrMemberSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ClassOrMemberSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/ClassSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ClassSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/ClassSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ClassSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CodeInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CodeInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CodeInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CodeInspector.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/CodeMatchers.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CodeMatchers.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/CodeMatchers.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/CodeMatchers.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/ConstStringCfInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ConstStringCfInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/ConstStringCfInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ConstStringCfInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/ConstStringDexInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ConstStringDexInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/ConstStringDexInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ConstStringDexInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/ConstStringInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ConstStringInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/ConstStringInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/ConstStringInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/DexInstructionIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexInstructionIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/DexInstructionIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexInstructionIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/DexInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/DexInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/DexTryCatchIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexTryCatchIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/DexTryCatchIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexTryCatchIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/DexTryCatchSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexTryCatchSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/DexTryCatchSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/DexTryCatchSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/EnumUnboxingInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/EnumUnboxingInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/EnumUnboxingInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/EnumUnboxingInspector.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FieldAccessCfInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldAccessCfInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FieldAccessCfInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldAccessCfInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FieldAccessDexInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldAccessDexInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FieldAccessDexInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldAccessDexInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FieldAccessInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldAccessInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FieldAccessInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldAccessInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FieldSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FieldSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FieldSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FilteredInstructionIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FilteredInstructionIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FilteredInstructionIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FilteredInstructionIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FilteredTryCatchIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FilteredTryCatchIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FilteredTryCatchIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FilteredTryCatchIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundAnnotationSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundAnnotationSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundAnnotationSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundAnnotationSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundClassSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundClassSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundClassSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundClassSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundFieldSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundFieldSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundFieldSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundFieldSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmClassSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmClassSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmClassSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmClassSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmConstructorSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmConstructorSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmConstructorSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmConstructorSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmDeclarationContainerSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmDeclarationContainerSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmDeclarationContainerSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmDeclarationContainerSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmFunctionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmFunctionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmFunctionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmFunctionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmPackageSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmPackageSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmPackageSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmPackageSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmPropertySubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmPropertySubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmPropertySubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmPropertySubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeAliasSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeAliasSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeAliasSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeAliasSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeParameterSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeParameterSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeParameterSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundKmTypeParameterSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/FoundMethodSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundMethodSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/FoundMethodSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/FoundMethodSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/HorizontallyMergedClassesInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/HorizontallyMergedClassesInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/HorizontallyMergedClassesInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/HorizontallyMergedClassesInspector.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/InstructionIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InstructionIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/InstructionIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InstructionIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/InstructionOffsetSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InstructionOffsetSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/InstructionOffsetSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InstructionOffsetSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/InstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/InstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/InvokeCfInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InvokeCfInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/InvokeCfInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InvokeCfInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/InvokeDexInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InvokeDexInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/InvokeDexInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InvokeDexInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/InvokeInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InvokeInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/InvokeInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/InvokeInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmClassSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmClassSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmClassSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmClassSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmClassifierSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmClassifierSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmClassifierSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmClassifierSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmConstructorSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmConstructorSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmConstructorSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmConstructorSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmDeclarationContainerSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmDeclarationContainerSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmDeclarationContainerSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmDeclarationContainerSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmFunctionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmFunctionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmFunctionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmFunctionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmPackageSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmPackageSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmPackageSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmPackageSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmPropertySubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmPropertySubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmPropertySubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmPropertySubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeAliasSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeAliasSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeAliasSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeAliasSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubjectMixin.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubjectMixin.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubjectMixin.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeParameterSubjectMixin.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeProjectionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeProjectionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeProjectionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeProjectionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmTypeSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmTypeSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/KmValueParameterSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmValueParameterSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/KmValueParameterSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/KmValueParameterSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/LineNumberTable.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/LineNumberTable.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/LineNumberTable.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/LineNumberTable.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/LocalVariableTable.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/LocalVariableTable.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/LocalVariableTable.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/LocalVariableTable.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/Main.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/Main.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/Main.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/Main.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/Matchers.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/Matchers.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/Matchers.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/Matchers.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/MemberSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MemberSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/MemberSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MemberSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/MethodMatchers.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MethodMatchers.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/MethodMatchers.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MethodMatchers.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/MethodSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MethodSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/MethodSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MethodSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/MinificationInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MinificationInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/MinificationInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/MinificationInspector.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/NewInstanceCfInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/NewInstanceCfInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/NewInstanceCfInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/NewInstanceCfInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/NewInstanceDexInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/NewInstanceDexInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/NewInstanceDexInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/NewInstanceDexInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/NewInstanceInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/NewInstanceInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/NewInstanceInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/NewInstanceInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/RangeSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/RangeSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/RangeSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/RangeSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/RecordComponentSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/RecordComponentSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/RecordComponentSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/RecordComponentSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/RepackagingInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/RepackagingInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/RepackagingInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/RepackagingInspector.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/Subject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/Subject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/Subject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/Subject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/SwitchCfInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/SwitchCfInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/SwitchCfInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/SwitchCfInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/SwitchDexInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/SwitchDexInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/SwitchDexInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/SwitchDexInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/SwitchInstructionSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/SwitchInstructionSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/SwitchInstructionSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/SwitchInstructionSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/TryCatchIterator.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/TryCatchIterator.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/TryCatchIterator.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/TryCatchIterator.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/TryCatchSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/TryCatchSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/TryCatchSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/TryCatchSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/TypeSubject.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/TypeSubject.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/TypeSubject.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/TypeSubject.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/VerticallyMergedClassesInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/VerticallyMergedClassesInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/VerticallyMergedClassesInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/VerticallyMergedClassesInspector.java
diff --git a/src/test/java/com/android/tools/r8/utils/codeinspector/analysis/ProtoApplicationStats.java b/src/test/testbase/java/com/android/tools/r8/utils/codeinspector/analysis/ProtoApplicationStats.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/codeinspector/analysis/ProtoApplicationStats.java
rename to src/test/testbase/java/com/android/tools/r8/utils/codeinspector/analysis/ProtoApplicationStats.java
diff --git a/src/test/java/com/android/tools/r8/utils/graphinspector/GraphInspector.java b/src/test/testbase/java/com/android/tools/r8/utils/graphinspector/GraphInspector.java
similarity index 100%
rename from src/test/java/com/android/tools/r8/utils/graphinspector/GraphInspector.java
rename to src/test/testbase/java/com/android/tools/r8/utils/graphinspector/GraphInspector.java
diff --git a/src/test/java/dalvik/annotation/optimization/ReachabilitySensitive.java b/src/test/testbase/java/dalvik/annotation/optimization/ReachabilitySensitive.java
similarity index 100%
rename from src/test/java/dalvik/annotation/optimization/ReachabilitySensitive.java
rename to src/test/testbase/java/dalvik/annotation/optimization/ReachabilitySensitive.java
diff --git a/src/test/java/dalvik/system/PathClassLoader.java b/src/test/testbase/java/dalvik/system/PathClassLoader.java
similarity index 100%
rename from src/test/java/dalvik/system/PathClassLoader.java
rename to src/test/testbase/java/dalvik/system/PathClassLoader.java