package com.querydsl.apt.domain;
import org.junit.Test;
import com.querydsl.core.annotations.QueryEntity;
public class Generic13Test extends AbstractTest {
@QueryEntity
public static class GenericBase<T extends AnotherClass> {
T t;
}
@QueryEntity
public static class GenericBaseSubclass<P> extends GenericBase<AnotherClass> {
P p;
}
@QueryEntity
public static class Subclass extends GenericBaseSubclass<Number> {
}
public static class AnotherClass {
}
@Test
public void test() throws IllegalAccessException, NoSuchFieldException {
start(QGeneric13Test_GenericBase.class, QGeneric13Test_GenericBase.genericBase);
matchType(AnotherClass.class, "t");
start(QGeneric13Test_GenericBaseSubclass.class, QGeneric13Test_GenericBaseSubclass.genericBaseSubclass);
matchType(Object.class, "p");
start(QGeneric13Test_Subclass.class, QGeneric13Test_Subclass.subclass);
matchType(Number.class, "p");
}
}