From 4f513cbd946f42a1851027cd82d02e8a7399f967 Mon Sep 17 00:00:00 2001 From: anna Date: Wed, 28 Dec 2011 14:22:20 +0100 Subject: [PATCH] EA-31069 - assert: RefactoringUtil.getChainedConstructor --- .../intellij/refactoring/util/RefactoringUtil.java | 2 +- .../afterAbstractConstructor.java | 11 +++++++++++ .../beforeAbstractConstructor.java | 10 ++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/afterAbstractConstructor.java create mode 100644 java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/beforeAbstractConstructor.java diff --git a/java/java-impl/src/com/intellij/refactoring/util/RefactoringUtil.java b/java/java-impl/src/com/intellij/refactoring/util/RefactoringUtil.java index 610bcdf579d0..b1bef4267f30 100644 --- a/java/java-impl/src/com/intellij/refactoring/util/RefactoringUtil.java +++ b/java/java-impl/src/com/intellij/refactoring/util/RefactoringUtil.java @@ -901,7 +901,7 @@ public class RefactoringUtil { @Nullable public static PsiMethod getChainedConstructor(PsiMethod constructor) { final PsiCodeBlock constructorBody = constructor.getBody(); - LOG.assertTrue(constructorBody != null); + if (constructorBody == null) return null; final PsiStatement[] statements = constructorBody.getStatements(); if (statements.length == 1 && statements[0] instanceof PsiExpressionStatement) { final PsiExpression expression = ((PsiExpressionStatement)statements[0]).getExpression(); diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/afterAbstractConstructor.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/afterAbstractConstructor.java new file mode 100644 index 000000000000..cd0507ff3c9a --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/afterAbstractConstructor.java @@ -0,0 +1,11 @@ +// "Add constructor parameter" "true" +public enum La { + ; + private String s; + + private La(String s) { + this.s = s; + } + + private La(int a, String s); +} diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/beforeAbstractConstructor.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/beforeAbstractConstructor.java new file mode 100644 index 000000000000..626f7c630337 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/createConstructorParameterFromField/beforeAbstractConstructor.java @@ -0,0 +1,10 @@ +// "Add constructor parameter" "true" +public enum La { + ; + private String s; + + private La() { + } + + private La(int a); +}