From f0ac2bd244f0c89ec41f233d25f43d2faf1269a3 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Tue, 6 May 2014 16:05:59 +0400 Subject: [PATCH] unnecessarily qualified statically imported elements: do not ignore chained calls (IDEA-124806) --- ...ualifiedStaticallyImportedElementInspection.java | 2 +- .../chainedMethodCall/expected.xml | 8 ++++++++ .../chainedMethodCall/src/Test.java | 13 +++++++++++++ .../{ => simple}/expected.xml | 0 .../{ => simple/src}/C.java | 0 ...fiedStaticallyImportedElementInspectionTest.java | 6 +++++- 6 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/expected.xml create mode 100644 plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/src/Test.java rename plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/{ => simple}/expected.xml (100%) rename plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/{ => simple/src}/C.java (100%) diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspection.java index e33db815bd49..7c6d5a999ecb 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspection.java @@ -94,7 +94,7 @@ public class UnnecessarilyQualifiedStaticallyImportedElementInspection extends B if (!(qualifier instanceof PsiJavaCodeReferenceElement)) { return; } - if (PsiTreeUtil.getParentOfType(reference, PsiReferenceExpression.class, PsiImportStatementBase.class) != null) { + if (PsiTreeUtil.getParentOfType(reference, PsiImportStatementBase.class) != null) { return; } if (UnnecessarilyQualifiedStaticUsageInspection.isGenericReference(reference, (PsiJavaCodeReferenceElement)qualifier)) return; diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/expected.xml b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/expected.xml new file mode 100644 index 000000000000..4944dce1ffa2 --- /dev/null +++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/expected.xml @@ -0,0 +1,8 @@ + + + Test.java + 7 + Unnecessarily qualified statically imported element + Statically imported element 'foo' is unnecessarily qualified with <code>A</code> #loc + + \ No newline at end of file diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/src/Test.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/src/Test.java new file mode 100644 index 000000000000..a731da90bd2f --- /dev/null +++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/chainedMethodCall/src/Test.java @@ -0,0 +1,13 @@ +package p; + +import static p.A.foo; + +class StaticImport { + void example() { + A.foo().toString(); + } +} + +class A { + static Object foo() {return null;} +} \ No newline at end of file diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/expected.xml b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/simple/expected.xml similarity index 100% rename from plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/expected.xml rename to plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/simple/expected.xml diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/C.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/simple/src/C.java similarity index 100% rename from plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/C.java rename to plugins/InspectionGadgets/test/com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/simple/src/C.java diff --git a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspectionTest.java b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspectionTest.java index df7f28b474b9..9dfaba52517a 100644 --- a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspectionTest.java +++ b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/style/UnnecessarilyQualifiedStaticallyImportedElementInspectionTest.java @@ -21,7 +21,7 @@ public class UnnecessarilyQualifiedStaticallyImportedElementInspectionTest extends IGInspectionTestCase { public void test() throws Exception { - doTest("com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element", + doTest("com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/simple", new UnnecessarilyQualifiedStaticallyImportedElementInspection()); } @@ -33,6 +33,10 @@ public class UnnecessarilyQualifiedStaticallyImportedElementInspectionTest doTest(getTestName(true)); } + public void testChainedMethodCall() throws Exception { + doTest(getTestName(true)); + } + private void doTest(String testName) throws Exception { doTest("com/siyeh/igtest/style/unnecessarily_qualified_statically_imported_element/" + testName, new UnnecessarilyQualifiedStaticallyImportedElementInspection());