diff --git a/README.md b/README.md index 05eca3d..f88e299 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,11 @@ # GeantyRef +## Migrate to JUnit 5 with Symflower + +* Symflower version: 44511 +* Execution time: 1.9s +* Diff: 11 files changed, 56 insertions(+), 44 deletions(-) + [![Maven Central](https://img.shields.io/maven-central/v/io.leangen.geantyref/geantyref?color=green&style=flat-square)](https://maven-badges.herokuapp.com/maven-central/io.leangen.geantyref/geantyref) [![Javadoc](https://img.shields.io/badge/dynamic/json.svg?style=flat-square&prefix=v&color=green&label=javadoc&query=$.response.docs[0].latestVersion&uri=http%3A%2F%2Fsearch.maven.org%2Fsolrsearch%2Fselect%3Fq%3Dg%3A%2522io.leangen.geantyref%2522%2BAND%2Ba%3A%2522geantyref%2522%26wt%3Djson)](http://www.javadoc.io/doc/io.leangen.geantyref/geantyref) [![Build Status](https://img.shields.io/travis/leangen/geantyref?style=flat-square)](https://travis-ci.org/leangen/geantyref) diff --git a/pom.xml b/pom.xml index 0ab78f8..b4bba23 100644 --- a/pom.xml +++ b/pom.xml @@ -44,9 +44,15 @@ - junit - junit - 4.13.2 + org.junit.jupiter + junit-jupiter-api + 5.11.3 + test + + + org.junit.vintage + junit-vintage-engine + 5.11.3 test diff --git a/src/test/java/io/leangen/geantyref/AbstractGenericsReflectorTest.java b/src/test/java/io/leangen/geantyref/AbstractGenericsReflectorTest.java index aa5e251..2cc8489 100644 --- a/src/test/java/io/leangen/geantyref/AbstractGenericsReflectorTest.java +++ b/src/test/java/io/leangen/geantyref/AbstractGenericsReflectorTest.java @@ -14,7 +14,7 @@ import java.util.List; import java.util.RandomAccess; -import static org.junit.Assert.assertNotEquals; +import static org.junit.jupiter.api.Assertions.assertNotEquals; //NOTE: It is important NOT to use <> (diamond) here! Something goes horribly wrong with type inference. @SuppressWarnings("Convert2Diamond") diff --git a/src/test/java/io/leangen/geantyref/AnnotationInvocationHandlerTest.java b/src/test/java/io/leangen/geantyref/AnnotationInvocationHandlerTest.java index bd37d3c..2a62782 100644 --- a/src/test/java/io/leangen/geantyref/AnnotationInvocationHandlerTest.java +++ b/src/test/java/io/leangen/geantyref/AnnotationInvocationHandlerTest.java @@ -1,6 +1,6 @@ package io.leangen.geantyref; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.util.HashMap; import java.util.Map; @@ -9,6 +9,7 @@ import static java.util.Collections.unmodifiableMap; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.MatcherAssert.assertThat; +import static org.junit.jupiter.api.Assertions.assertThrows; public class AnnotationInvocationHandlerTest { @Test @@ -25,15 +26,17 @@ public void normalize() throws Exception { assertThat(normalize, equalTo(values)); } - @Test(expected = AnnotationFormatException.class) + @Test public void normalizeWithBadValues() throws Exception { - // Given - Map values = new HashMap<>(); - values.put("aBoolean", "Some text"); - values.put("anInt", 42); - - // When - AnnotationInvocationHandler.normalize(MyAnnotation.class, unmodifiableMap(values)); + assertThrows(AnnotationFormatException.class, () -> { + // Given + Map values = new HashMap<>(); + values.put("aBoolean", "Some text"); + values.put("anInt", 42); + + // When + AnnotationInvocationHandler.normalize(MyAnnotation.class, unmodifiableMap(values)); + }); } @Test diff --git a/src/test/java/io/leangen/geantyref/AnnotationsMergeTest.java b/src/test/java/io/leangen/geantyref/AnnotationsMergeTest.java index d83c2fe..564cec6 100644 --- a/src/test/java/io/leangen/geantyref/AnnotationsMergeTest.java +++ b/src/test/java/io/leangen/geantyref/AnnotationsMergeTest.java @@ -5,7 +5,7 @@ package io.leangen.geantyref; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.lang.annotation.Annotation; import java.lang.reflect.AnnotatedArrayType; @@ -23,10 +23,10 @@ import static io.leangen.geantyref.Annotations.A3; import static io.leangen.geantyref.Annotations.A4; import static io.leangen.geantyref.Annotations.A5; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertTrue; /** * Tests if type-use annotations from different locations are inherited and merged correctly. @@ -105,7 +105,7 @@ public void classAnnotationsMergeTest() throws NoSuchFieldException { public void classAnnotationsNonPropagationTest() { AnnotatedType number = GenericTypeReflector.getExactSuperType(A1_LONG, Number.class); assertNotNull(number); - assertTrue("Class annotations are not propagated upwards", number.getAnnotations().length == 0); + assertTrue(number.getAnnotations().length == 0, "Class annotations are not propagated upwards"); } @Test diff --git a/src/test/java/io/leangen/geantyref/Assertions.java b/src/test/java/io/leangen/geantyref/Assertions.java index dd6fded..b2c8b68 100644 --- a/src/test/java/io/leangen/geantyref/Assertions.java +++ b/src/test/java/io/leangen/geantyref/Assertions.java @@ -8,9 +8,9 @@ import java.util.Set; import java.util.stream.Collectors; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; public class Assertions { @@ -33,7 +33,7 @@ public static void assertTypeIsRecursive(AnnotatedParameterizedType type) { .filter(arg -> arg instanceof AnnotatedTypeVariable) .map(arg -> (AnnotatedTypeVariable) arg) .collect(Collectors.toCollection(() -> Collections.newSetFromMap(new IdentityHashMap<>()))); - assertTrue("Variable " + type + " does not recur within given depth", isRecursive(roots, type, 0, 10)); + assertTrue(isRecursive(roots, type, 0, 10), "Variable " + type + " does not recur within given depth"); } private static boolean isRecursive(Set roots, AnnotatedType node, int currentDepth, int maxDepth) { diff --git a/src/test/java/io/leangen/geantyref/GenTyRefReflectionStrategy.java b/src/test/java/io/leangen/geantyref/GenTyRefReflectionStrategy.java index 98d819e..bbe30f4 100644 --- a/src/test/java/io/leangen/geantyref/GenTyRefReflectionStrategy.java +++ b/src/test/java/io/leangen/geantyref/GenTyRefReflectionStrategy.java @@ -9,7 +9,7 @@ import java.lang.reflect.Method; import java.lang.reflect.Type; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; class GenTyRefReflectionStrategy extends AbstractReflectionStrategy { public boolean isSupertype(Type superType, Type subType) { diff --git a/src/test/java/io/leangen/geantyref/Issue17Test.java b/src/test/java/io/leangen/geantyref/Issue17Test.java index 1bffea0..36c92cb 100644 --- a/src/test/java/io/leangen/geantyref/Issue17Test.java +++ b/src/test/java/io/leangen/geantyref/Issue17Test.java @@ -5,12 +5,12 @@ package io.leangen.geantyref; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.lang.reflect.Method; import java.util.Set; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; /* * https://github.com/leangen/geantyref/issues/17 @@ -23,9 +23,9 @@ public void testTypeTokenEqualityAndHashCode() throws NoSuchMethodException { Method method = Issue17Test.class.getDeclaredMethod("dummyMethod", Set.class); TypeToken otherTypeToken = TypeToken.get(method.getParameters()[0].getParameterizedType()); - assertEquals("Both TypeTokens should be equal", numberTypeToken, otherTypeToken); - assertEquals("Both TypeTokens should have equal types", numberTypeToken.getType(), otherTypeToken.getType()); - assertEquals("Both TypeTokens should have equal hash codes", numberTypeToken.hashCode(), otherTypeToken.hashCode()); + assertEquals(numberTypeToken, otherTypeToken, "Both TypeTokens should be equal"); + assertEquals(numberTypeToken.getType(), otherTypeToken.getType(), "Both TypeTokens should have equal types"); + assertEquals(numberTypeToken.hashCode(), otherTypeToken.hashCode(), "Both TypeTokens should have equal hash codes"); } @SuppressWarnings("unused") diff --git a/src/test/java/io/leangen/geantyref/Issue20Test.java b/src/test/java/io/leangen/geantyref/Issue20Test.java index 185349c..57bad35 100644 --- a/src/test/java/io/leangen/geantyref/Issue20Test.java +++ b/src/test/java/io/leangen/geantyref/Issue20Test.java @@ -5,7 +5,7 @@ package io.leangen.geantyref; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.lang.annotation.Annotation; import java.lang.reflect.AnnotatedParameterizedType; @@ -14,10 +14,10 @@ import java.util.Arrays; import static io.leangen.geantyref.Annotations.*; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertSame; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertSame; +import static org.junit.jupiter.api.Assertions.assertTrue; /** * reduceBounded StackOverflowError with self-recursing capture diff --git a/src/test/java/io/leangen/geantyref/Issue27Test.java b/src/test/java/io/leangen/geantyref/Issue27Test.java index a59e186..74b7b10 100644 --- a/src/test/java/io/leangen/geantyref/Issue27Test.java +++ b/src/test/java/io/leangen/geantyref/Issue27Test.java @@ -6,7 +6,7 @@ package io.leangen.geantyref; import io.leangen.geantyref.Annotations.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.lang.reflect.*; import java.util.Map; @@ -15,6 +15,7 @@ import static io.leangen.geantyref.Assertions.assertAnnotationsPresent; import static io.leangen.geantyref.Assertions.assertEqualTypeVariables; import static io.leangen.geantyref.Assertions.assertTypeIsRecursive; +import static org.junit.jupiter.api.Assertions.assertThrows; /** * StackOverflowError in VarMap.map when calling GenericTypeReflector.getParameterTypes() @@ -46,11 +47,13 @@ public void getParameterTypesOnRecursiveType() throws NoSuchMethodException { } } - @Test(expected = UnresolvedTypeVariableException.class) + @Test public void getExactParameterTypesOnRecursiveType() throws NoSuchMethodException { - Class cls = SelfReferential.class; - Method method = reflectSelfRefMethod(cls); - GenericTypeReflector.getExactParameterTypes(method, cls); + assertThrows(UnresolvedTypeVariableException.class, () -> { + Class cls = SelfReferential.class; + Method method = reflectSelfRefMethod(cls); + GenericTypeReflector.getExactParameterTypes(method, cls); + }); } private static Method reflectSelfRefMethod(Class cls) throws NoSuchMethodException { diff --git a/src/test/java/io/leangen/geantyref/ToStringTest.java b/src/test/java/io/leangen/geantyref/ToStringTest.java index 79f0b95..a963f4c 100644 --- a/src/test/java/io/leangen/geantyref/ToStringTest.java +++ b/src/test/java/io/leangen/geantyref/ToStringTest.java @@ -7,7 +7,7 @@ import io.leangen.geantyref.Annotations.A3; import io.leangen.geantyref.Annotations.A4; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.io.Serializable; import java.lang.annotation.Annotation; @@ -17,8 +17,8 @@ import java.util.List; import java.util.Map; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; public class ToStringTest { diff --git a/src/test/java/io/leangen/geantyref/factory/TypeFactoryTest.java b/src/test/java/io/leangen/geantyref/factory/TypeFactoryTest.java index 013694c..75ed137 100644 --- a/src/test/java/io/leangen/geantyref/factory/TypeFactoryTest.java +++ b/src/test/java/io/leangen/geantyref/factory/TypeFactoryTest.java @@ -20,8 +20,8 @@ import java.util.*; import static io.leangen.geantyref.TypeFactory.*; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertNotEquals; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertNotEquals; public class TypeFactoryTest extends TestCase { private static final Type GENERICOUTER_STRING = new TypeToken>() {