diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/ClassNewInstanceInspection.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/ClassNewInstanceInspection.java index 11a53ab4ea15..8e62fb9a5f8a 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/ClassNewInstanceInspection.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/bugs/ClassNewInstanceInspection.java @@ -90,9 +90,6 @@ public class ClassNewInstanceInspection extends BaseInspection { final PsiMethod method = (PsiMethod)parentOfType; addThrowsClause(method, "java.lang.NoSuchMethodException", "java.lang.reflect.InvocationTargetException"); } - else { - assert false; - } final PsiMethodCallExpression methodCallExpression = (PsiMethodCallExpression)grandParent; @NonNls final String newExpression = qualifier.getText() + ".getConstructor().newInstance()"; PsiReplacementUtil.replaceExpression(methodCallExpression, newExpression, new CommentTracker()); diff --git a/plugins/InspectionGadgets/test/com/siyeh/igfixes/bugs/class_new_instance/BrokenCode.after.java b/plugins/InspectionGadgets/test/com/siyeh/igfixes/bugs/class_new_instance/BrokenCode.after.java new file mode 100644 index 000000000000..223cd9672875 --- /dev/null +++ b/plugins/InspectionGadgets/test/com/siyeh/igfixes/bugs/class_new_instance/BrokenCode.after.java @@ -0,0 +1,4 @@ +class BrokenCode { + + String s = String.class.getConstructor().newInstance(); +} \ No newline at end of file diff --git a/plugins/InspectionGadgets/test/com/siyeh/igfixes/bugs/class_new_instance/BrokenCode.java b/plugins/InspectionGadgets/test/com/siyeh/igfixes/bugs/class_new_instance/BrokenCode.java new file mode 100644 index 000000000000..74018b63118e --- /dev/null +++ b/plugins/InspectionGadgets/test/com/siyeh/igfixes/bugs/class_new_instance/BrokenCode.java @@ -0,0 +1,4 @@ +class BrokenCode { + + String s = String.class.newInstance(); +} \ No newline at end of file diff --git a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/bugs/ClassNewInstanceFixTest.java b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/bugs/ClassNewInstanceFixTest.java index 7f51a9ab2d6a..a14ae422b2ae 100644 --- a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/bugs/ClassNewInstanceFixTest.java +++ b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/bugs/ClassNewInstanceFixTest.java @@ -16,6 +16,7 @@ public class ClassNewInstanceFixTest extends IGQuickFixesTestCase { public void testCreateCatchBlocks() { doTest(); } public void testSkipCatchBlocks() { doTest(); } public void testAddThrows() { doTest(); } + public void testBrokenCode() { doTest(); } @Override public void setUp() throws Exception {