From 62bca281f53d65a7f7316bec45455abbd442538c Mon Sep 17 00:00:00 2001 From: Thomas Darimont Date: Tue, 18 Mar 2014 19:50:42 +0100 Subject: [PATCH] DATAJPA-500 - Verify that sorting of Embeddables with Querydsl works. Added test case to verify that sorting by nested embedded attributes with querydsl expressions works. Previously a ClassCastException was thrown due to changes in org.springframework.data.jpa.repository.support.Querydsl. Original pull request: #70. --- .../support/QueryDslJpaRepositoryTests.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/test/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepositoryTests.java b/src/test/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepositoryTests.java index d4b2f14bf..1b164131d 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepositoryTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepositoryTests.java @@ -293,4 +293,20 @@ public class QueryDslJpaRepositoryTests { assertThat(page.getContent(), hasSize(3)); assertThat(page.getContent().get(0), is(dave)); } + + /** + * @DATAJPA-500 + */ + @Test + public void sortByNestedEmbeddedAttribite() { + + carter.setAddress(new Address("U", "Z", "Y", "41")); + dave.setAddress(new Address("U", "A", "Y", "41")); + oliver.setAddress(new Address("G", "D", "X", "42")); + + List users = repository.findAll(QUser.user.id.goe(0), QUser.user.address.streetName.asc()); + + assertThat(users, hasSize(3)); + assertThat(users, hasItems(dave, oliver, carter)); + } }