Add tests for configuring kotlin with gradle 4.9

This commit is contained in:
Natalia Selezneva
2018-08-10 16:34:37 +03:00
parent 81b519286f
commit 81f4bd3846
52 changed files with 506 additions and 11 deletions
@@ -60,7 +60,7 @@ import static org.junit.Assume.assumeThat;
@RunWith(value = Parameterized.class)
public abstract class AbstractModelBuilderTest {
public static final Object[][] SUPPORTED_GRADLE_VERSIONS = {{"3.5"}};
public static final Object[][] SUPPORTED_GRADLE_VERSIONS = {{"3.5"}, {"4.9"}};
private static final Pattern TEST_METHOD_NAME_PATTERN = Pattern.compile("(.*)\\[(\\d*: with Gradle-.*)\\]");
@@ -18,9 +18,9 @@ import org.jetbrains.kotlin.idea.util.application.runReadAction
import org.jetbrains.kotlin.test.KotlinTestUtils
import org.jetbrains.kotlin.test.testFramework.runInEdtAndWait
import org.jetbrains.kotlin.test.testFramework.runWriteAction
import org.jetbrains.plugins.gradle.tooling.annotation.TargetVersions
import org.jetbrains.plugins.gradle.util.GradleConstants
import org.junit.Assert
import org.junit.Ignore
import org.junit.Test
import java.io.File
@@ -122,7 +122,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJvmWithBuildGradle() {
val files = importProjectFromTestData()
@@ -139,7 +139,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJvmWithBuildGradleKts() {
val files = importProjectFromTestData()
@@ -156,7 +156,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJvmEAPWithBuildGradle() {
val files = importProjectFromTestData()
@@ -173,7 +173,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJvmEAPWithBuildGradleKts() {
val files = importProjectFromTestData()
@@ -190,7 +190,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJsWithBuildGradle() {
val files = importProjectFromTestData()
@@ -207,7 +207,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJsWithBuildGradleKts() {
val files = importProjectFromTestData()
@@ -224,7 +224,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJsEAPWithBuildGradle() {
val files = importProjectFromTestData()
@@ -241,7 +241,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
@Test
@Ignore // Enable in Gradle 4.4+
@TargetVersions("4.4+")
fun testConfigureJsEAPWithBuildGradleKts() {
val files = importProjectFromTestData()
@@ -349,6 +349,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
}
@TargetVersions("3.5")
@Test
fun testAddLibraryGSKWithKotlinVersion() {
val files = importProjectFromTestData()
@@ -450,6 +451,7 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
}
@TargetVersions("3.5")
@Test
fun testChangeCoroutinesSupportGSK() {
val files = importProjectFromTestData()
@@ -463,6 +465,20 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
}
}
@TargetVersions("4.4+")
@Test
fun testChangeCoroutinesSupportGSK49() {
val files = importProjectFromTestData()
runInEdtAndWait {
myTestFixture.project.executeWriteCommand("") {
KotlinWithGradleConfigurator.changeCoroutineConfiguration(myTestFixture.module, "enable")
}
checkFiles(files)
}
}
@Test
fun testAddLanguageVersion() {
val files = importProjectFromTestData()
@@ -554,7 +570,12 @@ class GradleConfiguratorTest : GradleImportingTestCase() {
.forEach {
if (it.name == GradleConstants.SETTINGS_FILE_NAME && !File(testDataDirectory(), it.name + SUFFIX).exists()) return@forEach
val actualText = LoadTextUtil.loadText(it).toString()
KotlinTestUtils.assertEqualsToFile(File(testDataDirectory(), it.name + SUFFIX), actualText)
val expectedFileName = if (File(testDataDirectory(), it.name + ".$gradleVersion" + SUFFIX).exists()) {
it.name + ".$gradleVersion" + SUFFIX
} else {
it.name + SUFFIX
}
KotlinTestUtils.assertEqualsToFile(File(testDataDirectory(), expectedFileName), actualText)
}
}
}
@@ -1,3 +1,7 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
testCompile("junit:junit:4.12")
compile(kotlinModule("stdlib-jre8"))
@@ -1,3 +1,7 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
testCompile("junit:junit:4.12")
compile(kotlinModule("stdlib-jre8"))
@@ -0,0 +1,9 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
testCompile("junit:junit:4.12")
compile(kotlinModule("stdlib-jre8"))
compile(kotlin("reflect"))
}
@@ -1,4 +1,9 @@
plugins {
kotlin("jvm") version "1.2.50"
}
val kotlin_version: String by extra
dependencies {
testCompile("junit:junit:4.12")
compile(kotlinModule("stdlib-jre8", kotlin_version))
@@ -1,4 +1,9 @@
plugins {
kotlin("jvm") version "1.2.50"
}
val kotlin_version: String by extra
dependencies {
testCompile("junit:junit:4.12")
compile(kotlinModule("stdlib-jre8", kotlin_version))
@@ -1,3 +1,7 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
testCompile("junit:junit:4.12")
compile(kotlinModule("stdlib-jre8"))
@@ -1,3 +1,7 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
testCompile("junit:junit:4.12")
compile(kotlinModule("stdlib-jre8"))
@@ -1,3 +1,7 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
compile(kotlinModule("stdlib-jre8"))
}
@@ -1,3 +1,7 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
compile(kotlinModule("stdlib-jre8"))
testCompile("junit:junit:4.12")
@@ -0,0 +1,9 @@
plugins {
kotlin("jvm") version "1.2.50"
}
dependencies {
compile(kotlinModule("stdlib-jre8"))
testCompile("junit:junit:4.12")
testCompile(kotlin("test"))
}
@@ -1,5 +1,9 @@
import org.jetbrains.kotlin.gradle.dsl.Coroutines
plugins {
kotlin("jvm") version "1.2.50"
}
kotlin {
experimental.coroutines = Coroutines.DISABLE
}
@@ -1,5 +1,9 @@
import org.jetbrains.kotlin.gradle.dsl.Coroutines
plugins {
kotlin("jvm") version "1.2.50"
}
kotlin {
experimental.coroutines = Coroutines.ENABLE
}
@@ -0,0 +1,9 @@
import org.jetbrains.kotlin.gradle.dsl.Coroutines
plugins {
kotlin("jvm") version "1.2.50"
}
kotlin {
experimental.coroutines = Coroutines.WARN
}
@@ -0,0 +1,9 @@
import org.jetbrains.kotlin.gradle.dsl.Coroutines
plugins {
kotlin("jvm") version "1.2.50"
}
kotlin {
experimental.coroutines = Coroutines.ENABLE
}
@@ -1,4 +1,11 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm") version "1.2.50"
}
val compileKotlin: KotlinCompile by tasks
compileKotlin.kotlinOptions {
languageVersion = "1.0"
}
@@ -1,4 +1,11 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm") version "1.2.50"
}
val compileKotlin: KotlinCompile by tasks
compileKotlin.kotlinOptions {
languageVersion = "1.1"
}
@@ -0,0 +1,15 @@
buildscript {
repositories {
jcenter()
mavenCentral()
}
}
plugins {
id 'org.jetbrains.kotlin.jvm' version '1.0.6'
}
repositories {
mavenCentral()
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib"
}
@@ -0,0 +1,25 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm") version "1.1.2"
}
buildscript {
repositories {
jcenter()
mavenCentral()
}
}
dependencies {
compile(kotlin("stdlib-jre8"))
}
repositories {
mavenCentral()
}
val compileKotlin: KotlinCompile by tasks
compileKotlin.kotlinOptions {
jvmTarget = "1.8"
}
val compileTestKotlin: KotlinCompile by tasks
compileTestKotlin.kotlinOptions {
jvmTarget = "1.8"
}
@@ -0,0 +1,24 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm") version "1.2.60-dev-286"
}
group = "testgroup"
version = "1.0-SNAPSHOT"
dependencies {
compile(kotlin("stdlib-jdk8"))
}
repositories {
maven {
setUrl("https://teamcity.jetbrains.com/guestAuth/app/rest/builds/buildType:(id:Kotlin_dev_Compiler),number:1.2.60-dev-286,branch:default:any/artifacts/content/maven/")
}
mavenCentral()
}
val compileKotlin: KotlinCompile by tasks
compileKotlin.kotlinOptions {
jvmTarget = "1.8"
}
val compileTestKotlin: KotlinCompile by tasks
compileTestKotlin.kotlinOptions {
jvmTarget = "1.8"
}
@@ -0,0 +1,6 @@
group 'testgroup'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
@@ -0,0 +1,15 @@
plugins {
id 'kotlin2js' version '1.2.40-eap-62'
}
group 'testgroup'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
maven {
url 'http://dl.bintray.com/kotlin/kotlin-eap'
}
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-js"
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,6 @@
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
@@ -0,0 +1,15 @@
plugins {
id("kotlin2js") version "1.2.40-eap-62"
}
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
maven {
setUrl("http://dl.bintray.com/kotlin/kotlin-eap")
}
}
dependencies {
compile(kotlin("stdlib-js"))
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,6 @@
group 'testgroup'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
@@ -0,0 +1,12 @@
plugins {
id 'kotlin2js' version '1.2.40'
}
group 'testgroup'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-js"
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,6 @@
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
@@ -0,0 +1,12 @@
plugins {
id("kotlin2js") version "1.2.40"
}
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
dependencies {
compile(kotlin("stdlib-js"))
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,16 @@
plugins {
id 'java'
}
group 'testgroup'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
@@ -0,0 +1,31 @@
plugins {
id 'java'
id 'org.jetbrains.kotlin.jvm' version '1.2.40-eap-62'
}
group 'testgroup'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
maven {
url 'http://dl.bintray.com/kotlin/kotlin-eap'
}
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
}
compileKotlin {
kotlinOptions {
jvmTarget = "1.8"
}
}
compileTestKotlin {
kotlinOptions {
jvmTarget = "1.8"
}
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,18 @@
plugins {
java
}
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
dependencies {
testCompile("junit", "junit", "4.12")
}
configure<JavaPluginConvention> {
sourceCompatibility = JavaVersion.VERSION_1_8
}
@@ -0,0 +1,33 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
java
kotlin("jvm") version "1.2.40-eap-62"
}
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
maven {
setUrl("http://dl.bintray.com/kotlin/kotlin-eap")
}
}
dependencies {
testCompile("junit", "junit", "4.12")
compile(kotlin("stdlib-jdk8"))
}
configure<JavaPluginConvention> {
sourceCompatibility = JavaVersion.VERSION_1_8
}
val compileKotlin: KotlinCompile by tasks
compileKotlin.kotlinOptions {
jvmTarget = "1.8"
}
val compileTestKotlin: KotlinCompile by tasks
compileTestKotlin.kotlinOptions {
jvmTarget = "1.8"
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,16 @@
plugins {
id 'java'
}
group 'testgroup'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
@@ -0,0 +1,28 @@
plugins {
id 'java'
id 'org.jetbrains.kotlin.jvm' version '1.2.40'
}
group 'testgroup'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
}
compileKotlin {
kotlinOptions {
jvmTarget = "1.8"
}
}
compileTestKotlin {
kotlinOptions {
jvmTarget = "1.8"
}
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,18 @@
plugins {
java
}
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
dependencies {
testCompile("junit", "junit", "4.12")
}
configure<JavaPluginConvention> {
sourceCompatibility = JavaVersion.VERSION_1_8
}
@@ -0,0 +1,30 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
java
kotlin("jvm") version "1.2.40"
}
group = "testgroup"
version = "1.0-SNAPSHOT"
repositories {
mavenCentral()
}
dependencies {
testCompile("junit", "junit", "4.12")
compile(kotlin("stdlib-jdk8"))
}
configure<JavaPluginConvention> {
sourceCompatibility = JavaVersion.VERSION_1_8
}
val compileKotlin: KotlinCompile by tasks
compileKotlin.kotlinOptions {
jvmTarget = "1.8"
}
val compileTestKotlin: KotlinCompile by tasks
compileTestKotlin.kotlinOptions {
jvmTarget = "1.8"
}
@@ -0,0 +1 @@
include ':app'
@@ -0,0 +1,24 @@
plugins {
id 'org.jetbrains.kotlin.jvm' version '1.2.60-dev-286'
}
group 'testgroup'
version '1.0-SNAPSHOT'
repositories {
maven {
url 'https://teamcity.jetbrains.com/guestAuth/app/rest/builds/buildType:(id:Kotlin_dev_Compiler),number:1.2.60-dev-286,branch:default:any/artifacts/content/maven/'
}
mavenCentral()
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
}
compileKotlin {
kotlinOptions {
jvmTarget = "1.8"
}
}
compileTestKotlin {
kotlinOptions {
jvmTarget = "1.8"
}
}
@@ -0,0 +1,18 @@
plugins {
id 'java'
id 'org.jetbrains.kotlin.jvm' version '1.0.6'
}
group 'testgroup'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
compile "org.jetbrains.kotlin:kotlin-stdlib"
}