|
16 | 16 | package org.springframework.data.cassandra.core; |
17 | 17 |
|
18 | 18 | import static org.assertj.core.api.Assertions.*; |
| 19 | +import static org.springframework.data.domain.Sort.Direction.*; |
19 | 20 |
|
20 | 21 | import java.time.Duration; |
21 | 22 | import java.util.Collections; |
@@ -133,16 +134,40 @@ void shouldMapSelectQueryWithTtlColumns() { |
133 | 134 | assertThat(select.build(ParameterHandling.INLINE).getQuery()).isEqualTo("SELECT ttl(email) FROM group"); |
134 | 135 | } |
135 | 136 |
|
136 | | - @Test // DATACASS-343 |
| 137 | + @Test // #1008 |
137 | 138 | void shouldMapSelectQueryWithSortLimitAndAllowFiltering() { |
138 | 139 |
|
139 | | - Query query = Query.empty().sort(Sort.by("id.hashPrefix")).limit(10).withAllowFiltering(); |
| 140 | + Query query = Query.empty().sort(Sort.by(DESC, "email", "age")); |
| 141 | + |
| 142 | + StatementBuilder<Select> select = statementFactory.select(query, |
| 143 | + converter.getMappingContext().getRequiredPersistentEntity(Group.class)); |
| 144 | + |
| 145 | + assertThat(select.build(ParameterHandling.INLINE).getQuery()) |
| 146 | + .isEqualTo("SELECT * FROM group ORDER BY email DESC,age DESC"); |
| 147 | + } |
| 148 | + |
| 149 | + @Test // DATACASS-343 |
| 150 | + void shouldMapSelectQueryWithSortByEmbeddedLimitAndAllowFiltering() { |
| 151 | + |
| 152 | + Query query = Query.empty().sort(Sort.by(DESC, "id.hashPrefix", "id.username")); |
| 153 | + |
| 154 | + StatementBuilder<Select> select = statementFactory.select(query, |
| 155 | + converter.getMappingContext().getRequiredPersistentEntity(Group.class)); |
| 156 | + |
| 157 | + assertThat(select.build(ParameterHandling.INLINE).getQuery()) |
| 158 | + .isEqualTo("SELECT * FROM group ORDER BY hash_prefix DESC,username DESC"); |
| 159 | + } |
| 160 | + |
| 161 | + @Test // DATACASS-343 |
| 162 | + void shouldMapSelectQueryWithLimitAndAllowFiltering() { |
| 163 | + |
| 164 | + Query query = Query.empty().limit(10).withAllowFiltering(); |
140 | 165 |
|
141 | 166 | StatementBuilder<Select> select = statementFactory.select(query, |
142 | 167 | converter.getMappingContext().getRequiredPersistentEntity(Group.class)); |
143 | 168 |
|
144 | 169 | assertThat(select.build(ParameterHandling.INLINE).getQuery()) |
145 | | - .isEqualTo("SELECT * FROM group ORDER BY hash_prefix ASC LIMIT 10 ALLOW FILTERING"); |
| 170 | + .isEqualTo("SELECT * FROM group LIMIT 10 ALLOW FILTERING"); |
146 | 171 | } |
147 | 172 |
|
148 | 173 | @Test // DATACASS-343 |
|
0 commit comments