Generate tests for resolving references to kotlin binaries from java in IDE
This commit is contained in:
@@ -541,7 +541,12 @@ fun main(args: Array<String>) {
|
||||
}
|
||||
|
||||
testClass<AbstractReferenceResolveInJavaTest>() {
|
||||
model("resolve/referenceInJava", extension = "java")
|
||||
model("resolve/referenceInJava/binaryAndSource", extension = "java")
|
||||
model("resolve/referenceInJava/sourceOnly", extension = "java")
|
||||
}
|
||||
|
||||
testClass<AbstractReferenceToCompiledKotlinResolveInJavaTest>() {
|
||||
model("resolve/referenceInJava/binaryAndSource", extension = "java")
|
||||
}
|
||||
|
||||
testClass<AbstractReferenceResolveWithLibTest>() {
|
||||
|
||||
+1
-1
@@ -4,4 +4,4 @@ public class PackageFacade {
|
||||
}
|
||||
}
|
||||
|
||||
// REF: /src/<test dir>/resolve/referenceInJava.dependencies.kt
|
||||
// REF: /src/<test dir>/resolve/referenceInJava/dependency.dependencies.kt
|
||||
+1
-1
@@ -47,7 +47,7 @@ interface TraitWithImpl {
|
||||
|
||||
public class TraitWithDelegatedWithImpl(f: TraitWithImpl) : TraitWithImpl by f
|
||||
|
||||
kotlin.jvm.jvmOverloads
|
||||
@kotlin.jvm.JvmOverloads
|
||||
public fun withJvmOverloads(i: Int, b: Boolean = false, s: String="hello") {}
|
||||
|
||||
annotation class KAnno(val c: Int = 4, val d: String)
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2015 JetBrains s.r.o.
|
||||
* Copyright 2010-2016 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -16,9 +16,11 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.resolve
|
||||
|
||||
import org.jetbrains.kotlin.idea.test.JdkAndMockLibraryProjectDescriptor
|
||||
import org.jetbrains.kotlin.idea.test.PluginTestCaseBase
|
||||
|
||||
private val FILE_WITH_KOTLIN_CODE = PluginTestCaseBase.getTestDataPathBase() + "/resolve/referenceInJava/dependencies.kt"
|
||||
private val DIR = "/resolve/referenceInJava/dependency"
|
||||
private val FILE_WITH_KOTLIN_CODE = PluginTestCaseBase.getTestDataPathBase() + DIR + "/dependencies.kt"
|
||||
|
||||
abstract class AbstractReferenceResolveInJavaTest : AbstractReferenceResolveTest() {
|
||||
override fun doTest(path: String) {
|
||||
@@ -28,3 +30,12 @@ abstract class AbstractReferenceResolveInJavaTest : AbstractReferenceResolveTest
|
||||
performChecks()
|
||||
}
|
||||
}
|
||||
|
||||
abstract class AbstractReferenceToCompiledKotlinResolveInJavaTest : AbstractReferenceResolveTest() {
|
||||
override fun doTest(path: String) {
|
||||
myFixture.configureByFile(path)
|
||||
performChecks()
|
||||
}
|
||||
|
||||
override fun getProjectDescriptor() = JdkAndMockLibraryProjectDescriptor(FILE_WITH_KOTLIN_CODE, false)
|
||||
}
|
||||
|
||||
+93
-81
@@ -27,95 +27,107 @@ import java.util.regex.Pattern;
|
||||
|
||||
/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */
|
||||
@SuppressWarnings("all")
|
||||
@TestMetadata("idea/testData/resolve/referenceInJava")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public class ReferenceResolveInJavaTestGenerated extends AbstractReferenceResolveInJavaTest {
|
||||
public void testAllFilesPresentInReferenceInJava() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/resolve/referenceInJava"), Pattern.compile("^(.+)\\.java$"), true);
|
||||
@TestMetadata("idea/testData/resolve/referenceInJava/binaryAndSource")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class BinaryAndSource extends AbstractReferenceResolveInJavaTest {
|
||||
public void testAllFilesPresentInBinaryAndSource() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/resolve/referenceInJava/binaryAndSource"), Pattern.compile("^(.+)\\.java$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("Class.java")
|
||||
public void testClass() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Class.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ClassObjectField.java")
|
||||
public void testClassObjectField() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/ClassObjectField.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Constructor.java")
|
||||
public void testConstructor() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Constructor.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("EnumEntry.java")
|
||||
public void testEnumEntry() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/EnumEntry.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("FileFacade.java")
|
||||
public void testFileFacade() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/FileFacade.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Getter.java")
|
||||
public void testGetter() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Getter.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Method.java")
|
||||
public void testMethod() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Method.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ObjectInstance.java")
|
||||
public void testObjectInstance() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/ObjectInstance.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("PlatformStaticFun.java")
|
||||
public void testPlatformStaticFun() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/PlatformStaticFun.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
}
|
||||
|
||||
@TestMetadata("AnnotationParameterReference.java")
|
||||
public void testAnnotationParameterReference() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/AnnotationParameterReference.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
@TestMetadata("idea/testData/resolve/referenceInJava/sourceOnly")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public static class SourceOnly extends AbstractReferenceResolveInJavaTest {
|
||||
public void testAllFilesPresentInSourceOnly() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/resolve/referenceInJava/sourceOnly"), Pattern.compile("^(.+)\\.java$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("AutoGeneratedOverloads.java")
|
||||
public void testAutoGeneratedOverloads() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/AutoGeneratedOverloads.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
@TestMetadata("AnnotationParameterReference.java")
|
||||
public void testAnnotationParameterReference() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/sourceOnly/AnnotationParameterReference.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Class.java")
|
||||
public void testClass() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/Class.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
@TestMetadata("AutoGeneratedOverloads.java")
|
||||
public void testAutoGeneratedOverloads() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/sourceOnly/AutoGeneratedOverloads.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ClassObjectField.java")
|
||||
public void testClassObjectField() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/ClassObjectField.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
@TestMetadata("ClassObjectStaticField.java")
|
||||
public void testClassObjectStaticField() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/sourceOnly/ClassObjectStaticField.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ClassObjectStaticField.java")
|
||||
public void testClassObjectStaticField() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/ClassObjectStaticField.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
@TestMetadata("DelegatedMethodFromTraitNoImpl.java")
|
||||
public void testDelegatedMethodFromTraitNoImpl() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/sourceOnly/DelegatedMethodFromTraitNoImpl.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Constructor.java")
|
||||
public void testConstructor() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/Constructor.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("DelegatedMethodFromTraitNoImpl.java")
|
||||
public void testDelegatedMethodFromTraitNoImpl() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/DelegatedMethodFromTraitNoImpl.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("DelegatedMethodFromTraitWithImpl.java")
|
||||
public void testDelegatedMethodFromTraitWithImpl() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/DelegatedMethodFromTraitWithImpl.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("EnumEntry.java")
|
||||
public void testEnumEntry() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/EnumEntry.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("FileFacade.java")
|
||||
public void testFileFacade() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/FileFacade.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Getter.java")
|
||||
public void testGetter() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/Getter.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Method.java")
|
||||
public void testMethod() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/Method.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ObjectInstance.java")
|
||||
public void testObjectInstance() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/ObjectInstance.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("PlatformStaticFun.java")
|
||||
public void testPlatformStaticFun() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/PlatformStaticFun.java");
|
||||
doTest(fileName);
|
||||
@TestMetadata("DelegatedMethodFromTraitWithImpl.java")
|
||||
public void testDelegatedMethodFromTraitWithImpl() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/sourceOnly/DelegatedMethodFromTraitWithImpl.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+91
@@ -0,0 +1,91 @@
|
||||
/*
|
||||
* Copyright 2010-2016 JetBrains s.r.o.
|
||||
*
|
||||
* 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.jetbrains.kotlin.idea.resolve;
|
||||
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import org.jetbrains.kotlin.test.JUnit3RunnerWithInners;
|
||||
import org.jetbrains.kotlin.test.KotlinTestUtils;
|
||||
import org.jetbrains.kotlin.test.TestMetadata;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/** This class is generated by {@link org.jetbrains.kotlin.generators.tests.TestsPackage}. DO NOT MODIFY MANUALLY */
|
||||
@SuppressWarnings("all")
|
||||
@TestMetadata("idea/testData/resolve/referenceInJava/binaryAndSource")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
@RunWith(JUnit3RunnerWithInners.class)
|
||||
public class ReferenceToCompiledKotlinResolveInJavaTestGenerated extends AbstractReferenceToCompiledKotlinResolveInJavaTest {
|
||||
public void testAllFilesPresentInBinaryAndSource() throws Exception {
|
||||
KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("idea/testData/resolve/referenceInJava/binaryAndSource"), Pattern.compile("^(.+)\\.java$"), true);
|
||||
}
|
||||
|
||||
@TestMetadata("Class.java")
|
||||
public void testClass() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Class.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ClassObjectField.java")
|
||||
public void testClassObjectField() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/ClassObjectField.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Constructor.java")
|
||||
public void testConstructor() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Constructor.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("EnumEntry.java")
|
||||
public void testEnumEntry() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/EnumEntry.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("FileFacade.java")
|
||||
public void testFileFacade() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/FileFacade.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Getter.java")
|
||||
public void testGetter() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Getter.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("Method.java")
|
||||
public void testMethod() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/Method.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("ObjectInstance.java")
|
||||
public void testObjectInstance() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/ObjectInstance.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("PlatformStaticFun.java")
|
||||
public void testPlatformStaticFun() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("idea/testData/resolve/referenceInJava/binaryAndSource/PlatformStaticFun.java");
|
||||
doTest(fileName);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user