summaryrefslogtreecommitdiff
path: root/java/java-tests/testData
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2013-05-01 12:55:43 -0700
committerTor Norbye <tnorbye@google.com>2013-05-01 12:55:43 -0700
commit8fb0021093e7d978cc06043ba4c06b0a47778294 (patch)
treeb95f5f920574415ae49b26ad6abac86eb6d7b38d /java/java-tests/testData
parentb17587c84879dd2ea42495f1fbdadbc806b9475b (diff)
downloadidea-8fb0021093e7d978cc06043ba4c06b0a47778294.tar.gz
Snapshot dddb119296e7ee16fa8180784610b89b89112ebb from master branch of git://git.jetbrains.org/idea/community.git
Change-Id: I5fe892d3e4d06009445cc2270aa90bb57dea9d39
Diffstat (limited to 'java/java-tests/testData')
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting6/IDEADEV11877.java (renamed from java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting/IDEADEV11877.java)14
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67668.java17
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67669.java17
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67671.java13
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/ambiguousIDEA57500/pck/AmbiguousMethodCall.java14
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/Enum.java2
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA57446.java7
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67677.java11
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67798.java6
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported.java7
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported_after.java8
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/afterImplementsInIncompleteEnumConstant.java8
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/beforeImplementsInIncompleteEnumConstant.java8
-rw-r--r--java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/staticImportMethod/beforeInacceptable.java22
-rw-r--r--java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/expected.xml9
-rw-r--r--java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/src/Test.java10
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/AbstractClass.java12
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/AnonymousClasses.java17
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/AnonymousClassesInStats.java22
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed.java22
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed2.java25
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/NoCompletionForAbstractClasses.java25
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/NoMoreThanMaxCountIntentions.java37
-rw-r--r--java/java-tests/testData/inspection/smartInheritance/RelevantClassShowed.java33
-rw-r--r--java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java5
-rw-r--r--java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java.after5
-rw-r--r--java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/after/Outer.java21
-rw-r--r--java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/before/Outer.java20
-rw-r--r--java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList.java3
-rw-r--r--java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList_after.java3
30 files changed, 421 insertions, 2 deletions
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting/IDEADEV11877.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting6/IDEADEV11877.java
index 7dfc0024180f..39773bd7e428 100644
--- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting/IDEADEV11877.java
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting6/IDEADEV11877.java
@@ -1,7 +1,19 @@
interface MyCloneable {
//protected method from java.lang.Object is not implicitly declared in interface with no base interfaces
- <error descr="'clone()' in 'MyCloneable' clashes with 'clone()' in 'java.lang.Object'; attempting to use incompatible return type">int</error> clone();
+ int clone();
<error descr="'toString()' in 'MyCloneable' clashes with 'toString()' in 'java.lang.Object'; attempting to use incompatible return type">int</error> toString();
+}
+
+interface MyCloneable1 {
+ <error descr="Method does not override method from its superclass">@Override</error>
+ Object clone();
+}
+
+class MyCloneable2 {
+ @Override
+ public Object clone() {
+ return null;
+ }
} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67668.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67668.java
new file mode 100644
index 000000000000..2de2b0e4f5d9
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67668.java
@@ -0,0 +1,17 @@
+import java.util.Collection;
+import java.util.List;
+
+interface A
+{
+ <S extends Collection<?> & List<?>> void foo(S x);
+ <S extends List<?>> void foo(S x);
+}
+
+
+class B
+{
+ public static void main(String[] args) {
+ A a = null;
+ a.foo<error descr="Ambiguous method call: both 'A.foo(Collection<?>)' and 'A.foo(List<?>)' match">(null)</error>;
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67669.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67669.java
new file mode 100644
index 000000000000..ed1f8df47c6f
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67669.java
@@ -0,0 +1,17 @@
+import java.util.Collection;
+import java.util.List;
+
+interface A
+{
+ <S extends Collection<?> & List<?>> void foo(S x);
+ <S extends List> String foo(S x);
+}
+
+
+class B
+{
+ public static void main(String[] args) {
+ A a = null;
+ char c = a.foo(null).<error descr="Cannot resolve method 'charAt(int)'">charAt</error>(0);
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67671.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67671.java
new file mode 100644
index 000000000000..f066058520d1
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/AmbiguousMethodCallIDEA67671.java
@@ -0,0 +1,13 @@
+import java.util.Collection;
+import java.util.List;
+
+interface A
+{
+ <S extends Collection<?> & List<?>> void foo(S x);
+}
+
+<error descr="Class 'B' must either be declared abstract or implement abstract method 'foo(S)' in 'A'">class B implements A</error>
+{
+ public void foo(Collection<?> x) { }
+ public <S extends List<?> & Collection<?>> void foo(S x) { }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/ambiguousIDEA57500/pck/AmbiguousMethodCall.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/ambiguousIDEA57500/pck/AmbiguousMethodCall.java
new file mode 100644
index 000000000000..c252485568d3
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlighting7/ambiguousIDEA57500/pck/AmbiguousMethodCall.java
@@ -0,0 +1,14 @@
+package pck;
+
+interface I<T> {}
+interface A extends I<I<? extends String>>{}
+interface B extends I<I<?>>{}
+
+abstract class X {
+ abstract <T> T foo(T x, T y);
+
+ void bar(A x, B y){
+ foo(x, y);
+ foo(y, y);
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/Enum.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/Enum.java
index e113157c5841..89812a7ffc9d 100644
--- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/Enum.java
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/Enum.java
@@ -126,7 +126,7 @@ interface Barz {
}
enum Fooz implements Barz {
- <error descr="Class 'Fooz' must either be declared abstract or implement abstract method 'baz()' in 'Barz'">FOO</error>;
+ <error descr="Class 'Fooz' must implement abstract method 'baz()' in 'Barz'">FOO</error>;
}
///////////////////////
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA57446.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA57446.java
new file mode 100644
index 000000000000..a80c4ee8f25a
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA57446.java
@@ -0,0 +1,7 @@
+abstract class A<T>{
+ abstract void foo(T x);
+ class B extends A<B> {
+ @Override
+ void foo(A<T>.B x) {}
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67677.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67677.java
new file mode 100644
index 000000000000..691a352f8d7d
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67677.java
@@ -0,0 +1,11 @@
+import java.util.List;
+
+interface B<T extends Cloneable> {
+ void foo(List<? super T> x);
+}
+
+class D {
+ void bar(B<?> x, List<?> y) {
+ x.foo<error descr="'foo(java.util.List<? super capture<? extends java.lang.Cloneable>>)' in 'B' cannot be applied to '(java.util.List<capture<?>>)'">(y)</error>;
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67798.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67798.java
new file mode 100644
index 000000000000..dda17fdeb07f
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA67798.java
@@ -0,0 +1,6 @@
+class A<T> {
+ {
+ class T extends A<T> {}
+ }
+ class T extends A<T> {}
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported.java
new file mode 100644
index 000000000000..8c1beebdf0b5
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported.java
@@ -0,0 +1,7 @@
+import static foo.Clazz.Foo.Const_1;
+
+class MyObject{
+ public void doIt(){
+ foo.Clazz.Fo<caret>o.Const_1;
+ }
+}
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported_after.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported_after.java
new file mode 100644
index 000000000000..496ff79b3dbb
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/addSingleStaticImport/AllowStaticImportWhenAlreadyImported_after.java
@@ -0,0 +1,8 @@
+import static foo.Clazz.Foo;
+import static foo.Clazz.Foo.Const_1;
+
+class MyObject{
+ public void doIt(){
+ Foo.Const_1;
+ }
+}
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/afterImplementsInIncompleteEnumConstant.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/afterImplementsInIncompleteEnumConstant.java
new file mode 100644
index 000000000000..8cee422b88a7
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/afterImplementsInIncompleteEnumConstant.java
@@ -0,0 +1,8 @@
+// "Implement Methods" "true"
+interface Card {
+ void play();
+}
+
+enum E implements Card {
+ A<caret>
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/beforeImplementsInIncompleteEnumConstant.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/beforeImplementsInIncompleteEnumConstant.java
new file mode 100644
index 000000000000..8cee422b88a7
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/implementAbstractFromNew/beforeImplementsInIncompleteEnumConstant.java
@@ -0,0 +1,8 @@
+// "Implement Methods" "true"
+interface Card {
+ void play();
+}
+
+enum E implements Card {
+ A<caret>
+} \ No newline at end of file
diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/staticImportMethod/beforeInacceptable.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/staticImportMethod/beforeInacceptable.java
new file mode 100644
index 000000000000..5648aa7c3d9b
--- /dev/null
+++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/staticImportMethod/beforeInacceptable.java
@@ -0,0 +1,22 @@
+// "Static Import Method 'foo.B.aaaaaaa'" "false"
+package foo;
+
+public class X {
+ {
+ foo(1, 2, <caret>aaaaaaa(""));
+ }
+
+ void foo(Integer... p) {}
+}
+
+class B {
+ @Deprecated
+ public static Integer aaaaaaa(String s, String b) {
+ return 1;
+ }
+}
+class B1 {
+ public static String aaaaaaa(String s) {
+ return "";
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/expected.xml b/java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/expected.xml
new file mode 100644
index 000000000000..3bf1252e596b
--- /dev/null
+++ b/java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/expected.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<problems>
+ <problem>
+ <file>Test.java</file>
+ <line>8</line>
+ <problem_class severity="WARNING" attribute_key="NOT_USED_ELEMENT_ATTRIBUTES">Redundant type cast</problem_class>
+ <description>Casting &lt;code&gt;2&lt;/code&gt; to &lt;code&gt;Integer&lt;/code&gt; is redundant</description>
+ </problem>
+</problems>
diff --git a/java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/src/Test.java b/java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/src/Test.java
new file mode 100644
index 000000000000..995072a79416
--- /dev/null
+++ b/java/java-tests/testData/inspection/redundantCast/generics/BoxingInConditional/src/Test.java
@@ -0,0 +1,10 @@
+//This is a test for JDK_15 LanguageLevel
+public class Test {
+ private Integer foo(String s, Integer i) {
+ return s == null ? i : (Integer)2;
+ }
+
+ private int foo1(String s, Integer i) {
+ return s == null ? i : (Integer)2;
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/inspection/smartInheritance/AbstractClass.java b/java/java-tests/testData/inspection/smartInheritance/AbstractClass.java
new file mode 100644
index 000000000000..6f3507029a7b
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/AbstractClass.java
@@ -0,0 +1,12 @@
+class MyInheritor implements A<caret> {}
+
+interface A {}
+
+abstract class B implements A {}
+
+abstract class C extends B {}
+abstract class C1 extends B {}
+abstract class C2 extends B {}
+abstract class C3 extends B {}
+abstract class C4 extends B {}
+abstract class C5 extends B {}
diff --git a/java/java-tests/testData/inspection/smartInheritance/AnonymousClasses.java b/java/java-tests/testData/inspection/smartInheritance/AnonymousClasses.java
new file mode 100644
index 000000000000..789e79150a90
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/AnonymousClasses.java
@@ -0,0 +1,17 @@
+class Some {
+ void m() {
+ A someA = new A () {}<caret>
+ }
+}
+
+class A {}
+
+class B extends A {}
+
+class B1 extends B {}
+class B3 extends B {}
+class B4 extends B {}
+class B5 extends B {}
+class B3 extends B {}
+class B6 extends B {}
+
diff --git a/java/java-tests/testData/inspection/smartInheritance/AnonymousClassesInStats.java b/java/java-tests/testData/inspection/smartInheritance/AnonymousClassesInStats.java
new file mode 100644
index 000000000000..4ff927db43b6
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/AnonymousClassesInStats.java
@@ -0,0 +1,22 @@
+class MyInheritor implements A0<caret> {
+
+}
+
+interface A0 {
+
+}
+
+class A implements A0 {}
+
+class C implements A0 {}
+class D extends C {}
+
+class Some {
+ void m() {
+ A a1 = new A() {};
+ A a3 = new A() {};
+ A a4 = new A() {};
+ A a5 = new A() {};
+ A a2 = new A() {};
+ }
+} \ No newline at end of file
diff --git a/java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed.java b/java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed.java
new file mode 100644
index 000000000000..d5ca8af6e15b
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed.java
@@ -0,0 +1,22 @@
+class MyInheritor implement<caret>s A {
+
+}
+
+interface A {
+}
+
+interface B extends A {}
+interface B1 extends A {}
+interface B6 extends A {}
+interface B2 extends A {}
+interface B3 extends A {}
+interface B4 extends A {}
+interface B5 extends A {}
+
+interface C extends B {}
+interface C1 extends B {}
+interface C2 extends B {}
+interface C3 extends B {}
+interface C4 extends B {}
+
+class D extends C {}
diff --git a/java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed2.java b/java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed2.java
new file mode 100644
index 000000000000..72e94b550f6d
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/InterfacesNotShowed2.java
@@ -0,0 +1,25 @@
+class MyInheritor implement<caret>s A {}
+
+interface A {}
+
+interface B extends A {}
+interface B1 extends A {}
+interface B6 extends A {}
+interface B2 extends A {}
+interface B3 extends A {}
+interface B4 extends A {}
+interface B5 extends A {}
+
+interface C extends B {}
+interface C1 extends B {}
+interface C2 extends B {}
+interface C3 extends B {}
+interface C4 extends B {}
+
+class D implements C {}
+
+class E1 extends D {}
+class E2 extends D {}
+class E3 extends D {}
+class E4 extends D {}
+class E5 extends D {}
diff --git a/java/java-tests/testData/inspection/smartInheritance/NoCompletionForAbstractClasses.java b/java/java-tests/testData/inspection/smartInheritance/NoCompletionForAbstractClasses.java
new file mode 100644
index 000000000000..397185cb6efa
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/NoCompletionForAbstractClasses.java
@@ -0,0 +1,25 @@
+abstract class MyInheritor implement<caret>s A {}
+
+interface A {}
+
+interface B extends A {}
+interface B1 extends A {}
+interface B6 extends A {}
+interface B2 extends A {}
+interface B3 extends A {}
+interface B4 extends A {}
+interface B5 extends A {}
+
+interface C extends B {}
+interface C1 extends B {}
+interface C2 extends B {}
+interface C3 extends B {}
+interface C4 extends B {}
+
+class D implements C {}
+
+class E1 extends D {}
+class E2 extends D {}
+class E3 extends D {}
+class E4 extends D {}
+class E5 extends D {}
diff --git a/java/java-tests/testData/inspection/smartInheritance/NoMoreThanMaxCountIntentions.java b/java/java-tests/testData/inspection/smartInheritance/NoMoreThanMaxCountIntentions.java
new file mode 100644
index 000000000000..7a6f476bfc79
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/NoMoreThanMaxCountIntentions.java
@@ -0,0 +1,37 @@
+class MyInheritor extends A {
+
+}
+
+abstract class A {}
+
+class B1 extends A {}
+class C11 extends B1 {}
+class C12 extends B1 {}
+
+class B2 extends A {}
+class C21 extends B2 {}
+class C22 extends B2 {}
+
+class B3 extends A {}
+class C31 extends B3 {}
+class C32 extends B3 {}
+
+class B4 extends A {}
+class C41 extends B4 {}
+class C42 extends B4 {}
+
+class B5 extends A {}
+class C51 extends B5 {}
+class C52 extends B5 {}
+
+class B6 extends A {}
+class C61 extends B6 {}
+class C62 extends B6 {}
+
+class B7 extends A {}
+class C71 extends B7 {}
+class C72 extends B7 {}
+
+class B8 extends A {}
+class C81 extends B8 {}
+class C82 extends B8 {}
diff --git a/java/java-tests/testData/inspection/smartInheritance/RelevantClassShowed.java b/java/java-tests/testData/inspection/smartInheritance/RelevantClassShowed.java
new file mode 100644
index 000000000000..2919f193b1b6
--- /dev/null
+++ b/java/java-tests/testData/inspection/smartInheritance/RelevantClassShowed.java
@@ -0,0 +1,33 @@
+class MyInheritor implemen<caret>ts A {
+
+}
+
+//first level
+
+interface A {
+}
+
+//2 level
+
+class B implements A {
+}
+
+//3 level
+
+class C extends B {
+}
+
+class C1 extends B {
+}
+
+//...
+
+class D extends C{}
+class D1 extends C{}
+class D2 extends C{}
+class D3 extends C{}
+class D4 extends C{}
+class D5 extends C{}
+class D6 extends C{}
+class D7 extends C{}
+class D8 extends C{}
diff --git a/java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java b/java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java
new file mode 100644
index 000000000000..a81ae39bf957
--- /dev/null
+++ b/java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java
@@ -0,0 +1,5 @@
+import java.io.File;
+
+public class Test {
+ private static final String c = File.separa<caret>tor;
+}
diff --git a/java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java.after b/java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java.after
new file mode 100644
index 000000000000..18d3b4adb5de
--- /dev/null
+++ b/java/java-tests/testData/refactoring/inlineConstantField/ConstantFromLibrary.java.after
@@ -0,0 +1,5 @@
+import java.io.File;
+
+public class Test {
+ private static final String c = "" + File.separatorChar;
+}
diff --git a/java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/after/Outer.java b/java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/after/Outer.java
new file mode 100644
index 000000000000..c25f8e26023a
--- /dev/null
+++ b/java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/after/Outer.java
@@ -0,0 +1,21 @@
+class Outer {
+ final static String C0 = "";
+
+ static class Inner {
+ final static String C1 = "";
+ }
+
+ @A(Nested.C0)
+ enum Enm {
+ @A(Nested.C0)
+ E0;
+
+ @A(Nested.C1)
+ void foo() {
+ }
+ }
+}
+
+@interface A {
+ String value();
+} \ No newline at end of file
diff --git a/java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/before/Outer.java b/java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/before/Outer.java
new file mode 100644
index 000000000000..8bb016293e1a
--- /dev/null
+++ b/java/java-tests/testData/refactoring/moveMembers/fromNestedToOuter/before/Outer.java
@@ -0,0 +1,20 @@
+class Outer {
+ static class Inner {
+ final static String C0 = "";
+ final static String C1 = "";
+ }
+
+ @A(Nested.C0)
+ enum Enm {
+ @A(Nested.C0)
+ E0;
+
+ @A(Nested.C1)
+ void foo() {
+ }
+ }
+}
+
+@interface A {
+ String value();
+} \ No newline at end of file
diff --git a/java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList.java b/java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList.java
new file mode 100644
index 000000000000..04c1fba3bdf7
--- /dev/null
+++ b/java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList.java
@@ -0,0 +1,3 @@
+nterface Foo {}
+interface Ba<caret>r extends Foo {}
+class FooBarImpl implements Foo, Bar {}
diff --git a/java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList_after.java b/java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList_after.java
new file mode 100644
index 000000000000..c1c4f899abe5
--- /dev/null
+++ b/java/java-tests/testData/refactoring/safeDelete/UsageInExtendsList_after.java
@@ -0,0 +1,3 @@
+nterface Foo {}
+
+class FooBarImpl implements Foo {}