|
32 | 32 | import java.util.Map; |
33 | 33 | import java.util.Optional; |
34 | 34 | import java.util.Set; |
| 35 | +import java.util.StringJoiner; |
| 36 | +import java.util.stream.Stream; |
35 | 37 |
|
36 | 38 | import static org.assertj.core.api.Assertions.assertThat; |
37 | 39 | import static org.example.domain.query.QAddress.Alias.country; |
@@ -289,6 +291,48 @@ public void testFindOne() { |
289 | 291 | .findList(); |
290 | 292 | } |
291 | 293 |
|
| 294 | + private void insertCustomer(String name) { |
| 295 | + Customer cust = new Customer(); |
| 296 | + cust.setName(name); |
| 297 | + cust.setStatus(Customer.Status.GOOD); |
| 298 | + cust.save(); |
| 299 | + } |
| 300 | + |
| 301 | + @Test |
| 302 | + public void testFindStream() { |
| 303 | + insertCustomer("stream1"); |
| 304 | + insertCustomer("stream2"); |
| 305 | + |
| 306 | + StringJoiner sb = new StringJoiner("|"); |
| 307 | + try (Stream<Customer> stream = new QCustomer() |
| 308 | + .name.startsWith("stream") |
| 309 | + .id.asc() |
| 310 | + .findSteam()) { |
| 311 | + |
| 312 | + stream.forEach(it -> sb.add(it.getName())); |
| 313 | + } |
| 314 | + |
| 315 | + assertThat(sb.toString()).isEqualTo("stream1|stream2"); |
| 316 | + } |
| 317 | + |
| 318 | + @Test |
| 319 | + public void testFindLargeStream() { |
| 320 | + insertCustomer("largeStream1"); |
| 321 | + insertCustomer("largeStream2"); |
| 322 | + insertCustomer("largeStream3"); |
| 323 | + |
| 324 | + StringJoiner sb = new StringJoiner("|"); |
| 325 | + try (Stream<Customer> stream = new QCustomer() |
| 326 | + .name.startsWith("largeStream") |
| 327 | + .id.asc() |
| 328 | + .findSteam()) { |
| 329 | + |
| 330 | + stream.forEach(it -> sb.add(it.getName())); |
| 331 | + } |
| 332 | + |
| 333 | + assertThat(sb.toString()).isEqualTo("largeStream1|largeStream2|largeStream3"); |
| 334 | + } |
| 335 | + |
292 | 336 | @Test |
293 | 337 | public void testFilterMany() { |
294 | 338 |
|
|
0 commit comments