From d7f75583f97a15a77e6d784116e103f4142b3034 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Tue, 1 Sep 2015 13:26:01 +0300 Subject: [PATCH] junit: make it possible to start pattern configuration with parameter from @Parameterized (IDEA-144608) --- ...bstractPatternBasedConfigurationProducer.java | 5 ++++- .../junit/PatternConfigurationProducer.java | 10 ++++++++++ .../intellij/junit4/JUnit4TestRunnerUtil.java | 12 ++++++++++-- .../TestNGConfigurationProducer.java | 9 +++++++++ .../TestNGInClassConfigurationProducer.java | 8 +------- .../TestNGPatternConfigurationProducer.java | 3 +++ .../ui/actions/RerunFailedTestsAction.java | 16 ++++++++++------ 7 files changed, 47 insertions(+), 16 deletions(-) diff --git a/java/execution/impl/src/com/intellij/execution/testframework/AbstractPatternBasedConfigurationProducer.java b/java/execution/impl/src/com/intellij/execution/testframework/AbstractPatternBasedConfigurationProducer.java index b1186ab0efc3..db9b42a863eb 100644 --- a/java/execution/impl/src/com/intellij/execution/testframework/AbstractPatternBasedConfigurationProducer.java +++ b/java/execution/impl/src/com/intellij/execution/testframework/AbstractPatternBasedConfigurationProducer.java @@ -21,6 +21,7 @@ import com.intellij.execution.actions.ConfigurationContext; import com.intellij.execution.configurations.ConfigurationType; import com.intellij.execution.configurations.ModuleBasedConfiguration; import com.intellij.execution.junit.JavaRunConfigurationProducerBase; +import com.intellij.execution.junit2.PsiMemberParameterizedLocation; import com.intellij.execution.junit2.info.MethodLocation; import com.intellij.openapi.actionSystem.CommonDataKeys; import com.intellij.openapi.actionSystem.DataContext; @@ -193,7 +194,9 @@ public abstract class AbstractPatternBasedConfigurationProducer(); } - if (location instanceof PsiMemberParameterizedLocation) { - final String paramSetName = ((PsiMemberParameterizedLocation)location).getParamSetName(); - if (paramSetName != null) { - strings.add(TestNGConfigurationProducer.getInvocationNumber(paramSetName)); - } - } + setupParameterName(location, strings); psiMethods.put(psiMethod, strings); } } } + + private static void setupParameterName(Location location, List strings) { + if (location instanceof PsiMemberParameterizedLocation) { + final String paramSetName = ((PsiMemberParameterizedLocation)location).getParamSetName(); + if (paramSetName != null) { + strings.add(TestNGConfigurationProducer.getInvocationNumber(paramSetName)); + } + } + } }