diff --git a/java/java-tests/testData/refactoring/extractMethod/ParamDetection.java b/java/java-tests/testData/refactoring/extractMethod/ParamDetection.java new file mode 100644 index 000000000000..2bef3d88687d --- /dev/null +++ b/java/java-tests/testData/refactoring/extractMethod/ParamDetection.java @@ -0,0 +1,20 @@ +import java.util.*; + +class Test { + public void foo() { + List trades; + try { + trades = getTrades(); + } + catch (RemoteException e) { + } + + + //probably not assigned !!! + if (trades.isEmpty()) { + } + } + + static class RemoteException extends Exception { + } +} diff --git a/java/java-tests/testData/refactoring/extractMethod/ParamDetection_after.java b/java/java-tests/testData/refactoring/extractMethod/ParamDetection_after.java new file mode 100644 index 000000000000..f64ddcd4cb7a --- /dev/null +++ b/java/java-tests/testData/refactoring/extractMethod/ParamDetection_after.java @@ -0,0 +1,25 @@ +import java.util.*; + +class Test { + public void foo() { + List trades = newMethod(); + + + //probably not assigned !!! + if (trades.isEmpty()) { + } + } + + private List newMethod() { + List trades; + try { + trades = getTrades(); + } + catch (RemoteException e) { + } + return trades; + } + + static class RemoteException extends Exception { + } +} diff --git a/java/java-tests/testSrc/com/intellij/refactoring/ExtractMethodTest.java b/java/java-tests/testSrc/com/intellij/refactoring/ExtractMethodTest.java index 6e3e4a59ed42..734d76f0a8f7 100644 --- a/java/java-tests/testSrc/com/intellij/refactoring/ExtractMethodTest.java +++ b/java/java-tests/testSrc/com/intellij/refactoring/ExtractMethodTest.java @@ -550,6 +550,10 @@ public class ExtractMethodTest extends LightCodeInsightTestCase { doTest(); } + public void testParamDetection() throws Exception { + doTest(); + } + private void doTestDisabledParam() throws PrepareFailedException { final CodeStyleSettings settings = CodeStyleSettingsManager.getSettings(getProject()); settings.ELSE_ON_NEW_LINE = true;