diff --git a/java/java-tests/testData/inspection/dataFlow/AlexBug/expected.xml b/java/java-tests/testData/inspection/dataFlow/AlexBug/expected.xml
deleted file mode 100644
index 796a315e49f5..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/AlexBug/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ArrayAccessDoesntCancelAnalysis/expected.xml b/java/java-tests/testData/inspection/dataFlow/ArrayAccessDoesntCancelAnalysis/expected.xml
deleted file mode 100644
index 40578e1dfcc8..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ArrayAccessDoesntCancelAnalysis/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 9
- Passing null argument to parameter annotated as @NotNull
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ArrayAccessNPE/expected.xml b/java/java-tests/testData/inspection/dataFlow/ArrayAccessNPE/expected.xml
deleted file mode 100644
index b008dd52de23..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ArrayAccessNPE/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 5
- Array access <code>path[0]</code> will produce <code>NullPointerException</code>
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ArrayAccessNPE/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ArrayAccessNPE/src/Test.java
deleted file mode 100644
index 2fb4a8258eec..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ArrayAccessNPE/src/Test.java
+++ /dev/null
@@ -1,9 +0,0 @@
-public class Test {
- public String foo(String[] path) {
- if (path != null) return null;
-
- String p = path[0];
-
- return "";
- }
-}
diff --git a/java/java-tests/testData/inspection/dataFlow/BoxingNaN/expected.xml b/java/java-tests/testData/inspection/dataFlow/BoxingNaN/expected.xml
deleted file mode 100644
index 3859c7d2c6b9..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/BoxingNaN/expected.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
- Test.java
- 6
-
- void main(String[] args)
- main(String[])
- <default>
-
- DoubleTrouble
- DoubleTrouble
-
-
- Condition <code>b == Double.NaN</code> is always <code>false</code>.
-
-
-
- Test.java
- 11
-
- void main(String[] args)
- main(String[])
- <default>
-
- DoubleTrouble
- DoubleTrouble
-
-
- Condition <code>Float.NaN != Float.NaN</code> is always <code>true</code>.
-
-
-
- Test.java
- 18
-
- void main(String[] args)
- main(String[])
- <default>
-
- DoubleTrouble
- DoubleTrouble
-
-
- Condition <code>Double.NaN == a</code> is always <code>false</code>.
-
-
-
- Test.java
- 19
-
- void main(String[] args)
- main(String[])
- <default>
-
- DoubleTrouble
- DoubleTrouble
-
-
- Condition <code>b == a</code> is always <code>false</code>.
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/BoxingNaN/src/Test.java b/java/java-tests/testData/inspection/dataFlow/BoxingNaN/src/Test.java
deleted file mode 100644
index c495bbb1bf40..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/BoxingNaN/src/Test.java
+++ /dev/null
@@ -1,22 +0,0 @@
-public class DoubleTrouble {
- public static void main(String[] args) {
- {
- Double a = Double.NaN;
- double b = a;//Double.NaN;
- if (b == Double.NaN) {
- ;
- }
- }
-
- if (Float.NaN != Float.NaN) {
-
- }
-
- {
- double a = Double.NaN;
- double b = Double.NaN;
- if (Double.NaN == a) {}
- if (b == a) {}
- }
- }
-}
diff --git a/java/java-tests/testData/inspection/dataFlow/CatchParameterCantBeNull/expected.xml b/java/java-tests/testData/inspection/dataFlow/CatchParameterCantBeNull/expected.xml
deleted file mode 100644
index 081e8fa489e3..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/CatchParameterCantBeNull/expected.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Test.java
- 8
- Condition 'e == null' is always false
-
-
- Test.java
- 11
- Condition 'e instanceof FileNotFoundException' is always false
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/CatchParameterCantBeNull/src/Test.java b/java/java-tests/testData/inspection/dataFlow/CatchParameterCantBeNull/src/Test.java
deleted file mode 100644
index d08fbacdaad2..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/CatchParameterCantBeNull/src/Test.java
+++ /dev/null
@@ -1,16 +0,0 @@
-import java.io.*;
-
-public class Foo {
- public void foo() {
- try {
- throw new EOFException("aaa");
- } catch (Exception e) {
- if (e == null) {
- System.out.println("Can't be here.");
- }
- if (e instanceof FileNotFoundException) {
- System.out.println("Can't be here.");
- }
- }
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/CheckedExceptionDominance/expected.xml b/java/java-tests/testData/inspection/dataFlow/CheckedExceptionDominance/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/CheckedExceptionDominance/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ConditionFalseAndNPE/expected.xml b/java/java-tests/testData/inspection/dataFlow/ConditionFalseAndNPE/expected.xml
deleted file mode 100644
index 14cd1f5b170a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ConditionFalseAndNPE/expected.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- Test.java
- 9
- Method invocation 'foo' may produce NullPointerException
-
-
- Test.java
- 10
- Method invocation 'foo' may produce NullPointerException
-
-
- Test.java
- 10
- Method invocation 'foo' may produce NullPointerException
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ConditionFalseAndNPE/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ConditionFalseAndNPE/src/Test.java
deleted file mode 100644
index 0b029ac00fb5..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ConditionFalseAndNPE/src/Test.java
+++ /dev/null
@@ -1,14 +0,0 @@
-import org.jetbrains.annotations.Nullable;
-public class Foo {
- @Nullable Foo foo() {
- return null;
- }
-
- public void bar() {
- if (foo() != null &&
- foo().foo() != null &&
- foo().foo().foo() != null) {
-
- }
- }
-}
diff --git a/java/java-tests/testData/inspection/dataFlow/ConstantsDifferentTypes/expected.xml b/java/java-tests/testData/inspection/dataFlow/ConstantsDifferentTypes/expected.xml
deleted file mode 100644
index ba08c50fd758..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ConstantsDifferentTypes/expected.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
- Test.java
- 4
-
- void f()
- f()
- <default>
-
- Test
- Test
-
-
- Condition <code>L == 5</code> is always <code>true</code>
-
-
-
- Test.java
- 9
-
- void f()
- f()
- <default>
-
- Test
- Test
-
-
- Condition <code>l == 0f</code> is always <code>true</code>
-
-
-
- Test.java
- 14
-
- void f()
- f()
- <default>
-
- Test
- Test
-
-
- Condition <code>c == 1L</code> is always <code>true</code>
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ConstantsDifferentTypes/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ConstantsDifferentTypes/src/Test.java
deleted file mode 100644
index 447cd4e24682..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ConstantsDifferentTypes/src/Test.java
+++ /dev/null
@@ -1,19 +0,0 @@
-public class Test {
- void f() {
- Long L = 5L;
- if (L == 5) {
- ;
- }
-
- long l = 0;
- if (l == 0f) {
- ;
- }
-
- char c = 1;
- if (c == 1L) {
- ;
- }
-
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/FieldsFlashing/expected.xml b/java/java-tests/testData/inspection/dataFlow/FieldsFlashing/expected.xml
deleted file mode 100644
index 1e9d5ef4fdb8..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/FieldsFlashing/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 18
- Argument 'obj' might be null
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ForEachNPE/expected.xml b/java/java-tests/testData/inspection/dataFlow/ForEachNPE/expected.xml
deleted file mode 100644
index 886b8c182bcf..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ForEachNPE/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 4
- Dereference of 'path' may produce NullPointerException
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/ForEachNPE/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ForEachNPE/src/Test.java
deleted file mode 100644
index 1aca902d140e..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ForEachNPE/src/Test.java
+++ /dev/null
@@ -1,8 +0,0 @@
-public class Test {
- public String foo(String[] path) {
- if (path != null) return null;
- for (String p: path) {}
-
- return "";
- }
-}
diff --git a/java/java-tests/testData/inspection/dataFlow/ForeachFlow/expected.xml b/java/java-tests/testData/inspection/dataFlow/ForeachFlow/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/ForeachFlow/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/GenericInstanceof/expected.xml b/java/java-tests/testData/inspection/dataFlow/GenericInstanceof/expected.xml
deleted file mode 100644
index cf475bb1c559..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/GenericInstanceof/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- GenericInstanceof.java
- 8
- Condition is always true
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/GenericInstanceof/src/GenericInstanceof.java b/java/java-tests/testData/inspection/dataFlow/GenericInstanceof/src/GenericInstanceof.java
deleted file mode 100644
index 69cf77793dfe..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/GenericInstanceof/src/GenericInstanceof.java
+++ /dev/null
@@ -1,12 +0,0 @@
-class Generic {
- Generic() {}
-}
-
-class Test {
- void foo () {
- Generic g = new Generic ();
- if (g instanceof Generic) {
- return;
- }
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV10489/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV10489/expected.xml
deleted file mode 100644
index 1a3ee80fe7bd..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV10489/expected.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- IDEADEV10489.java
- 10
- Method invocation 'length' may produce NullPointerException
-
-
- IDEADEV10489.java
- 8
- Method invocation 'length' may produce NullPointerException
-
-
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV13153/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV13153/expected.xml
deleted file mode 100644
index 808f05cfd9d2..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV13153/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Npe.java
- 9
- Condition 'foo != null' is always 'true'
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV13156/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV13156/expected.xml
deleted file mode 100644
index c63c9258595e..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV13156/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV15583/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV15583/expected.xml
deleted file mode 100644
index 7de6f877c769..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV15583/expected.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- Npe.java
- 14
- 'length' may produce 'NullPointerException'
-
-
- Npe.java
- 18
- 'length' may produce 'NullPointerException'
-
-
- Npe.java
- 27
- 'length' may produce 'NullPointerException'
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV1575/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV1575/expected.xml
deleted file mode 100644
index e1415fb608f4..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV1575/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 4
- Condition 'test' at the left side is always 'true'
-
-
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV1575/src/Test.java b/java/java-tests/testData/inspection/dataFlow/IDEADEV1575/src/Test.java
deleted file mode 100644
index 335fe0978b12..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV1575/src/Test.java
+++ /dev/null
@@ -1,6 +0,0 @@
-class TestGenericsInstanceof {
- public void foo(Object o) {
- boolean test = true;
- test &= o.hashCode() > 3;
- }
-}
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV2605/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV2605/expected.xml
deleted file mode 100644
index a3e736e01718..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV2605/expected.xml
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
- AndAssign.java
- 19
- Condition is always true
-
-
- AndAssign.java
- 26
- Condition is always false
-
-
- AndAssign.java
- 33
- Condition is always false
-
-
- AndAssign.java
- 40
- Condition is always false
-
-
- AndAssign.java
- 47
- Condition is always true
-
-
- AndAssign.java
- 54
- Condition is always true
-
-
- AndAssign.java
- 61
- Condition is always true
-
-
- AndAssign.java
- 68
- Condition is always false
-
-
-
-
-
- AndAssign.java
- 17
- left always true
-
-
- AndAssign.java
- 24
- left always true
-
-
- AndAssign.java
- 31
- left always false
-
-
- AndAssign.java
- 38
- left always false
-
-
- AndAssign.java
- 45
- left always true
-
-
- AndAssign.java
- 52
- left always true
-
-
- AndAssign.java
- 59
- left always false
-
-
- AndAssign.java
- 66
- left always false
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV2605/src/AndAssign.java b/java/java-tests/testData/inspection/dataFlow/IDEADEV2605/src/AndAssign.java
deleted file mode 100644
index 99f8c45540a9..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV2605/src/AndAssign.java
+++ /dev/null
@@ -1,72 +0,0 @@
-public class AndAssign {
- public void foo(boolean result, Object acc) {
- result &= verify(result ? acc : null);
- }
-
- public boolean verify(Object o) {
- System.out.println(o);
- return true;
- }
-
- public void positives() {
- boolean t = true;
- boolean f = false;
- boolean r;
-
- r = t;
- r &= t; // Always true
-
- if (r) { // Always true
- System.out.println("foo");
- }
-
- r = t;
- r &= f; // Always true
-
- if (r) { // Always false
- System.out.println("foo");
- }
-
- r = f;
- r &= t; // Always false
-
- if (r) { // Always false
- System.out.println("foo");
- }
-
- r = f;
- r &= f; // Always false
-
- if (r) { // Always false
- System.out.println("foo");
- }
-
- r = t;
- r |= t // Always true
-
- if (r) { // Always true
- System.out.println("foo");
- }
-
- r = t;
- r |= f // Always true
-
- if (r) { // Always true
- System.out.println("foo");
- }
-
- r = f;
- r |= t // Always false
-
- if (r) { // Always true
- System.out.println("foo");
- }
-
- r = f;
- r |= f // Always false
-
- if (r) { // Always false
- System.out.println("foo");
- }
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV74518/expected.xml
deleted file mode 100644
index 03896ee5835d..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518/expected.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
- NoWarnings.java
- 9
- Constant conditions & exceptions
- Condition <code>i == 1</code> is always <code>true</code> when reached
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518_2/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV74518_2/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518_2/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV77819/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV77819/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV77819/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV78370/expected.xml b/java/java-tests/testData/inspection/dataFlow/IDEADEV78370/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV78370/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/Instanceof/expected.xml b/java/java-tests/testData/inspection/dataFlow/Instanceof/expected.xml
deleted file mode 100644
index 8097f746f86b..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/Instanceof/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Foo.java
- 10
- Condition 'o instanceof B' is always false
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/Instanceof/src/Foo.java b/java/java-tests/testData/inspection/dataFlow/Instanceof/src/Foo.java
deleted file mode 100644
index 01617032d865..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/Instanceof/src/Foo.java
+++ /dev/null
@@ -1,14 +0,0 @@
-class A {
-}
-
-
-class B extends A {
-}
-
-class C {
- void foo(Object o) {
- if (o instanceof A || o instanceof B) {
- System.out.println("Something");
- }
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullArray/expected.xml b/java/java-tests/testData/inspection/dataFlow/NotNullArray/expected.xml
deleted file mode 100644
index 796a315e49f5..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NotNullArray/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullLocalVariable/expected.xml b/java/java-tests/testData/inspection/dataFlow/NotNullLocalVariable/expected.xml
deleted file mode 100644
index 580a889dbfd6..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NotNullLocalVariable/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullable/expected.xml b/java/java-tests/testData/inspection/dataFlow/NotNullable/expected.xml
deleted file mode 100644
index 38c85fc6c3f4..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NotNullable/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Npe.java
- 10
- Condition 'o == null' is always false
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter/expected.xml b/java/java-tests/testData/inspection/dataFlow/NotNullableParameter/expected.xml
deleted file mode 100644
index d199ae1e6ece..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Npe.java
- 9
- Passing null argument to parameter annotated as @NotNull
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/NotNullableParameter/src/Npe.java
deleted file mode 100644
index d8a2a6f7b43b..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter/src/Npe.java
+++ /dev/null
@@ -1,11 +0,0 @@
-import org.jetbrains.annotations.NotNull;
-
-public class Npe {
- Object foo(@NotNull Object o) {
- return o;
- }
-
- void bar() {
- Object o = foo(null); // null should not be passed here.
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter2/expected.xml b/java/java-tests/testData/inspection/dataFlow/NotNullableParameter2/expected.xml
deleted file mode 100644
index cea65e734283..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter2/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Npe.java
- 5
- Condition 'o == null' is always false
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/Nullable/expected.xml b/java/java-tests/testData/inspection/dataFlow/Nullable/expected.xml
deleted file mode 100644
index e924534c7a23..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/Nullable/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Npe.java
- 14
- Argument 'nullable()' might be null
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableLocalVariable/expected.xml b/java/java-tests/testData/inspection/dataFlow/NullableLocalVariable/expected.xml
deleted file mode 100644
index b22b987d9376..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NullableLocalVariable/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Npe.java
- 7
- 'hashCode' may produce NullPointerException
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableProblemThroughCast/expected.xml b/java/java-tests/testData/inspection/dataFlow/NullableProblemThroughCast/expected.xml
deleted file mode 100644
index 775cd0d9be38..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NullableProblemThroughCast/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Npe.java
- 6
- Method invocation <code>bar</code> may produce <code>NullPointerException</code>
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableReturn/expected.xml b/java/java-tests/testData/inspection/dataFlow/NullableReturn/expected.xml
deleted file mode 100644
index 2dd3ea057cc9..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NullableReturn/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Npe.java
- 6
- null is returned
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableReturn1/expected.xml b/java/java-tests/testData/inspection/dataFlow/NullableReturn1/expected.xml
deleted file mode 100644
index 5c458eacbf32..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NullableReturn1/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 8
- Expression 'res' might evaluate to null but is returned by the method declared as @NotNull
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableThroughCast/expected.xml b/java/java-tests/testData/inspection/dataFlow/NullableThroughCast/expected.xml
deleted file mode 100644
index da3af5641f79..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NullableThroughCast/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Npe.java
- 14
- Argument '(Object)nullable()' might be null
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariable/expected.xml b/java/java-tests/testData/inspection/dataFlow/NullableThroughVariable/expected.xml
deleted file mode 100644
index 9837614241a4..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariable/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Npe.java
- 15
- Argument 'o' might be null
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariableShouldNotBeReported/expected.xml b/java/java-tests/testData/inspection/dataFlow/NullableThroughVariableShouldNotBeReported/expected.xml
deleted file mode 100644
index c63c9258595e..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariableShouldNotBeReported/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/PlusOnStrings/expected.xml b/java/java-tests/testData/inspection/dataFlow/PlusOnStrings/expected.xml
deleted file mode 100644
index 05a97ff33c5b..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/PlusOnStrings/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 6
- Condition 'c == null' is always false
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/RegressionByPti/expected.xml b/java/java-tests/testData/inspection/dataFlow/RegressionByPti/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/RegressionByPti/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR13626/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR13626/expected.xml
deleted file mode 100644
index fe6b36dfe5e2..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR13626/expected.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
- Test.java
- 14
- Condition '!a && b' always false
-
-
- Test.java
- 14
- Condition '!a' always false
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR13626/src/Test.java b/java/java-tests/testData/inspection/dataFlow/SCR13626/src/Test.java
deleted file mode 100644
index 4617cf702bc0..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR13626/src/Test.java
+++ /dev/null
@@ -1,16 +0,0 @@
-class Test
-{
-class Test
-{
- public void x()
- {
- boolean a = false;
- boolean b = true;
-
- do
- {
- a = true;
- }
- while( !a && b );
- }
-}}
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR13871/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR13871/expected.xml
deleted file mode 100644
index 9ac879d78616..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR13871/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR14314/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR14314/expected.xml
deleted file mode 100644
index 5daf8020027b..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR14314/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Finally.java
- 9
- Method invocation 'hashCode' may produce NullPointerException
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR14819/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR14819/expected.xml
deleted file mode 100644
index 807c9ca842e0..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR14819/expected.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
- Test.java
- 3
- Condition 't instanceof Test' is redundant
-
-
- Test.java
- 9
- Condition 't instanceof Test' always true
-
-
- Test.java
- 14
- Condition 'foo(null) instanceof Test' is redundant
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR14819/src/Test.java b/java/java-tests/testData/inspection/dataFlow/SCR14819/src/Test.java
deleted file mode 100644
index daf1450dec9f..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR14819/src/Test.java
+++ /dev/null
@@ -1,17 +0,0 @@
-public class Test {
- public Test foo(Test t) {
- if (t instanceof Test) { // redundant instanceof error here. t can be null
- foo(null);
- }
- }
- public Object bar(Test t) {
- if (t == null) return;
- if (t instanceof Test) { // always true error here. t can't be null
- foo(null);
- }
-
- if (bar(null) instanceof Test) return null; // no error here.
- if (foo(null) instanceof Test) return null; // redundant instanceof error here. foo(null) can be null
- return null;
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR15162/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR15162/expected.xml
deleted file mode 100644
index 2dfb4c2c0857..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR15162/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- NullTest.java
- 6
- Dereference of 't' will produce NullPointerException
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR15162/src/NullTest.java b/java/java-tests/testData/inspection/dataFlow/SCR15162/src/NullTest.java
deleted file mode 100644
index c598e755c32b..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR15162/src/NullTest.java
+++ /dev/null
@@ -1,9 +0,0 @@
-public class NullTest {
- int m;
- void f() {};
- public void x() {
- NullTest t = null;
- t.m = 12;
- t.f();
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR15406/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR15406/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR15406/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR18186/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR18186/expected.xml
deleted file mode 100644
index c63c9258595e..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR18186/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR39950/expected.xml b/java/java-tests/testData/inspection/dataFlow/SCR39950/expected.xml
deleted file mode 100644
index 0953dd7d08c6..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SCR39950/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/StrangeArrayIndexOutOfBounds/expected.xml b/java/java-tests/testData/inspection/dataFlow/StrangeArrayIndexOutOfBounds/expected.xml
deleted file mode 100644
index 0953dd7d08c6..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/StrangeArrayIndexOutOfBounds/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/SwitchEnumCases/expected.xml b/java/java-tests/testData/inspection/dataFlow/SwitchEnumCases/expected.xml
deleted file mode 100644
index 8e9db2da5b12..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SwitchEnumCases/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 72
- Method invocation <code>length</code> may produce <code>NullPointerException</code>
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/SwitchQualifierProducesNPE/expected.xml b/java/java-tests/testData/inspection/dataFlow/SwitchQualifierProducesNPE/expected.xml
deleted file mode 100644
index 75d75da7fe02..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/SwitchQualifierProducesNPE/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 10
- Dereference of 'getE()' may produce 'NullPointerException'
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/YoleBug/expected.xml b/java/java-tests/testData/inspection/dataFlow/YoleBug/expected.xml
deleted file mode 100644
index 41136918e68d..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/YoleBug/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 9
- 'foo() != null' is always true
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/AlexBug/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/AlexBug.java
similarity index 88%
rename from java/java-tests/testData/inspection/dataFlow/AlexBug/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/AlexBug.java
index e397de3faf8a..d16d1bce8848 100644
--- a/java/java-tests/testData/inspection/dataFlow/AlexBug/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/AlexBug.java
@@ -1,4 +1,4 @@
-public class Test {
+class Test {
public Test(String s) { }
public Test foo(String path) {
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/AndEq.java b/java/java-tests/testData/inspection/dataFlow/ancient/AndEq.java
new file mode 100644
index 000000000000..fce099daa2c1
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/AndEq.java
@@ -0,0 +1,8 @@
+class Test {
+ public void foo(boolean x, boolean y, boolean z) {
+ boolean r = true;
+ r &= x;
+ r &= y;
+ r &= z;
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ArrayAccessDoesntCancelAnalysis/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/ArrayAccessDoesntCancelAnalysis.java
similarity index 58%
rename from java/java-tests/testData/inspection/dataFlow/ArrayAccessDoesntCancelAnalysis/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/ArrayAccessDoesntCancelAnalysis.java
index 6b384e2dac3a..e9ad56167453 100644
--- a/java/java-tests/testData/inspection/dataFlow/ArrayAccessDoesntCancelAnalysis/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ArrayAccessDoesntCancelAnalysis.java
@@ -1,11 +1,11 @@
import org.jetbrains.annotations.*;
-public class Test {
+class Test {
private static void foo(@NotNull String smth) {
}
public static void main(String[] args) {
String s = args[0];
- foo(null);
+ foo(null);
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/ArrayAccessNPE.java b/java/java-tests/testData/inspection/dataFlow/ancient/ArrayAccessNPE.java
new file mode 100644
index 000000000000..808af4e22722
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ArrayAccessNPE.java
@@ -0,0 +1,9 @@
+class Test {
+ public String foo(String[] path) {
+ if (path != null) return null;
+
+ String p = path[0];
+
+ return "";
+ }
+}
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/Autoboxing.java b/java/java-tests/testData/inspection/dataFlow/ancient/Autoboxing.java
new file mode 100644
index 000000000000..e06a5ed26252
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/Autoboxing.java
@@ -0,0 +1,119 @@
+class Auto {
+ void f(int k) {
+ Integer i = 0;
+ Integer j=0;
+ if (i==j) {
+
+ }
+ Integer j2 = 1;
+ if (i==j2) {
+
+ }
+ if (i==0) {
+
+ }
+ if (i==1) {
+
+ }
+
+ //////////////////
+ Integer big1 = 333;
+ Integer big2= 333;
+ if (big1==333) {
+ }
+ if (333 == big2) {
+ }
+ if (333==333) {
+ }
+ if (big1==big2) {
+
+ }
+ int prim = big1;
+ if (prim==big2) {
+
+ }
+
+ if (big1 == 0) {
+
+ }
+ if (big1 == 332) {
+
+ }
+
+ Character c = 1234;
+ if (c==1234) {
+
+ }
+ if (c==124) {
+
+ }
+ c = 1;
+ if (c==1234) {
+
+ }
+ if (c==c) {
+
+ }
+ Character c2 = 1;
+ if (c==c2) {
+
+ }
+ }
+}
+class aaa {
+ int a;
+ int b;
+ void canBeStatic(int x) {
+ for (int i=0;i<10;i++) {
+ a = i;
+ }
+
+ a = 4;
+
+ if (a == 5) {
+ }
+ }
+
+
+ void f(int p) {
+ {
+ int i = 1;
+ Integer i1 = i;
+ Integer i2 = i;
+ if (i1 == i2) {
+
+ }
+ }
+ {
+ int i = p;
+ Integer i1 = i;
+ Integer i2 = i;
+ if (i1 == i2) {
+
+ }
+ }
+ }
+
+}
+class UsesDoubleAndFloat {
+ void f() {
+ double dd = 10.0;
+ Double r = dd;
+ Double r1 = dd;
+ System.out.println("(r==r1) is "+(r==r1)); // should report??
+
+ Double r2 = 10.0;
+ Double r3 = 10.0;
+ System.out.println("(r2==r3) is "+(r2==r3));
+
+ float fd = 10.0f;
+ Float fr = fd;
+ Float fr1 = fd;
+ System.out.println("(r==r1) is "+(fr==fr1)); // should report??
+
+ Float fr2 = 10.0f;
+ Float fr3 = 10.0f;
+ System.out.println("(r2==r3) is "+(fr2==fr3));
+
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/BoxingNaN.java b/java/java-tests/testData/inspection/dataFlow/ancient/BoxingNaN.java
new file mode 100644
index 000000000000..4cc1cf403017
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/BoxingNaN.java
@@ -0,0 +1,22 @@
+class DoubleTrouble {
+ public static void main(String[] args) {
+ {
+ Double a = Double.NaN;
+ double b = a;//Double.NaN;
+ if (b == Double.NaN) {
+ ;
+ }
+ }
+
+ if (Float.NaN != Float.NaN) {
+
+ }
+
+ {
+ double a = Double.NaN;
+ double b = Double.NaN;
+ if (Double.NaN == a) {}
+ if (b == a) {}
+ }
+ }
+}
diff --git a/java/java-tests/testData/inspection/dataFlow/caseAndNpe/src/CaseAndNpe.java b/java/java-tests/testData/inspection/dataFlow/ancient/CaseAndNpe.java
similarity index 72%
rename from java/java-tests/testData/inspection/dataFlow/caseAndNpe/src/CaseAndNpe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/CaseAndNpe.java
index dbb76080639f..2185aa0d1099 100644
--- a/java/java-tests/testData/inspection/dataFlow/caseAndNpe/src/CaseAndNpe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/CaseAndNpe.java
@@ -15,7 +15,7 @@ public class aaa {
o.equals(o);
}
- o.equals(o);
+ o.equals(o);
if (i == 3) {
System.out.println("");
@@ -37,15 +37,15 @@ public class aaa {
//System.exit(0);
switch(i) {
- case 1: System.out.println("1 not reachable"); break;
- case 2: System.out.println("2 not reachable"); break;
+ case 1: System.out.println("1 not reachable"); break;
+ case 2: System.out.println("2 not reachable"); break;
case 6: System.out.println("6 reachable"); break;
case 5: System.out.println("5 reachable"); break;
default: System.out.println("Default not reachable"); break;
}
int j = 0;
- for (; i < 5; i++, j++) {}
+ for (; i < 5; i++, j++) {}
}
void canBeStatic() {
@@ -57,7 +57,7 @@ public class aaa {
}
}
- for (int i = 0; i < null; i++) {
+ for (int i = 0; i < null; i++) {
a = i;
this.a = i;
}
@@ -68,8 +68,8 @@ public class aaa {
a = 4;
}
- if (a != null && a instanceof aaa) {
- if (true) {
+ if (a != null && a instanceof aaa) {
+ if (true) {
//a = new aaa();
}
}
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/CatchParameterCantBeNull.java b/java/java-tests/testData/inspection/dataFlow/ancient/CatchParameterCantBeNull.java
new file mode 100644
index 000000000000..41256e4bb9b4
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/CatchParameterCantBeNull.java
@@ -0,0 +1,16 @@
+import java.io.*;
+
+class Foo {
+ public void foo() {
+ try {
+ throw new EOFException("aaa");
+ } catch (Exception e) {
+ if (e == null) {
+ System.out.println("Can't be here.");
+ }
+ if (e instanceof FileNotFoundException) {
+ System.out.println("Can't be here.");
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/cce/src/Cce.java b/java/java-tests/testData/inspection/dataFlow/ancient/Cce.java
similarity index 65%
rename from java/java-tests/testData/inspection/dataFlow/cce/src/Cce.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/Cce.java
index a8bc96ef8b40..66ba02f3beac 100644
--- a/java/java-tests/testData/inspection/dataFlow/cce/src/Cce.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/Cce.java
@@ -9,7 +9,7 @@ public class Cce {
Object o = getObject();
if (o instanceof A) {
- B b = (B) o;
+ B b = (B) o;
}
}
diff --git a/java/java-tests/testData/inspection/dataFlow/CheckedExceptionDominance/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/CheckedExceptionDominance.java
similarity index 95%
rename from java/java-tests/testData/inspection/dataFlow/CheckedExceptionDominance/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/CheckedExceptionDominance.java
index 4f0586d30a96..7841e9dae79f 100644
--- a/java/java-tests/testData/inspection/dataFlow/CheckedExceptionDominance/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/CheckedExceptionDominance.java
@@ -1,3 +1,5 @@
+import java.util.Random;
+
public class CheckedExceptionDominance {
private static class CheckedException extends Exception {}
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/ConditionFalseAndNPE.java b/java/java-tests/testData/inspection/dataFlow/ancient/ConditionFalseAndNPE.java
new file mode 100644
index 000000000000..9c7e1518e9f8
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ConditionFalseAndNPE.java
@@ -0,0 +1,14 @@
+import org.jetbrains.annotations.Nullable;
+class Foo {
+ @Nullable Foo foo() {
+ return null;
+ }
+
+ public void bar() {
+ if (foo() != null &&
+ foo().foo() != null &&
+ foo().foo().foo() != null) {
+
+ }
+ }
+}
diff --git a/java/java-tests/testData/inspection/dataFlow/constantExpr/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/ConstantExpr.java
similarity index 57%
rename from java/java-tests/testData/inspection/dataFlow/constantExpr/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/ConstantExpr.java
index 4ec920579cdb..9e18928457b6 100644
--- a/java/java-tests/testData/inspection/dataFlow/constantExpr/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ConstantExpr.java
@@ -1,9 +1,9 @@
-public class Test {
+class Test {
private static final int CONST = 3/2 + 0*1;
public void foo() {
int i = 0;
int j = 2 + (CONST) - 6/2;
- if (i == j) {
+ if (i == j) {
}
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/ConstantsDifferentTypes.java b/java/java-tests/testData/inspection/dataFlow/ancient/ConstantsDifferentTypes.java
new file mode 100644
index 000000000000..75de20a75878
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ConstantsDifferentTypes.java
@@ -0,0 +1,19 @@
+class Test {
+ void f() {
+ Long L = 5L;
+ if (L == 5) {
+ ;
+ }
+
+ long l = 0;
+ if (l == 0f) {
+ ;
+ }
+
+ char c = 1;
+ if (c == 1L) {
+ ;
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/exceptionCFG/src/ExceptionCFG.java b/java/java-tests/testData/inspection/dataFlow/ancient/ExceptionCFG.java
similarity index 100%
rename from java/java-tests/testData/inspection/dataFlow/exceptionCFG/src/ExceptionCFG.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/ExceptionCFG.java
diff --git a/java/java-tests/testData/inspection/dataFlow/FieldsFlashing/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/FieldsFlashing.java
similarity index 92%
rename from java/java-tests/testData/inspection/dataFlow/FieldsFlashing/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/FieldsFlashing.java
index 943d9de9269f..888dd3b4b20a 100644
--- a/java/java-tests/testData/inspection/dataFlow/FieldsFlashing/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/FieldsFlashing.java
@@ -1,6 +1,6 @@
import org.jetbrains.annotations.*;
-public class TestNullableIntervening // See http://www.jetbrains.net/jira/browse/IDEA-2845
+class TestNullableIntervening
{
@Nullable Object obj;
@@ -15,7 +15,7 @@ public class TestNullableIntervening // See http://www.jetbrains.net/jira/brow
if (obj != null) {
// Method intervening, might change obj; should have warning (OK)
obj = foo();
- notnull(obj);
+ notnull(obj);
}
}
diff --git a/java/java-tests/testData/inspection/dataFlow/finalFields/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/FinalFields.java
similarity index 91%
rename from java/java-tests/testData/inspection/dataFlow/finalFields/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/FinalFields.java
index 5cc23723676b..089fa737b82a 100644
--- a/java/java-tests/testData/inspection/dataFlow/finalFields/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/FinalFields.java
@@ -1,6 +1,6 @@
import org.jetbrains.annotations.Nullable;
-public class Test {
+class Test {
@Nullable public final String o;
public Test(String q) { o = q; }
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/ForEachNPE.java b/java/java-tests/testData/inspection/dataFlow/ancient/ForEachNPE.java
new file mode 100644
index 000000000000..f21417d571f6
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ForEachNPE.java
@@ -0,0 +1,8 @@
+class Test {
+ public String foo(String[] path) {
+ if (path != null) return null;
+ for (String p: path) {}
+
+ return "";
+ }
+}
diff --git a/java/java-tests/testData/inspection/dataFlow/ForeachFlow/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/ForeachFlow.java
similarity index 93%
rename from java/java-tests/testData/inspection/dataFlow/ForeachFlow/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/ForeachFlow.java
index 90a54c34fdf9..0b3aa2412596 100644
--- a/java/java-tests/testData/inspection/dataFlow/ForeachFlow/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ForeachFlow.java
@@ -1,4 +1,4 @@
-public class Npe {
+class Npe {
Object foo(Object[] objs) {
boolean skip = true;
for (Object o : objs) {
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/GenericInstanceof.java b/java/java-tests/testData/inspection/dataFlow/ancient/GenericInstanceof.java
new file mode 100644
index 000000000000..870c1b90d141
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/GenericInstanceof.java
@@ -0,0 +1,12 @@
+class Generic {
+ Generic() {}
+}
+
+class Test {
+ void foo () {
+ Generic g = new Generic ();
+ if (g instanceof Generic) {
+ return;
+ }
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV10489/src/IDEADEV10489.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV10489.java
similarity index 61%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV10489/src/IDEADEV10489.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV10489.java
index ee41e588dd3e..667e0afe1d0d 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV10489/src/IDEADEV10489.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV10489.java
@@ -5,9 +5,9 @@ class IDEADEV10489 {
String s = getS();
if (s != null) s.length();
if (foo()) {
- int[] i1 = new int [s.length()];
+ int[] i1 = new int [s.length()];
} else if (foo()) {
- int[] i2 = new int [] {s.length()};
+ int[] i2 = new int [] {s.length()};
} else if (foo()) {
int[][] i3 = new int [(s = "").length()][s.length()];
} else{
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV13153/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV13153.java
similarity index 61%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV13153/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV13153.java
index 2c91be5c9400..b299aa83f9a7 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV13153/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV13153.java
@@ -6,7 +6,7 @@ class Test {
void foo() {
String[] data = new String[] {"abs", "def"};
for (@NotNull String foo: data) {
- assert foo != null; // Condition always true
+ assert foo != null; // Condition always true
}
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV13156/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV13156.java
similarity index 90%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV13156/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV13156.java
index f965875f6fd8..9bbf901549fd 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV13156/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV13156.java
@@ -1,4 +1,5 @@
import org.jetbrains.annotations.*;
+import java.io.IOException;
class Foo {
public void x() throws IOException {
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV15583/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV15583.java
similarity index 56%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV15583/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV15583.java
index c21366281fa4..7a4e35d5db50 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV15583/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV15583.java
@@ -11,11 +11,11 @@ class Test {
void test(Collection foos) {
Test t = new Test();
- final int i = t.getString("foo").length();
+ final int i = t.getString("foo").length();
System.out.println("i = " + i);
for (String foo : foos) {
- final int j = t.getString(foo).length();
+ final int j = t.getString(foo).length();
System.out.println("i = " + j);
}
}
@@ -24,7 +24,7 @@ class Test {
Test t = new Test();
for (Iterator iterator = foos.iterator(); iterator.hasNext();) {
- final int i = getString(iterator.next()).length();
+ final int i = getString(iterator.next()).length();
System.out.println("i = " + i);
}
}
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV1575.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV1575.java
new file mode 100644
index 000000000000..13a81385eb47
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV1575.java
@@ -0,0 +1,6 @@
+class TestGenericsInstanceof {
+ public void foo(Object o) {
+ boolean test = true;
+ test &= o.hashCode() > 3;
+ }
+}
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV2605.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV2605.java
new file mode 100644
index 000000000000..7339d4c5f677
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV2605.java
@@ -0,0 +1,72 @@
+public class AndAssign {
+ public void foo(boolean result, Object acc) {
+ result &= verify(result ? acc : null);
+ }
+
+ public boolean verify(Object o) {
+ System.out.println(o);
+ return true;
+ }
+
+ public void positives() {
+ boolean t = true;
+ boolean f = false;
+ boolean r;
+
+ r = t;
+ r &= t; // Always true
+
+ if (r) { // Always true
+ System.out.println("foo");
+ }
+
+ r = t;
+ r &= f; // Always true
+
+ if (r) { // Always false
+ System.out.println("foo");
+ }
+
+ r = f;
+ r &= t; // Always false
+
+ if (r) { // Always false
+ System.out.println("foo");
+ }
+
+ r = f;
+ r &= f; // Always false
+
+ if (r) { // Always false
+ System.out.println("foo");
+ }
+
+ r = t;
+ r |= t // Always true
+
+ if (r) { // Always true
+ System.out.println("foo");
+ }
+
+ r = t;
+ r |= f // Always true
+
+ if (r) { // Always true
+ System.out.println("foo");
+ }
+
+ r = f;
+ r |= t // Always false
+
+ if (r) { // Always true
+ System.out.println("foo");
+ }
+
+ r = f;
+ r |= f // Always false
+
+ if (r) { // Always false
+ System.out.println("foo");
+ }
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518/src/NoWarnings.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV74518.java
similarity index 68%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV74518/src/NoWarnings.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV74518.java
index 68e4c52e32c5..770e44cf289f 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518/src/NoWarnings.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV74518.java
@@ -1,12 +1,12 @@
import java.util.*;
-public class NoWarnings {
+class NoWarnings {
public void f() {
int i = 1;
boolean b = true;
while (true) {
- if (b && i == 1) {
+ if (b && i == 1) {
b = false;
}
else {
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518_2/src/Sample.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV74518_2.java
similarity index 88%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV74518_2/src/Sample.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV74518_2.java
index 33f8f7f68ab4..956880f47990 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV74518_2/src/Sample.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV74518_2.java
@@ -1,4 +1,4 @@
-public abstract class NoWarnings {
+abstract class NoWarnings {
public void f() {
boolean A = false;
boolean B = false;
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV77819/src/NoWarnings.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV77819.java
similarity index 90%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV77819/src/NoWarnings.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV77819.java
index 56b1576cc64b..d4af7c642b75 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV77819/src/NoWarnings.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV77819.java
@@ -1,6 +1,6 @@
import org.jetbrains.annotations.*;
-public class Test {
+class Test {
public @Nullable String foo;
public void test() {
diff --git a/java/java-tests/testData/inspection/dataFlow/IDEADEV78370/src/NoWarnings.java b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV78370.java
similarity index 86%
rename from java/java-tests/testData/inspection/dataFlow/IDEADEV78370/src/NoWarnings.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV78370.java
index ace2d06e1df9..20e8d040a737 100644
--- a/java/java-tests/testData/inspection/dataFlow/IDEADEV78370/src/NoWarnings.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/IDEADEV78370.java
@@ -1,6 +1,6 @@
import org.jetbrains.annotations.Nullable;
-public class NoWarnings {
+class NoWarnings {
int f(@Nullable String value) {
value = value == null ? "" : value;
return value.hashCode();
diff --git a/java/java-tests/testData/inspection/dataFlow/inst/src/Inst.java b/java/java-tests/testData/inspection/dataFlow/ancient/Inst.java
similarity index 73%
rename from java/java-tests/testData/inspection/dataFlow/inst/src/Inst.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/Inst.java
index 255b760cf345..09841d30f823 100644
--- a/java/java-tests/testData/inspection/dataFlow/inst/src/Inst.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/Inst.java
@@ -13,7 +13,7 @@ public class Inst {
if (a instanceof B) {
A aa =(A) a;
- if (a instanceof A) {
+ if (a instanceof A) {
System.out.println("HeHe");
}
System.out.println(aa);
@@ -22,7 +22,7 @@ public class Inst {
public void x1() {
Object a = new Object();
- if (a instanceof B) {
+ if (a instanceof B) {
A aa =(A) a;
if (a instanceof A) {
System.out.println("HeHe");
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/Instanceof.java b/java/java-tests/testData/inspection/dataFlow/ancient/Instanceof.java
new file mode 100644
index 000000000000..a8ef05d4b6e4
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/Instanceof.java
@@ -0,0 +1,14 @@
+class A {
+}
+
+
+class B extends A {
+}
+
+class C {
+ void foo(Object o) {
+ if (o instanceof A || o instanceof B) {
+ System.out.println("Something");
+ }
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullArray/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullArray.java
similarity index 90%
rename from java/java-tests/testData/inspection/dataFlow/NotNullArray/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NotNullArray.java
index a9671554c417..f00569e06fbd 100644
--- a/java/java-tests/testData/inspection/dataFlow/NotNullArray/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullArray.java
@@ -1,7 +1,7 @@
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.NotNull;
-public class TestNPEafterNew {
+class TestNPEafterNew {
@Nullable Object[] arr;
void test(@NotNull Object[] notnull) {
arr = notnull;
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullLocalVariable/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullLocalVariable.java
similarity index 91%
rename from java/java-tests/testData/inspection/dataFlow/NotNullLocalVariable/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NotNullLocalVariable.java
index c933f5baead4..d1dd72d6ace2 100644
--- a/java/java-tests/testData/inspection/dataFlow/NotNullLocalVariable/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullLocalVariable.java
@@ -1,7 +1,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
void bar() {
final @NotNull Object o = call();
if (o == null) {}
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullable/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullable.java
similarity index 52%
rename from java/java-tests/testData/inspection/dataFlow/NotNullable/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NotNullable.java
index 0553b5309fcf..8a60195a2d63 100644
--- a/java/java-tests/testData/inspection/dataFlow/NotNullable/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullable.java
@@ -1,12 +1,12 @@
import org.jetbrains.annotations.NotNull;
-public class Npe {
+class Npe {
@NotNull Object foo() {
return new Object();
}
void bar() {
Object o = foo();
- if (o == null) System.out.println("Can't be");
+ if (o == null) System.out.println("Can't be");
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/NotNullableParameter.java b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullableParameter.java
new file mode 100644
index 000000000000..48b4ffcf9ab3
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullableParameter.java
@@ -0,0 +1,11 @@
+import org.jetbrains.annotations.NotNull;
+
+class Npe {
+ Object foo(@NotNull Object o) {
+ return o;
+ }
+
+ void bar() {
+ Object o = foo(null); // null should not be passed here.
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter2/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullableParameter2.java
similarity index 57%
rename from java/java-tests/testData/inspection/dataFlow/NotNullableParameter2/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NotNullableParameter2.java
index 820ac0904f32..051a0bd34cd5 100644
--- a/java/java-tests/testData/inspection/dataFlow/NotNullableParameter2/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NotNullableParameter2.java
@@ -1,8 +1,8 @@
import org.jetbrains.annotations.NotNull;
-public class Npe {
+class Npe {
Object foo(@NotNull Object o) {
- if (o == null) {
+ if (o == null) {
// Should not get there.
}
return o;
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/Npe1.java b/java/java-tests/testData/inspection/dataFlow/ancient/Npe1.java
new file mode 100644
index 000000000000..91114130d54a
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/Npe1.java
@@ -0,0 +1,9 @@
+public class Npe {
+ public void a(Object o) {
+ if (o != null) {
+ // Do something
+ }
+
+ o.equals();
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableThroughCast/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/Nullable.java
similarity index 60%
rename from java/java-tests/testData/inspection/dataFlow/NullableThroughCast/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/Nullable.java
index fbaf2ad449c5..4396d736749c 100644
--- a/java/java-tests/testData/inspection/dataFlow/NullableThroughCast/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/Nullable.java
@@ -1,7 +1,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
Object foo(@NotNull Object o) {
return o;
}
@@ -11,6 +11,6 @@ public class Npe {
}
void bar() {
- Object o = foo((Object)nullable()); // null should not be passed here.
+ Object o = foo(nullable()); // null should not be passed here.
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/NullableField.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableField.java
new file mode 100644
index 000000000000..ffd229ef111f
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableField.java
@@ -0,0 +1,8 @@
+class Test {
+ public String s;
+
+ public void foo() {
+ s = null;
+ boolean b = s.equals(s);
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableLocalVariable/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableLocalVariable.java
similarity index 60%
rename from java/java-tests/testData/inspection/dataFlow/NullableLocalVariable/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NullableLocalVariable.java
index ce2328560e2c..d088a8dc4521 100644
--- a/java/java-tests/testData/inspection/dataFlow/NullableLocalVariable/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableLocalVariable.java
@@ -1,10 +1,10 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
void bar() {
final @Nullable Object o = foo();
- o.hashCode(); // NPE
+ o.hashCode(); // NPE
}
@Nullable Object foo() {
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableProblemThroughCast/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableProblemThroughCast.java
similarity index 64%
rename from java/java-tests/testData/inspection/dataFlow/NullableProblemThroughCast/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NullableProblemThroughCast.java
index 5937591e0b70..45a88cf59433 100644
--- a/java/java-tests/testData/inspection/dataFlow/NullableProblemThroughCast/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableProblemThroughCast.java
@@ -1,9 +1,9 @@
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
void foo(@Nullable SomeInterface x) {
- ((SomeInterfaceImpl)x).bar();
+ ((SomeInterfaceImpl)x).bar();
}
interface SomeInterface {
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableReturn/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableReturn.java
similarity index 51%
rename from java/java-tests/testData/inspection/dataFlow/NullableReturn/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NullableReturn.java
index 62806a05fc38..cf79382f1b03 100644
--- a/java/java-tests/testData/inspection/dataFlow/NullableReturn/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableReturn.java
@@ -1,8 +1,8 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
@NotNull Object foo() {
- return null;
+ return null;
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableReturn1/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableReturn1.java
similarity index 54%
rename from java/java-tests/testData/inspection/dataFlow/NullableReturn1/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NullableReturn1.java
index 8a73cd2faac2..5936f96e8d9f 100644
--- a/java/java-tests/testData/inspection/dataFlow/NullableReturn1/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableReturn1.java
@@ -5,6 +5,6 @@ class Test {
@NotNull Object foo() {
Object res;
res = null;
- return res;
+ return res;
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/Nullable/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughCast.java
similarity index 58%
rename from java/java-tests/testData/inspection/dataFlow/Nullable/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughCast.java
index 1d7166414441..3dc4d6c1377c 100644
--- a/java/java-tests/testData/inspection/dataFlow/Nullable/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughCast.java
@@ -1,7 +1,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
Object foo(@NotNull Object o) {
return o;
}
@@ -11,6 +11,6 @@ public class Npe {
}
void bar() {
- Object o = foo(nullable()); // null should not be passed here.
+ Object o = foo((Object)nullable()); // null should not be passed here.
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariable/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughVariable.java
similarity index 68%
rename from java/java-tests/testData/inspection/dataFlow/NullableThroughVariable/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughVariable.java
index 817a4c2b479d..7225110f7774 100644
--- a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariable/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughVariable.java
@@ -1,7 +1,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
Object foo(@NotNull Object o) {
return o;
}
@@ -12,6 +12,6 @@ public class Npe {
void bar() {
Object o = nullable();
- foo(o); // null should not be passed here
+ foo(o); // null should not be passed here
}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariableShouldNotBeReported/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughVariableShouldNotBeReported.java
similarity index 94%
rename from java/java-tests/testData/inspection/dataFlow/NullableThroughVariableShouldNotBeReported/src/Npe.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughVariableShouldNotBeReported.java
index 77b1222d108e..9dea0e2bfda8 100644
--- a/java/java-tests/testData/inspection/dataFlow/NullableThroughVariableShouldNotBeReported/src/Npe.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/NullableThroughVariableShouldNotBeReported.java
@@ -1,7 +1,7 @@
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class Npe {
+class Npe {
Object foo(@NotNull Object o) {
return o;
}
diff --git a/java/java-tests/testData/inspection/dataFlow/orBug/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/OrBug.java
similarity index 86%
rename from java/java-tests/testData/inspection/dataFlow/orBug/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/OrBug.java
index b89e24d343e0..eece99fc2c3f 100644
--- a/java/java-tests/testData/inspection/dataFlow/orBug/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/OrBug.java
@@ -1,4 +1,4 @@
-public class Test {
+class Test {
public boolean abc(Object o1, Object o2) {
if (o1 == null || o2 == null) {
return o1 == o2;
diff --git a/java/java-tests/testData/inspection/dataFlow/PlusOnStrings/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/PlusOnStrings.java
similarity index 57%
rename from java/java-tests/testData/inspection/dataFlow/PlusOnStrings/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/PlusOnStrings.java
index 59ea74ef39b6..cd485005d40b 100644
--- a/java/java-tests/testData/inspection/dataFlow/PlusOnStrings/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/PlusOnStrings.java
@@ -1,9 +1,9 @@
import java.io.*;
-public class Foo {
+class Foo {
public void foo(Object a, String b) {
String c = a + b;
- if (c == null) {
+ if (c == null) {
System.out.println("Can't be!");
}
}
diff --git a/java/java-tests/testData/inspection/dataFlow/RegressionByPti/src/NoWarnings.java b/java/java-tests/testData/inspection/dataFlow/ancient/RegressionByPti.java
similarity index 97%
rename from java/java-tests/testData/inspection/dataFlow/RegressionByPti/src/NoWarnings.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/RegressionByPti.java
index ce33c6282da4..82d0df0db92e 100644
--- a/java/java-tests/testData/inspection/dataFlow/RegressionByPti/src/NoWarnings.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/RegressionByPti.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-public class AAA {
+class AAA {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/SCR13626.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR13626.java
new file mode 100644
index 000000000000..add26df074f4
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SCR13626.java
@@ -0,0 +1,16 @@
+class Test
+{
+class Test
+{
+ public void x()
+ {
+ boolean a = false;
+ boolean b = true;
+
+ do
+ {
+ a = true;
+ }
+ while( !a && b );
+ }
+}}
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR13871/src/Aaa.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR13871.java
similarity index 92%
rename from java/java-tests/testData/inspection/dataFlow/SCR13871/src/Aaa.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/SCR13871.java
index 793f5314fc66..f7b369febcd7 100644
--- a/java/java-tests/testData/inspection/dataFlow/SCR13871/src/Aaa.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SCR13871.java
@@ -1,4 +1,4 @@
-public class Aaa {
+class Aaa {
Object getObject() {
return null;
}
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR14314/src/Finally.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR14314.java
similarity index 67%
rename from java/java-tests/testData/inspection/dataFlow/SCR14314/src/Finally.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/SCR14314.java
index 2d8b04865101..75bb75c14298 100644
--- a/java/java-tests/testData/inspection/dataFlow/SCR14314/src/Finally.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SCR14314.java
@@ -6,19 +6,19 @@ public class Finally {
if (o == null) return;
}
finally {
- System.out.println(o.hashCode()); // Error here.
+ System.out.println(o.hashCode()); // Error here.
}
System.out.println(o.hashCode()); // No error here.
}
- public void bar(Object o) {
+ public void bar(Object o) throws IOException {
boolean rearrangeChildren = false;
Object typePattern;
try {
typePattern = parseTypePattern();
} catch (FileNotFoundException followsFailure) {
if (o != null) {
- typePattern = followsFailure.getParsingResult();
+ typePattern = followsFailure.getParsingResult();
} else {
throw followsFailure;
}
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/SCR14819.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR14819.java
new file mode 100644
index 000000000000..0e90d33fe3a9
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SCR14819.java
@@ -0,0 +1,18 @@
+public class Test {
+ public Test foo(Test t) {
+ if (t instanceof Test) { // redundant instanceof error here. t can be null
+ foo(null);
+ }
+ return null;
+ }
+ public Object bar(Test t) {
+ if (t == null) return;
+ if (t instanceof Test) { // always true error here. t can't be null
+ foo(null);
+ }
+
+ if (bar(null) instanceof Test) return null; // no error here.
+ if (foo(null) instanceof Test) return null; // redundant instanceof error here. foo(null) can be null
+ return null;
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/SCR15162.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR15162.java
new file mode 100644
index 000000000000..6d34620e0e55
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SCR15162.java
@@ -0,0 +1,9 @@
+class NullTest {
+ int m;
+ void f() {};
+ public void x() {
+ NullTest t = null;
+ t.m = 12;
+ t.f();
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR15406/src/CodeFlowTest.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR15406.java
similarity index 95%
rename from java/java-tests/testData/inspection/dataFlow/SCR15406/src/CodeFlowTest.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/SCR15406.java
index f2953d7d90a3..b17fcab8309d 100644
--- a/java/java-tests/testData/inspection/dataFlow/SCR15406/src/CodeFlowTest.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SCR15406.java
@@ -1,6 +1,6 @@
import org.jetbrains.annotations.NotNull;
-public class CodeFlowTest {
+class CodeFlowTest {
public static void main (String[] args) {
String string;
Exception exception;
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR18186/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR18186.java
similarity index 68%
rename from java/java-tests/testData/inspection/dataFlow/SCR18186/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/SCR18186.java
index cbea397f4f22..69299bfdce6a 100644
--- a/java/java-tests/testData/inspection/dataFlow/SCR18186/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SCR18186.java
@@ -1,10 +1,7 @@
import java.sql.*;
-public class Test {
+abstract class DBStore {
- /**
- * Lädt den Datensatz.
- */
private boolean loadValues(Transaction transaction) {
try {
boolean res=false;
@@ -58,4 +55,31 @@ public class Test {
}
}
+ void loadOrdered(ResultSet rs) {}
+ void loadBlobs(Transaction t) throws SQLException {}
+ void fillPHPK(Statement st, Transaction t) throws SQLException {}
+ int loadsCount;
+ abstract PreparedStatement stmtGetDirty(Object obj);
+ abstract PreparedStatement stmtGetClean(Object obj);
+ void handleSQLException(SQLException ex, Statement st) {}
+
+ static class Dbg {
+ static void pw(Object obj) {}
+ }
+
+ static abstract class DBManager {
+ abstract DBStore dbstore();
+ abstract boolean accessCommitBug();
+ static void resetThread(Statement statement) {};
+ }
+
+ static abstract class Transaction {
+ DBManager dbmanager;
+ abstract DBStore dbstore();
+ abstract boolean dirty();
+ }
+
+ static class ExceptionBag extends RuntimeException {
+ ExceptionBag(Throwable cause) {}
+ }
}
diff --git a/java/java-tests/testData/inspection/dataFlow/SCR39950/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/SCR39950.java
similarity index 100%
rename from java/java-tests/testData/inspection/dataFlow/SCR39950/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/SCR39950.java
diff --git a/java/java-tests/testData/inspection/dataFlow/scrIDEA1/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/ScrIDEA1.java
similarity index 100%
rename from java/java-tests/testData/inspection/dataFlow/scrIDEA1/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/ScrIDEA1.java
diff --git a/java/java-tests/testData/inspection/dataFlow/StrangeArrayIndexOutOfBounds/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/StrangeArrayIndexOutOfBounds.java
similarity index 68%
rename from java/java-tests/testData/inspection/dataFlow/StrangeArrayIndexOutOfBounds/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/StrangeArrayIndexOutOfBounds.java
index ac03eea54355..7a621451df6d 100644
--- a/java/java-tests/testData/inspection/dataFlow/StrangeArrayIndexOutOfBounds/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/StrangeArrayIndexOutOfBounds.java
@@ -1,5 +1,8 @@
-public class Test {
- public void foo() {
+import java.util.*;
+import java.io.*;
+
+class Test {
+ public void foo(String propertiesFile) {
Properties properties = new Properties();
InputStream inStream = null;
try {
@@ -20,15 +23,18 @@ public class Test {
System.exit(-1);
}
catch (IOException e) {
- LOG.error(e.getMessage(), e);
+ LOG.error(e.getMessage(), e);
} finally {
if (inStream != null) {
try {
inStream.close();
} catch (IOException e) {
- LOG.info(e);
+ LOG.info(e);
}
}
}
}
+
+ void setValue(String a, String b) {}
+ void removeCustomPrefixFromProperties(String file) {}
}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/SwitchEnumCases/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/SwitchEnumCases.java
similarity index 90%
rename from java/java-tests/testData/inspection/dataFlow/SwitchEnumCases/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/SwitchEnumCases.java
index db2b055df957..c0e82919b378 100644
--- a/java/java-tests/testData/inspection/dataFlow/SwitchEnumCases/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SwitchEnumCases.java
@@ -1,4 +1,4 @@
-public class Test {
+class Test {
void withDefaultWithoutBreak(MyEnum e) {
String foo = null;
switch (e) {
@@ -69,7 +69,7 @@ public class Test {
case FOO:
foo = "foo";
}
- int l = foo.length();
+ int l = foo.length();
}
}
diff --git a/java/java-tests/testData/inspection/dataFlow/SwitchQualifierProducesNPE/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/SwitchQualifierProducesNPE.java
similarity index 56%
rename from java/java-tests/testData/inspection/dataFlow/SwitchQualifierProducesNPE/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/SwitchQualifierProducesNPE.java
index 20105d064c37..349a7eca4b2f 100644
--- a/java/java-tests/testData/inspection/dataFlow/SwitchQualifierProducesNPE/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/SwitchQualifierProducesNPE.java
@@ -1,13 +1,13 @@
import org.jetbrains.annotations.Nullable;
-public class Test {
+class Test {
enum E { A, B }
@Nullable
static E getE() { return null; }
public static void main(String[] args) {
- switch (getE()) { // <<< should be highlighted as potential NPE
+ switch (getE()) { // <<< should be highlighted as potential NPE
case A:
case B:
}
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/ThisInstanceof.java b/java/java-tests/testData/inspection/dataFlow/ancient/ThisInstanceof.java
new file mode 100644
index 000000000000..1a6d702ae256
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/ThisInstanceof.java
@@ -0,0 +1,5 @@
+class Test {
+ public void foo() {
+ boolean b = this instanceof Object;
+ }
+}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/ancient/UnboxingNPE.java b/java/java-tests/testData/inspection/dataFlow/ancient/UnboxingNPE.java
new file mode 100644
index 000000000000..cafedb893fce
--- /dev/null
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/UnboxingNPE.java
@@ -0,0 +1,106 @@
+class Auto {
+ public Auto(int k) {
+ }
+
+ int f(int k, Auto other) {
+ {
+ Integer i = null;
+ if (i>0) {
+ }
+ }
+
+ {
+ Integer i = null;
+ int i1 = (int) i;
+ }
+ {
+ Integer i = null;
+ int i1 = i+i;
+ }
+ {
+ Integer i = null;
+ int i1 = i++;
+ }
+ {
+ Integer i = null;
+ Integer i1 = i++;
+ }
+ {
+ Integer i = null;
+ int[] ia = new int[0];
+ int i2 = ia[i];
+ }
+ {
+ Integer i = null;
+ int[] i2 = {i};
+ }
+ {
+ Boolean i = null;
+ boolean i2 = this==other;
+ i2 &= i;
+ }
+ {
+ Boolean i = null;
+ boolean i2 = this==other;
+ i2 |= i;
+ }
+ {
+ Boolean i = null;
+ boolean i2 = this==other;
+ i2 = !i;
+ }
+
+ {
+ Integer i = null;
+ if (this==other) {
+ return i;
+ }
+ }
+ {
+ Integer i = null;
+ switch(i) {
+ case 0:
+ }
+ }
+ {
+ Boolean i = null;
+ boolean i2 = i && i;
+ }
+ {
+ Boolean i = null;
+ boolean i2 = i | i;
+ }
+ {
+ Boolean i = null;
+ boolean i2 = true ^ i;
+ }
+ {
+ Boolean i = null;
+ boolean i2 = i ? true : false;
+ }
+ {
+ Integer i = null;
+ f(i);
+ }
+ {
+ Integer i = null;
+ new Auto(i);
+ }
+ {
+ Integer i = null;
+ i++;
+ }
+ {
+ Integer i = null;
+ --i;
+ }
+ {
+ Boolean i = null;
+ Boolean i2 = !i;
+ }
+
+ return 0;
+ }
+
+ void f(int i) {}
+}
diff --git a/java/java-tests/testData/inspection/dataFlow/wrongEqualTypes/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/WrongEqualTypes.java
similarity index 87%
rename from java/java-tests/testData/inspection/dataFlow/wrongEqualTypes/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/WrongEqualTypes.java
index e514b19a236e..835a261aba96 100644
--- a/java/java-tests/testData/inspection/dataFlow/wrongEqualTypes/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/WrongEqualTypes.java
@@ -1,6 +1,6 @@
import java.util.Calendar;
-public class Test {
+class Test {
public void foo(Object c) {
if (c instanceof Calendar) return;
if (c == Calendar.getInstance()) {}
diff --git a/java/java-tests/testData/inspection/dataFlow/xor/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/Xor.java
similarity index 89%
rename from java/java-tests/testData/inspection/dataFlow/xor/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/Xor.java
index a4d45845a386..7229d00818fe 100644
--- a/java/java-tests/testData/inspection/dataFlow/xor/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/Xor.java
@@ -1,4 +1,4 @@
-public class Test {
+class Test {
public static void test(final Object a, final Object b) {
if ((a == null ^ b == null)
|| (a != null && a.hashCode() != b.hashCode())) {
diff --git a/java/java-tests/testData/inspection/dataFlow/YoleBug/src/Test.java b/java/java-tests/testData/inspection/dataFlow/ancient/YoleBug.java
similarity index 51%
rename from java/java-tests/testData/inspection/dataFlow/YoleBug/src/Test.java
rename to java/java-tests/testData/inspection/dataFlow/ancient/YoleBug.java
index 0e837567413d..c014ac9f4f7e 100644
--- a/java/java-tests/testData/inspection/dataFlow/YoleBug/src/Test.java
+++ b/java/java-tests/testData/inspection/dataFlow/ancient/YoleBug.java
@@ -1,11 +1,11 @@
import org.jetbrains.annotations.*;
-public class Test {
+class Test {
@NotNull
public Object foo() {
return new Object();
}
public void qqq() {
- int c = foo() != null ? foo().hashCode() : 0;
+ int c = foo() != null ? foo().hashCode() : 0;
}
}
diff --git a/java/java-tests/testData/inspection/dataFlow/andEq/expected.xml b/java/java-tests/testData/inspection/dataFlow/andEq/expected.xml
deleted file mode 100644
index 80ebc9e6da49..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/andEq/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 4
- r is always true
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/andEq/src/Test.java b/java/java-tests/testData/inspection/dataFlow/andEq/src/Test.java
deleted file mode 100644
index 8919f1582c7a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/andEq/src/Test.java
+++ /dev/null
@@ -1,8 +0,0 @@
-public class Test {
- public void foo(boolean x, boolean y, boolean z) {
- boolean r = true;
- r &= x;
- r &= y;
- r &= z;
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/autoboxing/expected.xml b/java/java-tests/testData/inspection/dataFlow/autoboxing/expected.xml
deleted file mode 100644
index 47d68e51cbef..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/autoboxing/expected.xml
+++ /dev/null
@@ -1,345 +0,0 @@
-
-
-
- Test.java
- 5
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>i==j</code> is always <code>true</code>
-
-
-
-
- Test.java
- 9
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>i==j2</code> is always <code>false</code>
-
-
-
-
- Test.java
- 12
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>i==0</code> is always <code>true</code>
-
-
-
-
- Test.java
- 15
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>i==1</code> is always <code>false</code>
-
-
-
- Test.java
- 22
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>big1==333</code> is always <code>true</code>
-
-
-
-
-
- Test.java
- 24
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>333 == big2</code> is always <code>true</code>
-
-
-
-
-
- Test.java
- 26
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>333==333</code> is always <code>true</code>
-
-
-
-
-
- Test.java
- 28
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>big1==big2</code> is always <code>false</code>
-
-
-
-
-
- Test.java
- 32
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>prim==big2</code> is always <code>true</code>
-
-
-
-
-
- Test.java
- 36
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>big1 == 0</code> is always <code>false</code>
-
-
-
-
-
- Test.java
- 39
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>big1 == 332</code> is always <code>false</code>
-
-
-
-
-
- Test.java
- 44
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>c==1234</code> is always <code>true</code>
-
-
-
-
-
- Test.java
- 47
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>c==124</code> is always <code>false</code>
-
-
-
-
-
- Test.java
- 51
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>c==1234</code> is always <code>false</code>
-
-
-
-
-
- Test.java
- 54
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>c==c</code> is always <code>true</code>
-
-
-
-
-
- Test.java
- 58
-
- void f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Condition <code>c==c2</code> is always <code>true</code>
-
-
-
- Test.java
- 73
-
- void canBeStatic(int x)
- canBeStatic(int)
- <default>
-
- aaa
- aaa
-
-
- Constant conditions & exceptions
- Condition <code>a == 5</code> is always <code>false</code>
-
-
- Test.java
- 83
-
- void f(int p)
- f(int)
- <default>
-
- aaa
- aaa
-
-
- Constant conditions & exceptions
- Condition <code>i1 == i2</code> is always <code>true</code>
-
-
-
-
-
- Test.java
- 107
- 'r2==r3' is always false
-
-
-
-
-
-
-
- Test.java
- 116
- 'fr2==fr3' is always false
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/autoboxing/src/Test.java b/java/java-tests/testData/inspection/dataFlow/autoboxing/src/Test.java
deleted file mode 100644
index 38139de95b8c..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/autoboxing/src/Test.java
+++ /dev/null
@@ -1,119 +0,0 @@
-public class Auto {
- void f(int k) {
- Integer i = 0;
- Integer j=0;
- if (i==j) {
-
- }
- Integer j2 = 1;
- if (i==j2) {
-
- }
- if (i==0) {
-
- }
- if (i==1) {
-
- }
-
- //////////////////
- Integer big1 = 333;
- Integer big2= 333;
- if (big1==333) {
- }
- if (333 == big2) {
- }
- if (333==333) {
- }
- if (big1==big2) {
-
- }
- int prim = big1;
- if (prim==big2) {
-
- }
-
- if (big1 == 0) {
-
- }
- if (big1 == 332) {
-
- }
-
- Character c = 1234;
- if (c==1234) {
-
- }
- if (c==124) {
-
- }
- c = 1;
- if (c==1234) {
-
- }
- if (c==c) {
-
- }
- Character c2 = 1;
- if (c==c2) {
-
- }
- }
-}
-class aaa {
- int a;
- int b;
- void canBeStatic(int x) {
- for (int i=0;i<10;i++) {
- a = i;
- }
-
- a = 4;
-
- if (a == 5) {
- }
- }
-
-
- void f(int p) {
- {
- int i = 1;
- Integer i1 = i;
- Integer i2 = i;
- if (i1 == i2) {
-
- }
- }
- {
- int i = p;
- Integer i1 = i;
- Integer i2 = i;
- if (i1 == i2) {
-
- }
- }
- }
-
-}
-class UsesDoubleAndFloat {
- void f() {
- double dd = 10.0;
- Double r = dd;
- Double r1 = dd;
- System.out.println("(r==r1) is "+(r==r1));
-
- Double r2 = 10.0;
- Double r3 = 10.0;
- System.out.println("(r2==r3) is "+(r2==r3));
-
- float fd = 10.0f;
- Float fr = fd;
- Float fr1 = fd;
- System.out.println("(r==r1) is "+(fr==fr1));
-
- Float fr2 = 10.0f;
- Float fr3 = 10.0f;
- System.out.println("(r2==r3) is "+(fr2==fr3));
-
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/caseAndNpe/expected.xml b/java/java-tests/testData/inspection/dataFlow/caseAndNpe/expected.xml
deleted file mode 100644
index b2c05abfdce5..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/caseAndNpe/expected.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
- CaseAndNpe.java
- 71
- Condition 'a != null' is always true
-
-
- CaseAndNpe.java
- 18
- Method invocation 'equals' may produce NullPointerException
-
-
- CaseAndNpe.java
- 40
- Switch label 'case 1:' is unreachable
-
-
- CaseAndNpe.java
- 41
- Switch label 'case 2:' is unreachable
-
-
- CaseAndNpe.java
- 48
- Condition <code>i < 5</code> is always <code>false</code>
-
-
- CaseAndNpe.java
- 72
- Condition is always true
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/cce/expected.xml b/java/java-tests/testData/inspection/dataFlow/cce/expected.xml
deleted file mode 100644
index 5567d5d6f644..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/cce/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Cce.java
- 12
- may produce ClassCastException
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/constantExpr/expected.xml b/java/java-tests/testData/inspection/dataFlow/constantExpr/expected.xml
deleted file mode 100644
index 8e169325e53b..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/constantExpr/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 6
- Condition 'i == j' is always true
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/exceptionCFG/expected.xml b/java/java-tests/testData/inspection/dataFlow/exceptionCFG/expected.xml
deleted file mode 100644
index 9ac879d78616..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/exceptionCFG/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/finalFields/expected.xml b/java/java-tests/testData/inspection/dataFlow/finalFields/expected.xml
deleted file mode 100644
index 796a315e49f5..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/finalFields/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/inst/expected.xml b/java/java-tests/testData/inspection/dataFlow/inst/expected.xml
deleted file mode 100644
index 288b8f510cf0..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/inst/expected.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
- Inst.java
- 16
- Condition 'a instanceof A' is always true
-
-
- Inst.java
- 25
- Condition 'a instanceof B' is always false
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/npe1/expected.xml b/java/java-tests/testData/inspection/dataFlow/npe1/expected.xml
deleted file mode 100644
index 2ac370b11daa..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/npe1/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Npe.java
- 7
- Method invocation 'equals' produce NullPointerException
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/npe1/src/Npe.java b/java/java-tests/testData/inspection/dataFlow/npe1/src/Npe.java
deleted file mode 100644
index 10152e0516ea..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/npe1/src/Npe.java
+++ /dev/null
@@ -1,9 +0,0 @@
-public class Npe {
- public void a(Object o) {
- if (o != null) {
- // Do something
- }
-
- o.equals();
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/nullableField/expected.xml b/java/java-tests/testData/inspection/dataFlow/nullableField/expected.xml
deleted file mode 100644
index 834a81ab6230..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/nullableField/expected.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
- Test.java
- 6
- 'equals' will produce NullPointerException
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/nullableField/src/Test.java b/java/java-tests/testData/inspection/dataFlow/nullableField/src/Test.java
deleted file mode 100644
index ddc0dbec52a1..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/nullableField/src/Test.java
+++ /dev/null
@@ -1,8 +0,0 @@
-public class Test {
- public String s;
-
- public void foo() {
- s = null;
- boolean b = s.equals(s);
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/orBug/expected.xml b/java/java-tests/testData/inspection/dataFlow/orBug/expected.xml
deleted file mode 100644
index ec272abeaa3a..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/orBug/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/scrIDEA1/expected.xml b/java/java-tests/testData/inspection/dataFlow/scrIDEA1/expected.xml
deleted file mode 100644
index 0953dd7d08c6..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/scrIDEA1/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/thisInstanceof/expected.xml b/java/java-tests/testData/inspection/dataFlow/thisInstanceof/expected.xml
deleted file mode 100644
index 6f6f49641204..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/thisInstanceof/expected.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
- Test.java
- 3
- 'this instanceof Object' is always true
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/thisInstanceof/src/Test.java b/java/java-tests/testData/inspection/dataFlow/thisInstanceof/src/Test.java
deleted file mode 100644
index c72dd6d24997..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/thisInstanceof/src/Test.java
+++ /dev/null
@@ -1,5 +0,0 @@
-public class Test {
- public void foo() {
- boolean b = this instanceof Object;
- }
-}
\ No newline at end of file
diff --git a/java/java-tests/testData/inspection/dataFlow/unboxingNPE/expected.xml b/java/java-tests/testData/inspection/dataFlow/unboxingNPE/expected.xml
deleted file mode 100644
index 06f4ca5b5054..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/unboxingNPE/expected.xml
+++ /dev/null
@@ -1,387 +0,0 @@
-
-
-
- Test.java
- 95
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 91
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 31
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 87
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 14
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 75
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 83
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 45
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 67
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 71
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 8
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 79
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 22
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 50
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 56
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 26
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 99
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 35
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 40
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 61
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
-
-
- Test.java
- 18
-
- int f(int k)
- f(int)
- <default>
-
- Auto
- Auto
-
-
- Constant conditions & exceptions
- Unboxing of <code>i</code> may produce <code>NullPointerException</code>.
-
-
-
- Test.java
- 67
- <default>
- Constant conditions & exceptions
- Condition <code>i</code> is always <code>true</code> when reached
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/unboxingNPE/src/Test.java b/java/java-tests/testData/inspection/dataFlow/unboxingNPE/src/Test.java
deleted file mode 100644
index 31aca4765cd1..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/unboxingNPE/src/Test.java
+++ /dev/null
@@ -1,104 +0,0 @@
-class Auto {
- public Auto(int k) {
- }
-
- int f(int k, Auto other) {
- {
- Integer i = null;
- if (i>0) {
- }
- }
-
- {
- Integer i = null;
- int i1 = (int) i;
- }
- {
- Integer i = null;
- int i1 = i+i;
- }
- {
- Integer i = null;
- int i1 = i++;
- }
- {
- Integer i = null;
- Integer i1 = i++;
- }
- {
- Integer i = null;
- int[] ia = new int[0];
- int i2 = ia[i];
- }
- {
- Integer i = null;
- int[] i2 = {i};
- }
- {
- Boolean i = null;
- boolean i2 = this==other;
- i2 &= i;
- }
- {
- Boolean i = null;
- boolean i2 = this==other;
- i2 |= i;
- }
- {
- Boolean i = null;
- boolean i2 = this==other;
- i2 = !i;
- }
-
- {
- Integer i = null;
- if (this==other) {
- return i;
- }
- }
- {
- Integer i = null;
- switch(i) {
- case 0:
- }
- }
- {
- Boolean i = null;
- boolean i2 = i && i;
- }
- {
- Boolean i = null;
- boolean i2 = i | i;
- }
- {
- Boolean i = null;
- boolean i2 = true ^ i;
- }
- {
- Boolean i = null;
- boolean i2 = i ? true : false;
- }
- {
- Integer i = null;
- f(i);
- }
- {
- Integer i = null;
- new Auto(i);
- }
- {
- Integer i = null;
- i++;
- }
- {
- Integer i = null;
- --i;
- }
- {
- Boolean i = null;
- Boolean i2 = !i;
- }
-
- return 0;
- }
-}
diff --git a/java/java-tests/testData/inspection/dataFlow/wrongEqualTypes/expected.xml b/java/java-tests/testData/inspection/dataFlow/wrongEqualTypes/expected.xml
deleted file mode 100644
index 9ac879d78616..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/wrongEqualTypes/expected.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/java/java-tests/testData/inspection/dataFlow/xor/expected.xml b/java/java-tests/testData/inspection/dataFlow/xor/expected.xml
deleted file mode 100644
index 796a315e49f5..000000000000
--- a/java/java-tests/testData/inspection/dataFlow/xor/expected.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
diff --git a/java/java-tests/testSrc/com/intellij/java/codeInspection/DataFlowInspectionAncientTest.java b/java/java-tests/testSrc/com/intellij/java/codeInspection/DataFlowInspectionAncientTest.java
index 8d9b5d079fd8..b7efe02a012b 100644
--- a/java/java-tests/testSrc/com/intellij/java/codeInspection/DataFlowInspectionAncientTest.java
+++ b/java/java-tests/testSrc/com/intellij/java/codeInspection/DataFlowInspectionAncientTest.java
@@ -1,118 +1,97 @@
-/*
- * Copyright 2000-2017 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.
- */
+// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.java.codeInspection;
import com.intellij.JavaTestUtil;
import com.intellij.codeInspection.dataFlow.DataFlowInspection;
-import com.intellij.testFramework.InspectionTestCase;
+import com.intellij.testFramework.LightProjectDescriptor;
+import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase;
+import org.jetbrains.annotations.NotNull;
-/**
- * @author max
- * @since Apr 11, 2002
- */
-public class DataFlowInspectionAncientTest extends InspectionTestCase {
+public class DataFlowInspectionAncientTest extends LightCodeInsightFixtureTestCase {
@Override
- protected String getTestDataPath() {
- return JavaTestUtil.getJavaTestDataPath() + "/inspection";
+ protected String getBasePath() {
+ return JavaTestUtil.getRelativeJavaTestDataPath() + "/inspection/dataFlow/ancient";
+ }
+
+ @NotNull
+ @Override
+ protected LightProjectDescriptor getProjectDescriptor() {
+ return JAVA_1_7;
}
private void doTest() {
- doTest(false);
- }
- private void doTest(boolean lowercase) {
DataFlowInspection inspection = new DataFlowInspection();
inspection.REPORT_CONSTANT_REFERENCE_VALUES = false;
- doTest("dataFlow/" + getTestName(lowercase), inspection);
+ myFixture.enableInspections(inspection);
+ myFixture.testHighlighting(getTestName(false) + ".java");
}
- private void doTest15() {
- doTest15(false);
- }
- private void doTest15(boolean lowercase) {
- DataFlowInspection inspection = new DataFlowInspection();
- inspection.REPORT_CONSTANT_REFERENCE_VALUES = false;
- doTest("dataFlow/" + getTestName(lowercase), inspection, "java 1.5");
- }
-
- public void testNpe1() { doTest(true); }
- public void testCaseAndNpe() { doTest(true); }
- public void testCce() { doTest(true); }
- public void testExceptionCFG() { doTest(true); }
- public void testInst() { doTest(true); }
- public void testWrongEqualTypes() { doTest(true); }
+ public void testNpe1() { doTest(); }
+ public void testCaseAndNpe() { doTest(); }
+ public void testCce() { doTest(); }
+ public void testExceptionCFG() { doTest(); }
+ public void testInst() { doTest(); }
+ public void testWrongEqualTypes() { doTest(); }
public void testSCR13626() { doTest(); }
public void testSCR13871() { doTest(); }
public void testInstanceof() { doTest(); }
- public void testOrBug() { doTest(true); }
+ public void testOrBug() { doTest(); }
public void testSCR14819() { doTest(); }
public void testSCR14314() { doTest(); }
public void testSCR15162() { doTest(); }
public void testCatchParameterCantBeNull() { doTest(); }
- public void testXor() { doTest(true); }
+ public void testXor() { doTest(); }
public void testGenericInstanceof() { doTest(); }
- public void testThisInstanceof() { doTest(true); }
- public void testAndEq() { doTest(true); }
- public void testNullableField() { doTest(true); }
+ public void testThisInstanceof() { doTest(); }
+ public void testAndEq() { doTest(); }
+ public void testNullableField() { doTest(); }
public void testSCR39950() { doTest(); }
- public void testScrIDEA1() { doTest(true); }
+ public void testScrIDEA1() { doTest(); }
public void testSCR18186() { doTest(); }
- public void testConstantExpr() { doTest(true); }
+ public void testConstantExpr() { doTest(); }
public void testIDEADEV74518() { doTest(); }
public void testIDEADEV74518_2() { doTest(); }
public void testIDEADEV77819() { doTest(); }
public void testIDEADEV78370() { doTest(); }
public void testRegressionByPti() { doTest(); }
- public void testNotNullable() { doTest15(); }
- public void testNotNullableParameter() { doTest15(); }
- public void testNotNullableParameter2() { doTest15(); }
- public void testNullable() { doTest15(); }
- public void testNullableThroughCast() { doTest15(); }
- public void testNullableProblemThroughCast() { doTest15(); }
- public void testNullableThroughVariable() { doTest15(); }
- public void testNullableThroughVariableShouldNotBeReported() { doTest15(); }
- public void testNullableLocalVariable() { doTest15(); }
- public void testNotNullLocalVariable() { doTest15(); }
- public void testNullableReturn() { doTest15(); }
- public void testNullableReturn1() { doTest15(); }
- public void testFinalFields() { doTest15(true); }
- public void testNotNullArray() { doTest15(); }
- public void testFieldsFlashing() { doTest15(); }
- public void testConditionFalseAndNPE() { doTest15(); }
- public void testIDEADEV1575() { doTest15(); }
- public void testAlexBug() { doTest15(); }
- public void testYoleBug() { doTest15(); }
- public void testForeachFlow() { doTest15(); }
- public void testForEachNPE() { doTest15(); }
- public void testArrayAccessNPE() { doTest15(); }
- public void testArrayAccessDoesntCancelAnalysis() { doTest15(); }
- public void testAutoboxing() { doTest15(true); }
- public void testUnboxingNPE() { doTest15(true); }
- public void testStrangeArrayIndexOutOfBounds() { doTest15(); }
- public void testIDEADEV2605() { doTest15(); }
- public void testConstantsDifferentTypes() { doTest15(); }
- public void testBoxingNaN() { doTest15(); }
- public void testCheckedExceptionDominance() { doTest15(); }
- public void testIDEADEV10489() { doTest15(); }
- public void testPlusOnStrings() { doTest15(); }
- public void testSwitchQualifierProducesNPE() {doTest15(); }
- public void testIDEADEV15583() {doTest15(); }
- public void testIDEADEV13153() { doTest15(); }
- public void testIDEADEV13156() { doTest15(); }
- public void testSwitchEnumCases() { doTest15(); }
+ public void testNotNullable() { doTest(); }
+ public void testNotNullableParameter() { doTest(); }
+ public void testNotNullableParameter2() { doTest(); }
+ public void testNullable() { doTest(); }
+ public void testNullableThroughCast() { doTest(); }
+ public void testNullableProblemThroughCast() { doTest(); }
+ public void testNullableThroughVariable() { doTest(); }
+ public void testNullableThroughVariableShouldNotBeReported() { doTest(); }
+ public void testNullableLocalVariable() { doTest(); }
+ public void testNotNullLocalVariable() { doTest(); }
+ public void testNullableReturn() { doTest(); }
+ public void testNullableReturn1() { doTest(); }
+ public void testFinalFields() { doTest(); }
+ public void testNotNullArray() { doTest(); }
+ public void testFieldsFlashing() { doTest(); }
+ public void testConditionFalseAndNPE() { doTest(); }
+ public void testIDEADEV1575() { doTest(); }
+ public void testAlexBug() { doTest(); }
+ public void testYoleBug() { doTest(); }
+ public void testForeachFlow() { doTest(); }
+ public void testForEachNPE() { doTest(); }
+ public void testArrayAccessNPE() { doTest(); }
+ public void testArrayAccessDoesntCancelAnalysis() { doTest(); }
+ public void testAutoboxing() { doTest(); }
+ public void testUnboxingNPE() { doTest(); }
+ public void testStrangeArrayIndexOutOfBounds() { doTest(); }
+ public void testIDEADEV2605() { doTest(); }
+ public void testConstantsDifferentTypes() { doTest(); }
+ public void testBoxingNaN() { doTest(); }
+ public void testCheckedExceptionDominance() { doTest(); }
+ public void testIDEADEV10489() { doTest(); }
+ public void testPlusOnStrings() { doTest(); }
+ public void testSwitchQualifierProducesNPE() {doTest(); }
+ public void testIDEADEV15583() {doTest(); }
+ public void testIDEADEV13153() { doTest(); }
+ public void testIDEADEV13156() { doTest(); }
+ public void testSwitchEnumCases() { doTest(); }
public void testSCR15406() { doTest(); }
}