package net.bytebuddy.description.type; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import java.util.Arrays; import java.util.Collection; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.MatcherAssert.assertThat; @RunWith(Parameterized.class) public class TypeDefinitionSortTest { @Parameterized.Parameters public static Collection<Object[]> data() { return Arrays.asList(new Object[][]{ {TypeDefinition.Sort.NON_GENERIC, true, false, false, false, false}, {TypeDefinition.Sort.PARAMETERIZED, false, true, false, false, false}, {TypeDefinition.Sort.VARIABLE, false, false, true, false, false}, {TypeDefinition.Sort.VARIABLE_SYMBOLIC, false, false, true, false, false}, {TypeDefinition.Sort.GENERIC_ARRAY, false, false, false, true, false}, {TypeDefinition.Sort.WILDCARD, false, false, false, false, true} }); } private final TypeDefinition.Sort sort; private final boolean nonGeneric, parameterized, typeVariable, genericArray, wildcard; public TypeDefinitionSortTest(TypeDefinition.Sort sort, boolean nonGeneric, boolean parameterized, boolean typeVariable, boolean genericArray, boolean wildcard) { this.sort = sort; this.nonGeneric = nonGeneric; this.parameterized = parameterized; this.typeVariable = typeVariable; this.genericArray = genericArray; this.wildcard = wildcard; } @Test public void testNonGeneric() throws Exception { assertThat(sort.isNonGeneric(), is(nonGeneric)); } @Test public void testParameterized() throws Exception { assertThat(sort.isParameterized(), is(parameterized)); } @Test public void testTypeVariable() throws Exception { assertThat(sort.isTypeVariable(), is(typeVariable)); } @Test public void testGenericArray() throws Exception { assertThat(sort.isGenericArray(), is(genericArray)); } @Test public void testWildcard() throws Exception { assertThat(sort.isWildcard(), is(wildcard)); } }