diff --git a/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/bar/Bar.java b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/bar/Bar.java new file mode 100644 index 00000000000..44d04659de6 --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/bar/Bar.java @@ -0,0 +1,5 @@ +package bar; + +public interface Bar { + +} diff --git a/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/bar/Other.java b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/bar/Other.java new file mode 100644 index 00000000000..4cc642287e9 --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/bar/Other.java @@ -0,0 +1,5 @@ +package bar; + +public interface Other { + +} diff --git a/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Foo.java b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Foo.java new file mode 100644 index 00000000000..42b96fd46d6 --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Foo.java @@ -0,0 +1,9 @@ +package foo; + +import bar.Bar; +import bar.Other; +import java.util.ArrayList; + +public class Foo { + abstract public Bar foo(ArrayList list, Other other); +} diff --git a/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Impl.kt b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Impl.kt new file mode 100644 index 00000000000..7e84873434b --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Impl.kt @@ -0,0 +1,7 @@ +package foo + +class Impl: Foo() { + +} + +// KT-4732 Override/Implement action does not add all imports when "Optimize imports on the fly" is enabled diff --git a/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Impl.kt.after b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Impl.kt.after new file mode 100644 index 00000000000..d97d2fb4a0f --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/checkNotImportedTypesFromJava/foo/Impl.kt.after @@ -0,0 +1,14 @@ +package foo + +import java.util.ArrayList +import bar.Other +import bar.Bar + +class Impl: Foo() { + + override fun foo(list: ArrayList?, other: Other?): Bar? { + throw UnsupportedOperationException() + } +} + +// KT-4732 Override/Implement action does not add all imports when "Optimize imports on the fly" is enabled diff --git a/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java b/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java index ff051f8b675..418f1711ae3 100644 --- a/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java @@ -16,6 +16,7 @@ package org.jetbrains.jet.plugin.codeInsight; +import com.intellij.codeInsight.CodeInsightSettings; import org.jetbrains.jet.plugin.PluginTestCaseBase; public final class OverrideImplementTest extends AbstractOverrideImplementTest { @@ -146,6 +147,17 @@ public final class OverrideImplementTest extends AbstractOverrideImplementTest { doImplementDirectoryTest(); } + public void testCheckNotImportedTypesFromJava() { + boolean oldValue = CodeInsightSettings.getInstance().OPTIMIZE_IMPORTS_ON_THE_FLY; + try { + CodeInsightSettings.getInstance().OPTIMIZE_IMPORTS_ON_THE_FLY = true; + doImplementDirectoryTest(); + } + finally { + CodeInsightSettings.getInstance().OPTIMIZE_IMPORTS_ON_THE_FLY = oldValue; + } + } + public void testOverrideSamAdapters() { doOverrideDirectoryTest("foo"); }