Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import org.gradle.api.DefaultTask
import org.gradle.api.file.DirectoryProperty
import org.gradle.api.tasks.InputDirectory
import org.gradle.api.tasks.Optional
import org.gradle.api.tasks.SkipWhenEmpty
import org.gradle.api.tasks.TaskAction
import org.gradle.work.DisableCachingByDefault

Expand All @@ -29,6 +30,7 @@ import org.gradle.work.DisableCachingByDefault
@DisableCachingByDefault(because = "Local deletion operation")
abstract class LicensesCleanUpTask extends DefaultTask {
@Optional
@SkipWhenEmpty
@InputDirectory
abstract DirectoryProperty getGeneratedDirectory()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package com.google.android.gms.oss.licenses.plugin
import org.gradle.testkit.runner.GradleRunner
import org.gradle.testkit.runner.TaskOutcome
import org.junit.Assert
import org.junit.Before
import org.junit.Test
import org.junit.rules.TemporaryFolder
import org.junit.Rule
Expand Down Expand Up @@ -30,9 +31,11 @@ class EndToEndTest(private val agpVersion: String, private val gradleVersion: St

private fun isBuiltInKotlinEnabled() = agpVersion.startsWith("9.")

@Test
fun basic() {
val projectDir = tempDirectory.newFolder("basic")
private lateinit var projectDir: File

@Before
fun setup() {
projectDir = tempDirectory.newFolder("basic")
File(projectDir, "build.gradle").writeText(
"""
plugins {
Expand Down Expand Up @@ -70,6 +73,10 @@ class EndToEndTest(private val agpVersion: String, private val gradleVersion: St
}
""".trimIndent()
)
}

@Test
fun basic() {
val result = GradleRunner.create()
.withProjectDir(projectDir)
.withGradleVersion(gradleVersion)
Expand All @@ -84,7 +91,26 @@ class EndToEndTest(private val agpVersion: String, private val gradleVersion: St
val metadata =
File(projectDir, "build/generated/resources/releaseOssLicensesTask/raw/third_party_license_metadata")
Assert.assertEquals(expectedContents(isBuiltInKotlinEnabled()), metadata.readText())

val cleanResult = GradleRunner.create()
.withProjectDir(projectDir)
.withGradleVersion(gradleVersion)
.withArguments("clean", "-s")
.build()
Assert.assertFalse(File(projectDir, "build").exists())
Assert.assertEquals(cleanResult.task(":clean")!!.outcome, TaskOutcome.SUCCESS)
}

@Test
fun clean() {
val result = GradleRunner.create()
.withProjectDir(projectDir)
.withGradleVersion(gradleVersion)
.withArguments("clean", "-s")
.build()
Assert.assertEquals(result.task(":clean")!!.outcome, TaskOutcome.UP_TO_DATE)
}

}

private fun expectedDependenciesJson(builtInKotlinEnabled: Boolean) = """[
Expand Down