From ca2e05d8c44cc8b6b4b3ae2ba92fb2092b59fa02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Westk=C3=A4mper?= Date: Sat, 29 Aug 2015 14:24:28 +0300 Subject: [PATCH] Fix FactoryExpressionTransformer --- .../com/querydsl/jpa/FactoryExpressionTransformer.java | 5 ----- .../src/test/java/com/querydsl/jpa/AbstractJPATest.java | 9 +++++---- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/querydsl-jpa/src/main/java/com/querydsl/jpa/FactoryExpressionTransformer.java b/querydsl-jpa/src/main/java/com/querydsl/jpa/FactoryExpressionTransformer.java index 631626a25..e43fd93a1 100644 --- a/querydsl-jpa/src/main/java/com/querydsl/jpa/FactoryExpressionTransformer.java +++ b/querydsl-jpa/src/main/java/com/querydsl/jpa/FactoryExpressionTransformer.java @@ -43,11 +43,6 @@ public final class FactoryExpressionTransformer implements ResultTransformer { @Override public Object transformTuple(Object[] tuple, String[] aliases) { - if (projection.getArgs().size() < tuple.length) { - Object[] shortened = new Object[projection.getArgs().size()]; - System.arraycopy(tuple, 0, shortened, 0, shortened.length); - tuple = shortened; - } return projection.newInstance(tuple); } diff --git a/querydsl-jpa/src/test/java/com/querydsl/jpa/AbstractJPATest.java b/querydsl-jpa/src/test/java/com/querydsl/jpa/AbstractJPATest.java index 787433fd3..8c8eac4aa 100644 --- a/querydsl-jpa/src/test/java/com/querydsl/jpa/AbstractJPATest.java +++ b/querydsl-jpa/src/test/java/com/querydsl/jpa/AbstractJPATest.java @@ -739,10 +739,11 @@ public abstract class AbstractJPATest { public void FactoryExpressions() { QCat cat = QCat.cat; QCat cat2 = new QCat("cat2"); - JPQLQuery query = query().from(cat).leftJoin(cat.kittens, cat2) - .select(Projections.tuple(cat.id, cat.name, - Projections.tuple(cat2.id, cat2.name, - Projections.tuple(cat2.birthdate).skipNulls()).skipNulls())); + QCat kitten = new QCat("kitten"); + JPQLQuery query = query().from(cat) + .leftJoin(cat.mate, cat2) + .leftJoin(cat2.kittens, kitten) + .select(Projections.tuple(cat.id, new QFamily(cat, cat2, kitten).skipNulls())); assertEquals(6, query.fetch().size()); assertNotNull(query.limit(1).fetchOne()); }