aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsebastian.sellmair <sebastian.sellmair@jetbrains.com>2020-07-02 09:44:50 +0200
committerPaweł Marks <Kordyjan@users.noreply.github.com>2020-07-02 12:48:53 +0200
commit3a5de4fada9dae8eb75816abe740152480409165 (patch)
tree0676702e0dcca2b2e8731b30e6b6d5b6c419372c
parent0af0ef9ae462b9153758625410b67d7dc5b57a3d (diff)
downloaddokka-3a5de4fada9dae8eb75816abe740152480409165.tar.gz
dokka-3a5de4fada9dae8eb75816abe740152480409165.tar.bz2
dokka-3a5de4fada9dae8eb75816abe740152480409165.zip
Implement template mechanism for Gradle integration tests
-rw-r--r--integration-tests/gradle/projects/it-basic/build.gradle.kts11
-rw-r--r--integration-tests/gradle/projects/it-basic/settings.gradle.kts24
-rw-r--r--integration-tests/gradle/projects/template.root.gradle.kts11
-rw-r--r--integration-tests/gradle/projects/template.settings.gradle.kts24
-rw-r--r--integration-tests/gradle/src/main/kotlin/org/jetbrains/dokka/it/gradle/AbstractGradleIntegrationTest.kt14
-rw-r--r--plugins/base/src/main/kotlin/renderers/DefaultRenderer.kt2
6 files changed, 49 insertions, 37 deletions
diff --git a/integration-tests/gradle/projects/it-basic/build.gradle.kts b/integration-tests/gradle/projects/it-basic/build.gradle.kts
index 80c2bbea..e5a44555 100644
--- a/integration-tests/gradle/projects/it-basic/build.gradle.kts
+++ b/integration-tests/gradle/projects/it-basic/build.gradle.kts
@@ -3,18 +3,9 @@ plugins {
id("org.jetbrains.dokka")
}
-repositories {
- maven("https://dl.bintray.com/kotlin/kotlin-dev/")
- jcenter()
- mavenLocal()
- mavenCentral()
-}
+apply(from = "../template.root.gradle.kts")
dependencies {
implementation(kotlin("stdlib"))
}
-afterEvaluate {
- logger.quiet("Gradle version: ${gradle.gradleVersion}")
- logger.quiet("Kotlin version: ${properties["dokka_it_kotlin_version"]}")
-}
diff --git a/integration-tests/gradle/projects/it-basic/settings.gradle.kts b/integration-tests/gradle/projects/it-basic/settings.gradle.kts
index ca697588..833995e5 100644
--- a/integration-tests/gradle/projects/it-basic/settings.gradle.kts
+++ b/integration-tests/gradle/projects/it-basic/settings.gradle.kts
@@ -1,27 +1,5 @@
@file:Suppress("LocalVariableName", "UnstableApiUsage")
-pluginManagement {
- val dokka_it_kotlin_version: String by settings
-
- plugins {
- id("org.jetbrains.kotlin.jvm") version dokka_it_kotlin_version
- }
-
- resolutionStrategy {
- eachPlugin {
- if (requested.id.id == "org.jetbrains.dokka") {
- useModule("org.jetbrains.dokka:dokka-gradle-plugin:for-integration-tests-SNAPSHOT")
- }
- }
- }
- repositories {
- maven("https://dl.bintray.com/kotlin/kotlin-dev/")
- mavenLocal()
- mavenCentral()
- jcenter()
- gradlePluginPortal()
- }
-}
-
+apply(from = "../template.settings.gradle.kts")
rootProject.name = "it-basic"
diff --git a/integration-tests/gradle/projects/template.root.gradle.kts b/integration-tests/gradle/projects/template.root.gradle.kts
new file mode 100644
index 00000000..02e6c715
--- /dev/null
+++ b/integration-tests/gradle/projects/template.root.gradle.kts
@@ -0,0 +1,11 @@
+repositories {
+ maven("https://dl.bintray.com/kotlin/kotlin-dev/")
+ jcenter()
+ mavenLocal()
+ mavenCentral()
+}
+
+afterEvaluate {
+ logger.quiet("Gradle version: ${gradle.gradleVersion}")
+ logger.quiet("Kotlin version: ${properties["dokka_it_kotlin_version"]}")
+}
diff --git a/integration-tests/gradle/projects/template.settings.gradle.kts b/integration-tests/gradle/projects/template.settings.gradle.kts
new file mode 100644
index 00000000..faee1f18
--- /dev/null
+++ b/integration-tests/gradle/projects/template.settings.gradle.kts
@@ -0,0 +1,24 @@
+@file:Suppress("LocalVariableName", "UnstableApiUsage")
+
+pluginManagement {
+ val dokka_it_kotlin_version: String by settings
+
+ plugins {
+ id("org.jetbrains.kotlin.jvm") version dokka_it_kotlin_version
+ }
+
+ resolutionStrategy {
+ eachPlugin {
+ if (requested.id.id == "org.jetbrains.dokka") {
+ useModule("org.jetbrains.dokka:dokka-gradle-plugin:for-integration-tests-SNAPSHOT")
+ }
+ }
+ }
+ repositories {
+ maven("https://dl.bintray.com/kotlin/kotlin-dev/")
+ mavenLocal()
+ mavenCentral()
+ jcenter()
+ gradlePluginPortal()
+ }
+}
diff --git a/integration-tests/gradle/src/main/kotlin/org/jetbrains/dokka/it/gradle/AbstractGradleIntegrationTest.kt b/integration-tests/gradle/src/main/kotlin/org/jetbrains/dokka/it/gradle/AbstractGradleIntegrationTest.kt
index d8a9a60f..2efb9c55 100644
--- a/integration-tests/gradle/src/main/kotlin/org/jetbrains/dokka/it/gradle/AbstractGradleIntegrationTest.kt
+++ b/integration-tests/gradle/src/main/kotlin/org/jetbrains/dokka/it/gradle/AbstractGradleIntegrationTest.kt
@@ -4,17 +4,25 @@ import org.gradle.testkit.runner.GradleRunner
import org.junit.Rule
import org.junit.rules.TemporaryFolder
import java.io.File
+import kotlin.test.BeforeTest
import kotlin.test.assertFalse
abstract class AbstractGradleIntegrationTest {
@get:Rule
- val projectTemporaryFolder = TemporaryFolder()
+ val temporaryTestFolder = TemporaryFolder()
- val projectPath get() = projectTemporaryFolder.root.toPath()
+ val projectDir get() = File(temporaryTestFolder.root, "project")
- val projectDir get() = projectTemporaryFolder.root
+ val projectPath get() = projectDir.toPath()
+ @BeforeTest
+ fun copyTemplates() {
+ File("projects").listFiles().orEmpty()
+ .filter { it.isFile }
+ .filter { it.name.startsWith("template.") }
+ .forEach { file -> file.copyTo(File(temporaryTestFolder.root, file.name)) }
+ }
fun createGradleRunner(
buildVersions: BuildVersions, arguments: Array<String>
diff --git a/plugins/base/src/main/kotlin/renderers/DefaultRenderer.kt b/plugins/base/src/main/kotlin/renderers/DefaultRenderer.kt
index 4313f1e3..f2fce191 100644
--- a/plugins/base/src/main/kotlin/renderers/DefaultRenderer.kt
+++ b/plugins/base/src/main/kotlin/renderers/DefaultRenderer.kt
@@ -172,4 +172,4 @@ abstract class DefaultRenderer<T>(
}
}
-fun ContentPage.sourceSets() = this.content.sourceSets \ No newline at end of file
+fun ContentPage.sourceSets() = this.content.sourceSets