diff --git a/plugins/junit/src/com/intellij/execution/junit/TestMethods.java b/plugins/junit/src/com/intellij/execution/junit/TestMethods.java index 3ed43eccce78..0f1bb8d5d86e 100644 --- a/plugins/junit/src/com/intellij/execution/junit/TestMethods.java +++ b/plugins/junit/src/com/intellij/execution/junit/TestMethods.java @@ -89,9 +89,9 @@ public class TestMethods extends TestMethod { : ((PsiMethod)element).getContainingClass(); if (containingClass != null) { final String proxyName = testInfo.getName(); - final String methodName = ((PsiMethod)element).getName(); + final String methodWithSignaturePresentation = JUnitConfiguration.Data.getMethodPresentation(((PsiMethod)element)); return JavaExecutionUtil.getRuntimeQualifiedName(containingClass) + "," + - (proxyName.contains(methodName) ? proxyName.substring(proxyName.indexOf(methodName)) : methodName); + (proxyName.contains(methodWithSignaturePresentation) ? proxyName.substring(proxyName.indexOf(methodWithSignaturePresentation)) : methodWithSignaturePresentation); } } return null; diff --git a/plugins/junit/test/com/intellij/execution/junit/JUnitRerunFailedTestsTest.java b/plugins/junit/test/com/intellij/execution/junit/JUnitRerunFailedTestsTest.java index 8bab77726491..557223afb52a 100644 --- a/plugins/junit/test/com/intellij/execution/junit/JUnitRerunFailedTestsTest.java +++ b/plugins/junit/test/com/intellij/execution/junit/JUnitRerunFailedTestsTest.java @@ -174,6 +174,18 @@ public class JUnitRerunFailedTestsTest extends LightCodeInsightFixtureTestCase assertEquals(aClass, element); } + public void testPresentationForJunit5MethodsWithParameters() throws Exception { + myFixture.addClass("class A {}" + + "public class TestClass {\n" + + " @org.junit.platform.commons.annotation.Testable" + + " public void testFoo(A a) throws Exception {}\n" + + "}"); + final SMTestProxy testProxy = new SMTestProxy("testFoo", false, "java:test://TestClass.testFoo"); + testProxy.setLocator(JavaTestLocator.INSTANCE); + final String presentation = TestMethods.getTestPresentation(testProxy, myFixture.getProject(), GlobalSearchScope.projectScope(myFixture.getProject())); + assertEquals("TestClass,testFoo(A)", presentation); + } + public void testMultipleClassesInOneFile() throws Exception { myFixture.configureByText("a.java", "public class Test1 {} public class Test2 {}");