From 7986250dbe5b38c4d8d85894575f9beb99c5d04b Mon Sep 17 00:00:00 2001 From: Sergey Igushkin Date: Thu, 10 Aug 2017 14:50:02 +0300 Subject: [PATCH] Add a test for javaPackagePrefix --- .../kotlin/gradle/KotlinGradlePluginIT.kt | 14 +++++++++++++ .../javaPackagePrefix/build.gradle | 21 +++++++++++++++++++ .../src/main/java/app/App.kt | 10 +++++++++ .../src/main/java/util/Appender.kt | 5 +++++ .../src/main/java/util/JUtil.java | 7 +++++++ 5 files changed, 57 insertions(+) create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/build.gradle create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/app/App.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/Appender.kt create mode 100644 libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/JUtil.java diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinGradlePluginIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinGradlePluginIT.kt index 1b1987374d6..9314f4c50be 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinGradlePluginIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/KotlinGradlePluginIT.kt @@ -19,6 +19,7 @@ package org.jetbrains.kotlin.gradle import org.gradle.api.logging.LogLevel import org.jetbrains.kotlin.com.intellij.openapi.util.io.FileUtil import org.jetbrains.kotlin.gradle.tasks.USING_INCREMENTAL_COMPILATION_MESSAGE +import org.jetbrains.kotlin.gradle.util.checkBytecodeContains import org.jetbrains.kotlin.gradle.util.getFileByName import org.jetbrains.kotlin.gradle.util.getFilesByNames import org.jetbrains.kotlin.gradle.util.modify @@ -582,4 +583,17 @@ class KotlinGradleIT: BaseGradleIT() { assertFileExists("build/classes/kotlin/deploy/META-INF/${archivesBaseName}_deploy.kotlin_module") } } + + @Test + fun testJavaPackagePrefix() { + val project = Project("javaPackagePrefix", "4.0") + project.build("build") { + assertSuccessful() + + // Check that the Java source in a non-full-depth package structure was located correctly: + checkBytecodeContains( + File(project.projectDir, "build/classes/kotlin/main/my/pack/name/app/MyApp.class"), + "my/pack/name/util/JUtil.util") + } + } } \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/build.gradle b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/build.gradle new file mode 100644 index 00000000000..92f65365d14 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/build.gradle @@ -0,0 +1,21 @@ +buildscript { + repositories { + mavenLocal() + } + dependencies { + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + } +} + +apply plugin: 'java' +apply plugin: 'kotlin' + +repositories { + mavenLocal() +} + +dependencies { + compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" +} + +compileKotlin.javaPackagePrefix = "my.pack.name" \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/app/App.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/app/App.kt new file mode 100644 index 00000000000..3ed667b902d --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/app/App.kt @@ -0,0 +1,10 @@ +package my.pack.name.app + +import my.pack.name.util.Appender +import my.pack.name.util.JUtil + +class MyApp { + fun method(arg: String): String { + return JUtil.util() + Appender().append(arg) + } +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/Appender.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/Appender.kt new file mode 100644 index 00000000000..2f24d88b6b8 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/Appender.kt @@ -0,0 +1,5 @@ +package my.pack.name.util + +class Appender { + fun append(arg: String): String = "Hello, $arg" +} diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/JUtil.java b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/JUtil.java new file mode 100644 index 00000000000..ff9183cd8df --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/javaPackagePrefix/src/main/java/util/JUtil.java @@ -0,0 +1,7 @@ +package my.pack.name.util; + +public class JUtil { + public static String util() { + return "Some string"; + } +}