|
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; |
@@ -131,16 +132,40 @@ public void shouldMapSelectQueryWithTtlColumns() { |
131 | 132 | assertThat(select.build(ParameterHandling.INLINE).getQuery()).isEqualTo("SELECT ttl(email) FROM group"); |
132 | 133 | } |
133 | 134 |
|
134 | | - @Test // DATACASS-343 |
| 135 | + @Test // #1008 |
135 | 136 | public void shouldMapSelectQueryWithSortLimitAndAllowFiltering() { |
136 | 137 |
|
137 | | - Query query = Query.empty().sort(Sort.by("id.hashPrefix")).limit(10).withAllowFiltering(); |
| 138 | + Query query = Query.empty().sort(Sort.by(DESC, "email", "age")); |
| 139 | + |
| 140 | + StatementBuilder<Select> select = statementFactory.select(query, |
| 141 | + converter.getMappingContext().getRequiredPersistentEntity(Group.class)); |
| 142 | + |
| 143 | + assertThat(select.build(ParameterHandling.INLINE).getQuery()) |
| 144 | + .isEqualTo("SELECT * FROM group ORDER BY email DESC,age DESC"); |
| 145 | + } |
| 146 | + |
| 147 | + @Test // DATACASS-343 |
| 148 | + public void shouldMapSelectQueryWithSortByEmbeddedLimitAndAllowFiltering() { |
| 149 | + |
| 150 | + Query query = Query.empty().sort(Sort.by(DESC, "id.hashPrefix", "id.username")); |
| 151 | + |
| 152 | + StatementBuilder<Select> select = statementFactory.select(query, |
| 153 | + converter.getMappingContext().getRequiredPersistentEntity(Group.class)); |
| 154 | + |
| 155 | + assertThat(select.build(ParameterHandling.INLINE).getQuery()) |
| 156 | + .isEqualTo("SELECT * FROM group ORDER BY hash_prefix DESC,username DESC"); |
| 157 | + } |
| 158 | + |
| 159 | + @Test // DATACASS-343 |
| 160 | + public void shouldMapSelectQueryWithLimitAndAllowFiltering() { |
| 161 | + |
| 162 | + Query query = Query.empty().limit(10).withAllowFiltering(); |
138 | 163 |
|
139 | 164 | StatementBuilder<Select> select = statementFactory.select(query, |
140 | 165 | converter.getMappingContext().getRequiredPersistentEntity(Group.class)); |
141 | 166 |
|
142 | 167 | assertThat(select.build(ParameterHandling.INLINE).getQuery()) |
143 | | - .isEqualTo("SELECT * FROM group ORDER BY hash_prefix ASC LIMIT 10 ALLOW FILTERING"); |
| 168 | + .isEqualTo("SELECT * FROM group LIMIT 10 ALLOW FILTERING"); |
144 | 169 | } |
145 | 170 |
|
146 | 171 | @Test // DATACASS-343 |
|
0 commit comments