diff options
author | sebastian.sellmair <sebastian.sellmair@jetbrains.com> | 2020-06-03 11:13:02 +0200 |
---|---|---|
committer | Paweł Marks <Kordyjan@users.noreply.github.com> | 2020-06-04 23:49:37 +0200 |
commit | 435e34fe4d63b85ec8f93155153eda0ea2303d73 (patch) | |
tree | c465fa6dd4b3c61e78709f02929bb5eed1910b6d /runners/gradle-plugin | |
parent | 6dc9498ca849645ecb4ec923bb7116b245dca706 (diff) | |
download | dokka-435e34fe4d63b85ec8f93155153eda0ea2303d73.tar.gz dokka-435e34fe4d63b85ec8f93155153eda0ea2303d73.tar.bz2 dokka-435e34fe4d63b85ec8f93155153eda0ea2303d73.zip |
Implement Project.dokka extension to align kotlin and groovey dokka configuration
Diffstat (limited to 'runners/gradle-plugin')
3 files changed, 28 insertions, 1 deletions
diff --git a/runners/gradle-plugin/build.gradle.kts b/runners/gradle-plugin/build.gradle.kts index df4a8738..d2e9eccd 100644 --- a/runners/gradle-plugin/build.gradle.kts +++ b/runners/gradle-plugin/build.gradle.kts @@ -16,6 +16,8 @@ dependencies { compileOnly("com.android.tools.build:builder-model:3.0.0") compileOnly(gradleApi()) compileOnly(gradleKotlinDsl()) + testImplementation(gradleApi()) + testImplementation(kotlin("test-junit")) constraints { val kotlin_version: String by project compileOnly("org.jetbrains.kotlin:kotlin-reflect:${kotlin_version}") { diff --git a/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/DokkaTask.kt b/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/DokkaTask.kt index d72ec0f9..2de95493 100644 --- a/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/DokkaTask.kt +++ b/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/DokkaTask.kt @@ -341,4 +341,10 @@ open class DokkaTask : DefaultTask(), Configurable { null } } -}
\ No newline at end of file +} + +fun Project.dokka(configuration: DokkaTask.() -> Unit) { + tasks.withType(DokkaTask::class.java) { dokkaTask -> + dokkaTask.configuration() + } +} diff --git a/runners/gradle-plugin/src/test/kotlin/org/jetbrains/dokka/gradle/KotlinDslDokkaTaskConfigurationTest.kt b/runners/gradle-plugin/src/test/kotlin/org/jetbrains/dokka/gradle/KotlinDslDokkaTaskConfigurationTest.kt new file mode 100644 index 00000000..0b80f4a2 --- /dev/null +++ b/runners/gradle-plugin/src/test/kotlin/org/jetbrains/dokka/gradle/KotlinDslDokkaTaskConfigurationTest.kt @@ -0,0 +1,19 @@ +package org.jetbrains.dokka.gradle + +import org.gradle.testfixtures.ProjectBuilder +import kotlin.test.Test +import kotlin.test.assertEquals + +class KotlinDslDokkaTaskConfigurationTest { + + @Test + fun `configure project using dokka extension function`() { + val project = ProjectBuilder.builder().build() + project.plugins.apply("org.jetbrains.dokka") + project.dokka { this.outputFormat = "test" } + + project.tasks.withType(DokkaTask::class.java).forEach { dokkaTask -> + assertEquals("test", dokkaTask.outputFormat) + } + } +} |