diff --git a/javaparser-symbol-solver-testing/pom.xml b/javaparser-symbol-solver-testing/pom.xml index 8b8e075f8d..40e83cf147 100644 --- a/javaparser-symbol-solver-testing/pom.xml +++ b/javaparser-symbol-solver-testing/pom.xml @@ -117,6 +117,10 @@ org.junit.jupiter junit-jupiter-engine + + org.junit.jupiter + junit-jupiter-params + com.github.javaparser javaparser-symbol-solver-logic diff --git a/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue235.java b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue235.java index 63c713c609..e9eaee1e30 100644 --- a/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue235.java +++ b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/Issue235.java @@ -10,24 +10,16 @@ import com.github.javaparser.symbolsolver.model.resolution.TypeSolver; import com.github.javaparser.symbolsolver.resolution.AbstractResolutionTest; import com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver; -import org.junit.Assert; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.MethodSource; import java.util.Arrays; import java.util.Collection; -@RunWith(Parameterized.class) -public class Issue235 extends AbstractResolutionTest{ - private final String method; +class Issue235 extends AbstractResolutionTest{ - public Issue235(String method) { - this.method = method; - } - - @Parameterized.Parameters(name = "{0}") - public static Collection data() throws Exception { + static Collection data() { return Arrays.asList( "new_Bar_Baz_direct", "new_Bar_Baz", @@ -36,15 +28,16 @@ public static Collection data() throws Exception { ); } - @Test - public void issue235() { + @ParameterizedTest + @MethodSource("data") + void issue235(String method) { CompilationUnit cu = parseSample("Issue235"); ClassOrInterfaceDeclaration cls = Navigator.demandClassOrInterface(cu, "Foo"); TypeSolver typeSolver = new ReflectionTypeSolver(); JavaParserFacade javaParserFacade = JavaParserFacade.get(typeSolver); - MethodDeclaration m = Navigator.demandMethod(cls, this.method); + MethodDeclaration m = Navigator.demandMethod(cls, method); ExpressionStmt stmt = (ExpressionStmt) m.getBody().get().getStatements().get(0); ObjectCreationExpr expression = (ObjectCreationExpr) stmt.getExpression(); - Assert.assertNotNull(javaParserFacade.convertToUsage(expression.getType())); + Assertions.assertNotNull(javaParserFacade.convertToUsage(expression.getType())); } } diff --git a/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/typesolvers/CombinedTypeSolverTest.java b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/typesolvers/CombinedTypeSolverTest.java index 2772befd01..affa0d04e5 100644 --- a/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/typesolvers/CombinedTypeSolverTest.java +++ b/javaparser-symbol-solver-testing/src/test/java/com/github/javaparser/symbolsolver/resolution/typesolvers/CombinedTypeSolverTest.java @@ -16,29 +16,24 @@ package com.github.javaparser.symbolsolver.resolution.typesolvers; -import static org.junit.Assert.*; +import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.*; import java.util.Arrays; import java.util.List; import java.util.function.Predicate; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; -import org.junit.runners.Parameterized.Parameter; -import org.junit.runners.Parameterized.Parameters; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.MethodSource; import com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration; import com.github.javaparser.symbolsolver.model.resolution.SymbolReference; import com.github.javaparser.symbolsolver.model.resolution.TypeSolver; import com.github.javaparser.symbolsolver.resolution.typesolvers.CombinedTypeSolver.ExceptionHandlers; -@RunWith(Parameterized.class) -public class CombinedTypeSolverTest { +class CombinedTypeSolverTest { - @Parameters - public static List parameters() { + static List parameters() { // Why these classes? NFE is a subclass, IOOBE is a superclass and ISE is a class without children (by default) Predicate whitelistTestFilter = ExceptionHandlers.getTypeBasedWhitelist(NumberFormatException.class, IndexOutOfBoundsException.class, IllegalStateException.class); @@ -70,17 +65,9 @@ public static List parameters() { }); } - @Parameter(0) - public Exception toBeThrownException; - - @Parameter(1) - public Predicate filter; - - @Parameter(2) - public boolean expectForward; - - @Test - public void testExceptionFilter() { + @ParameterizedTest + @MethodSource("parameters") + void testExceptionFilter(Exception toBeThrownException, Predicate filter, boolean expectForward) { TypeSolver erroringTypeSolver = mock(TypeSolver.class); doThrow(toBeThrownException).when(erroringTypeSolver).tryToSolveType(any(String.class)); @@ -91,11 +78,11 @@ public void testExceptionFilter() { try { new CombinedTypeSolver(filter, erroringTypeSolver, secondaryTypeSolver) .tryToSolveType("an uninteresting string"); - assertTrue("Forwarded, but we expected an exception", expectForward); + assertTrue(expectForward, "Forwarded, but we expected an exception"); } catch (Exception e) { - assertFalse("Exception, but we expected forwarding", expectForward); // if we expected the error to be - // forwarded there shouldn't be an - // exception + assertFalse(expectForward, "Exception, but we expected forwarding"); // if we expected the error to be + // forwarded there shouldn't be an + // exception } verify(secondaryTypeSolver, times(expectForward ? 1 : 0)).tryToSolveType(any(String.class)); diff --git a/pom.xml b/pom.xml index f6f42be2b6..3ec44b1924 100644 --- a/pom.xml +++ b/pom.xml @@ -322,6 +322,12 @@ 5.3.1 test + + org.junit.jupiter + junit-jupiter-params + 5.3.1 + test + org.junit.vintage junit-vintage-engine