use of org.eclipse.persistence.jpa.jpql.tools.spi.IQuery in project eclipselink by eclipse-ee4j.
the class EclipseLinkJPQLQueryHelperTest2_4 method test_ResultType_FromSubquery_4.
@Test
public void test_ResultType_FromSubquery_4() throws Exception {
// Select e3.result from Employee e, (Select count(e2) + 2.2 as result, e2.department from Employee e2 group by e2.department) e3 where e.department = e3.department
IQuery namedQuery = namedQuery("Employee", "employee.fromSubquery4");
AbstractJPQLQueryHelper helper = buildQueryHelper(namedQuery);
IType type = helper.getResultType();
assertNotNull("The result type should have been found", type);
assertEquals("The result type was not calculated correctly", getType(namedQuery, Double.class), type);
}
use of org.eclipse.persistence.jpa.jpql.tools.spi.IQuery in project eclipselink by eclipse-ee4j.
the class ORMJPQLQueryHelperTest method namedQuery.
@Override
protected IQuery namedQuery(String entityName, String queryName) throws Exception {
IORMConfiguration ormConfiguration = getORMConfiguration("orm2.xml");
IQuery namedQuery = ormConfiguration.getNamedQuery(queryName);
assertNotNull("The named query " + queryName + " could not be found in the ORM", namedQuery);
return namedQuery;
}
use of org.eclipse.persistence.jpa.jpql.tools.spi.IQuery in project eclipselink by eclipse-ee4j.
the class AbstractJPQLQueryHelperTest method test_ResultType_32.
@Test
public final void test_ResultType_32() throws Exception {
// SELECT c.lastName FROM Address a JOIN a.customerList AS c
IQuery namedQuery = namedQuery("Address", "address.stateField");
AbstractJPQLQueryHelper helper = buildQueryHelper(namedQuery);
IType type = helper.getResultType();
assertNotNull("The object type should have been returned", type);
assertEquals("The wrong type was retrieved", getType(namedQuery, String.class), type);
}
use of org.eclipse.persistence.jpa.jpql.tools.spi.IQuery in project eclipselink by eclipse-ee4j.
the class AbstractJPQLQueryHelperTest method test_ResultType_41.
@Test
public final void test_ResultType_41() throws Exception {
// SELECT MIN(p.quantity) FROM Product p
IQuery namedQuery = namedQuery("Product", "product.min");
AbstractJPQLQueryHelper helper = buildQueryHelper(namedQuery);
IType type = helper.getResultType();
assertNotNull("The type of MIN(p.quantity) should have been found", type);
assertEquals("The wrong type for MIN(p.quantity) was retrieved", getType(namedQuery, Integer.class), type);
}
use of org.eclipse.persistence.jpa.jpql.tools.spi.IQuery in project eclipselink by eclipse-ee4j.
the class AbstractJPQLQueryHelperTest method test_ParameterType_06.
@Test
public final void test_ParameterType_06() throws Exception {
// select count(c) FROM Customer c JOIN c.aliases a GROUP BY a.alias HAVING a.alias = SUBSTRING(:string1, :int1, :int2)
IQuery namedQuery = namedQuery("Customer", "customer.substring");
AbstractJPQLQueryHelper helper = buildQueryHelper(namedQuery);
IType type = helper.getParameterType(":int2");
assertNotNull("The type of :int2 should have been found", type);
assertEquals("The wrong type for :int2 was retrieved", getType(namedQuery, Integer.class), type);
}
Aggregations