Set kotlin.version when Kotlin's Gradle plugin is applied

Closes gh-11711
This commit is contained in:
Andy Wilkinson
2018-01-29 10:13:12 +00:00
parent bdd532cc20
commit 199088b0c9
8 changed files with 194 additions and 6 deletions

View File

@@ -0,0 +1,54 @@
/*
* Copyright 2012-2018 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.boot.gradle.plugin;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.gradle.junit.GradleCompatibilitySuite;
import org.springframework.boot.gradle.testkit.GradleBuild;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Integration tests for {@link KotlinPluginAction}.
*
* @author Andy Wilkinson
*/
@RunWith(GradleCompatibilitySuite.class)
public class KotlinPluginActionIntegrationTests {
@Rule
public GradleBuild gradleBuild;
@Test
public void noKotlinVersionPropertyWithoutKotlinPlugin() {
assertThat(this.gradleBuild.build("kotlinVersion").getOutput())
.contains("Kotlin version: none");
}
@Test
public void kotlinVersionMatchesKotlinPluginVersion() {
String output = this.gradleBuild
.build("kotlinVersion", "dependencies", "--configuration", "compile")
.getOutput();
assertThat(output).contains("Kotlin version: 1.2.10");
assertThat(output).contains("org.jetbrains.kotlin:kotlin-stdlib-jdk8: -> 1.2.10");
}
}

View File

@@ -0,0 +1,39 @@
buildscript {
dependencies {
classpath files(pluginClasspath.split(','))
}
}
plugins {
id 'org.jetbrains.kotlin.jvm' version '1.2.10'
}
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
resolutionStrategy {
eachDependency {
if (it.requested.group == 'org.springframework.boot') {
it.useVersion project.bootVersion
}
}
}
}
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
compile 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
}
task kotlinVersion {
doLast {
def kotlinVersion = project.hasProperty('kotlin.version') ? project.getProperty('kotlin.version') : 'none'
println "Kotlin version: ${kotlinVersion}"
}
}

View File

@@ -0,0 +1,14 @@
buildscript {
dependencies {
classpath files(pluginClasspath.split(','))
}
}
apply plugin: 'org.springframework.boot'
task kotlinVersion {
doLast {
def kotlinVersion = project.hasProperty('kotlin.version') ? project.getProperty('kotlin.version') : 'none'
println "Kotlin version: ${kotlinVersion}"
}
}