Kotlin Facet: Configure facet if kotlin-android plugin is present

#KT-17861 Fixed
This commit is contained in:
Alexey Sedunov
2017-05-17 16:14:28 +03:00
parent 8f6f69db65
commit d288c684c8
2 changed files with 69 additions and 1 deletions
@@ -57,7 +57,7 @@ class KotlinGradleModelBuilder : ModelBuilderService {
"kotlin" to "kotlin-platform-jvm",
"kotlin2js" to "kotlin-platform-js"
)
val kotlinPluginIds = listOf("kotlin", "kotlin2js")
val kotlinPluginIds = listOf("kotlin", "kotlin2js", "kotlin-android")
private val kotlinPlatformCommonPluginId = "kotlin-platform-common"
}
@@ -749,6 +749,74 @@ class GradleFacetImportTest : GradleImportingTestCase() {
}
}
@Test
fun testKotlinAndroidPluginDetection() {
createProjectSubFile("build.gradle", """
group 'Again'
version '1.0-SNAPSHOT'
buildscript {
repositories {
jcenter()
maven {
url='https://dl.bintray.com/kotlin/kotlin-eap-1.1'
}
}
dependencies {
classpath "com.android.tools.build:gradle:2.3.0"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.0"
}
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
minSdkVersion 11
targetSdkVersion 23
versionCode 1002003
versionName version
}
dataBinding {
enabled = true
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
buildTypes {
debug {
applicationIdSuffix ".debug"
versionNameSuffix "-debug"
}
release {
minifyEnabled true
shrinkResources true
}
}
}
""")
createProjectSubFile("local.properties", """
sdk.dir=/${StringUtil.escapeBackSlashes(File(homePath).parent + "/dependencies/androidSDK")}
""")
createProjectSubFile("src/main/AndroidManifest.xml", """
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="my.test.project" >
</manifest>
""")
importProject()
Assert.assertNotNull(KotlinFacet.get(getModule("project")))
}
@Test
fun testNoFacetInModuleWithoutKotlinPlugin() {
createProjectSubFile("build.gradle", """