From 34425c54db053cf7f8889126204aef234b4e1657 Mon Sep 17 00:00:00 2001
From: Mark Paluch
concrete subtype * @author laimw * @author Mark Paluch @@ -184,7 +187,7 @@ public abstract class QuerydslAbstractMongodbQuerygetQueryMixin() { @@ -216,6 +219,9 @@ public abstract class QuerydslAbstractMongodbQuery * + * Note that encoding to {@link String} may fail when using data types that cannot be encoded or DBRef's without an + * identifier. + * * @return never {@literal null}. */ @Override @@ -223,27 +229,28 @@ public abstract class QuerydslAbstractMongodbQuery query = repoSupport.from(p).where(p.lastname.eq("Matthews")); + User user = new User(); + user.setId("id"); + SpringDataMongodbQuery query = repoSupport.from(p) + .where(p.lastname.eq("Matthews").and(p.coworker.eq(user))); - assertThat(StringUtils.trimAllWhitespace(query.toString())).isEqualTo("find({\"lastname\":\"Matthews\"})"); + assertThat(StringUtils.trimAllWhitespace(query.toString())) + .isEqualTo("find({\"lastname\":\"Matthews\",\"coworker\":{\"$ref\":\"user\",\"$id\":\"id\"}})"); query = query.orderBy(p.firstname.asc()); assertThat(StringUtils.trimAllWhitespace(query.toString())) - .isEqualTo("find({\"lastname\":\"Matthews\"}).sort({\"firstname\":1})"); + .isEqualTo( + "find({\"lastname\":\"Matthews\",\"coworker\":{\"$ref\":\"user\",\"$id\":\"id\"}}).sort({\"firstname\":1})"); query = query.offset(1).limit(5); assertThat(StringUtils.trimAllWhitespace(query.toString())) - .isEqualTo("find({\"lastname\":\"Matthews\"}).sort({\"firstname\":1}).skip(1).limit(5)"); + .isEqualTo( + "find({\"lastname\":\"Matthews\",\"coworker\":{\"$ref\":\"user\",\"$id\":\"id\"}}).sort({\"firstname\":1}).skip(1).limit(5)"); } @Data