IDEA-79381 Exclude from Import not working for non-static inner classes in excluded packages

This commit is contained in:
peter
2011-12-29 17:46:51 +01:00
parent a2b643978a
commit 4ba1cc4d29
12 changed files with 69 additions and 11 deletions
@@ -0,0 +1,3 @@
public class Main {
Inner<caret>
}
@@ -0,0 +1,6 @@
public class Main {
void f(foo.Outer outer) {
outer.new In<caret>x
}
}
@@ -0,0 +1,5 @@
public class Main {
void f(foo.Outer.In<caret>x outer) {
}
}
@@ -418,6 +418,48 @@ public class NormalCompletionTest extends LightFixtureCompletionTestCase {
}
}
public void testExcludeInstanceInnerClasses() throws Throwable {
CodeInsightSettings.getInstance().EXCLUDED_PACKAGES = ['foo']
myFixture.addClass 'package foo; public class Outer { public class Inner {} }'
myFixture.addClass 'package bar; public class Inner {}'
try {
configure()
assert 'bar.Inner' == ((JavaPsiClassReferenceElement)myFixture.lookupElements[0]).qualifiedName
assert myFixture.lookupElementStrings == ['Inner']
}
finally {
CodeInsightSettings.getInstance().EXCLUDED_PACKAGES = new String[0]
}
}
public void testExcludedInstanceInnerClassCreation() throws Throwable {
CodeInsightSettings.getInstance().EXCLUDED_PACKAGES = ['foo']
myFixture.addClass 'package foo; public class Outer { public class Inner {} }'
myFixture.addClass 'package bar; public class Inner {}'
try {
configure()
assert 'foo.Outer.Inner' == ((JavaPsiClassReferenceElement)myFixture.lookupElements[0]).qualifiedName
assert myFixture.lookupElementStrings == ['Inner']
}
finally {
CodeInsightSettings.getInstance().EXCLUDED_PACKAGES = new String[0]
}
}
public void testExcludedInstanceInnerClassQualifiedReference() throws Throwable {
CodeInsightSettings.getInstance().EXCLUDED_PACKAGES = ['foo']
myFixture.addClass 'package foo; public class Outer { public class Inner {} }'
myFixture.addClass 'package bar; public class Inner {}'
try {
configure()
assert 'foo.Outer.Inner' == ((JavaPsiClassReferenceElement)myFixture.lookupElements[0]).qualifiedName
assert myFixture.lookupElementStrings == ['Inner']
}
finally {
CodeInsightSettings.getInstance().EXCLUDED_PACKAGES = new String[0]
}
}
public void testAtUnderClass() throws Throwable {
doTest();
}