Fix BuildCacheIT and BuildCacheRelocationIT

* Adjust the log checks for newer Gradle versions
* Use AGP 3.6.0 and Gradle 5.6.1 as the older version
This commit is contained in:
Sergey Igushkin
2020-06-03 17:29:53 +03:00
committed by Sergey Igushkin
parent 71a45e56d7
commit 603bae398f
2 changed files with 18 additions and 9 deletions
@@ -34,7 +34,7 @@ class BuildCacheIT : BaseGradleIT() {
build("assemble") {
assertSuccessful()
assertContains("Packing task ':compileKotlin'")
assertTaskPackedToCache(":compileKotlin")
}
build("clean", "assemble", "-Dkotlin.caching.enabled=false") {
@@ -49,7 +49,7 @@ class BuildCacheIT : BaseGradleIT() {
build("assemble") {
assertSuccessful()
assertContains("Packing task ':compileKotlin'")
assertTaskPackedToCache(":compileKotlin")
}
build("clean", "assemble") {
assertSuccessful()
@@ -65,7 +65,7 @@ class BuildCacheIT : BaseGradleIT() {
build("assemble") {
assertSuccessful()
// Should store the output into the cache:
assertContains("Packing task ':compileKotlin'")
assertTaskPackedToCache(":compileKotlin")
}
val sourceFile = File(projectDir, "src/main/kotlin/helloWorld.kt")
@@ -75,7 +75,7 @@ class BuildCacheIT : BaseGradleIT() {
build("assemble") {
assertSuccessful()
assertContains("Packing task ':compileKotlin'")
assertTaskPackedToCache(":compileKotlin")
}
sourceFile.writeText(originalSource)
@@ -102,7 +102,7 @@ class BuildCacheIT : BaseGradleIT() {
// First build, should be stored into the build cache:
build("assemble") {
assertSuccessful()
assertContains("Packing task ':compileKotlin'")
assertTaskPackedToCache(":compileKotlin")
}
// A cache hit:
@@ -134,8 +134,8 @@ class BuildCacheIT : BaseGradleIT() {
)
build(options = options, params = *arrayOf("clean", ":app:build")) {
assertSuccessful()
assertContains("Packing task ':app:kaptGenerateStubsKotlin'")
assertContains("Packing task ':app:kaptKotlin'")
assertTaskPackedToCache(":app:kaptGenerateStubsKotlin")
assertTaskPackedToCache(":app:kaptKotlin")
}
// copy project to a new location
@@ -157,4 +157,10 @@ fun BaseGradleIT.Project.prepareLocalBuildCache(directory: File = File(projectDi
}
File(projectDir, "settings.gradle").appendText("\nbuildCache.local.directory = '${directory.absolutePath.replace("\\", "/")}'")
return directory
}
internal fun BaseGradleIT.CompiledProject.assertTaskPackedToCache(taskPath: String) {
with(project.testCase) {
assertContainsRegex(Regex("(?:Packing|Stored cache entry for) task '${Regex.escape(taskPath)}'"))
}
}
@@ -28,10 +28,13 @@ import kotlin.test.assertEquals
@RunWith(Parameterized::class)
class BuildCacheRelocationIT : BaseGradleIT() {
override val defaultGradleVersion: GradleVersionRequired
get() = GradleVersionRequired.AtLeast("5.6.1")
override fun defaultBuildOptions(): BuildOptions =
super.defaultBuildOptions().copy(
withBuildCache = true,
androidGradlePluginVersion = AGPVersion.v3_2_0,
androidGradlePluginVersion = AGPVersion.v3_6_0,
androidHome = KotlinTestUtils.findAndroidSdk()
)
@@ -62,7 +65,7 @@ class BuildCacheRelocationIT : BaseGradleIT() {
firstProject.build(*testCase.taskToExecute) {
assertSuccessful()
firstOutputHashes = hashOutputFiles(outputRoots)
cacheableTaskNames.forEach { assertContains("Packing task ':$it") }
cacheableTaskNames.forEach { assertTaskPackedToCache(":$it") }
}
workingDir = workingDirs[1]