Skip to content

Commit 4df06c7

Browse files
christophstroblmp911de
authored andcommitted
Apply sort of unpaged Pageable to query.
Original pull request: spring-projects#4773 Closes spring-projects#4771
1 parent 541c43b commit 4df06c7

File tree

2 files changed

+13
-0
lines changed
  • spring-data-mongodb/src
    • main/java/org/springframework/data/mongodb/core/query
    • test/java/org/springframework/data/mongodb/core/query

2 files changed

+13
-0
lines changed

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/query/Query.java

+3
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,9 @@ public Query withHint(Document hint) {
286286
public Query with(Pageable pageable) {
287287

288288
if (pageable.isUnpaged()) {
289+
if(pageable.getSort().isSorted()) {
290+
return with(pageable.getSort());
291+
}
289292
return this;
290293
}
291294

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/query/QueryTests.java

+10
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import org.junit.jupiter.api.Test;
2424
import org.springframework.aop.framework.ProxyFactory;
2525
import org.springframework.data.domain.Limit;
26+
import org.springframework.data.domain.Pageable;
2627
import org.springframework.data.domain.Sort;
2728
import org.springframework.data.domain.Sort.Direction;
2829
import org.springframework.data.domain.Sort.Order;
@@ -366,6 +367,15 @@ void queryOfShouldWorkOnProxiedObjects() {
366367
compareQueries(target, source);
367368
}
368369

370+
@Test // GH-4771
371+
void appliesSortOfUnpagedPageable() {
372+
373+
Query query = new Query();
374+
query.with(Pageable.unpaged(Sort.by("sortMe")));
375+
376+
assertThat(query.isSorted()).isTrue();
377+
}
378+
369379
private void compareQueries(Query actual, Query expected) {
370380

371381
assertThat(actual.getCollation()).isEqualTo(expected.getCollation());

0 commit comments

Comments
 (0)