b883dc5434
Merge-request: KT-MR-6921 Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
65 lines
2.6 KiB
Kotlin
65 lines
2.6 KiB
Kotlin
import org.jetbrains.kotlin.ideaExt.idea
|
|
|
|
plugins {
|
|
kotlin("jvm")
|
|
id("jps-compatible")
|
|
}
|
|
|
|
project.configureJvmToolchain(JdkMajorVersion.JDK_11_0)
|
|
|
|
dependencies {
|
|
testImplementation(kotlinStdlib())
|
|
testImplementation(commonDependency("org.jetbrains.kotlin:kotlin-reflect")) { isTransitive = false }
|
|
testImplementation(intellijCore())
|
|
testImplementation(commonDependency("commons-lang:commons-lang"))
|
|
testImplementation(commonDependency("org.jetbrains.teamcity:serviceMessages"))
|
|
testImplementation(project(":kotlin-compiler-runner-unshaded"))
|
|
testImplementation(projectTests(":compiler:tests-common"))
|
|
testImplementation(projectTests(":compiler:tests-common-new"))
|
|
testImplementation(projectTests(":compiler:test-infrastructure"))
|
|
testImplementation(projectTests(":generators:test-generator"))
|
|
testApiJUnit5()
|
|
|
|
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps:trove4j"))
|
|
testRuntimeOnly(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil"))
|
|
}
|
|
|
|
val generationRoot = projectDir.resolve("tests-gen")
|
|
|
|
sourceSets {
|
|
"main" { none() }
|
|
"test" {
|
|
projectDefault()
|
|
java.srcDirs(generationRoot.name)
|
|
}
|
|
}
|
|
|
|
if (kotlinBuildProperties.isInJpsBuildIdeaSync) {
|
|
apply(plugin = "idea")
|
|
idea {
|
|
module.generatedSourceDirs.addAll(listOf(generationRoot))
|
|
}
|
|
}
|
|
|
|
// Tasks that run different sorts of tests. Most frequent use case: running specific tests at TeamCity.
|
|
val infrastructureTest = nativeTest("infrastructureTest", "infrastructure")
|
|
val codegenBoxTest = nativeTest("codegenBoxTest", "codegen")
|
|
val stdlibTest = nativeTest("stdlibTest", "stdlib")
|
|
val kotlinTestLibraryTest = nativeTest("kotlinTestLibraryTest", "kotlin-test")
|
|
val klibAbiTest = nativeTest("klibAbiTest", "klib-abi")
|
|
val klibBinaryCompatibilityTest = nativeTest("klibBinaryCompatibilityTest", "klib-binary-compatibility")
|
|
val cinteropTest = nativeTest("cinteropTest", "cinterop")
|
|
|
|
// "test" task is created by convention. We can't just remove it. Let's enable it in developer's environment, so it can be used
|
|
// to run any test from IDE or from console, but disable it at TeamCity where it is not supposed to be ever used.
|
|
val test by nativeTest("test", null /* no tags */).apply {
|
|
if (kotlinBuildProperties.isTeamcityBuild) {
|
|
configure { doFirst { throw GradleException("Task $path is not supposed to be executed in TeamCity environment") } }
|
|
}
|
|
}
|
|
|
|
val generateTests by generator("org.jetbrains.kotlin.generators.tests.GenerateNativeTestsKt") {
|
|
javaLauncher.set(project.getToolchainLauncherFor(JdkMajorVersion.JDK_11_0))
|
|
dependsOn(":compiler:generateTestData")
|
|
}
|