|
6 | 6 | package org.hibernate.reactive; |
7 | 7 |
|
8 | 8 | import java.util.Collection; |
| 9 | +import java.util.List; |
9 | 10 | import java.util.Objects; |
10 | 11 | import java.util.Set; |
11 | 12 |
|
@@ -49,6 +50,61 @@ public void testFindSingleId(VertxTestContext context) { |
49 | 50 | ); |
50 | 51 | } |
51 | 52 |
|
| 53 | + @Test |
| 54 | + public void testQueryWithListOfParametersValues(VertxTestContext context) { |
| 55 | + test( context, getMutinySessionFactory().withTransaction( s -> s |
| 56 | + .createQuery( "from Delivery d where d.locationId in (?1)", Delivery.class ) |
| 57 | + .setParameter( 1, verbania ) |
| 58 | + .getResultList() |
| 59 | + ).invoke( deliveries -> { |
| 60 | + assertThat( deliveries ).hasSize( 1 ); |
| 61 | + assertThat( deliveries ).contains( pizza ); |
| 62 | + } ) |
| 63 | + ); |
| 64 | + } |
| 65 | + |
| 66 | + @Test |
| 67 | + public void testQueryWithWhereClauseContainingInOperator(VertxTestContext context) { |
| 68 | + test( context, getMutinySessionFactory().withTransaction( s -> s |
| 69 | + .createQuery( "from Delivery d where d.locationId in ?1", Delivery.class ) |
| 70 | + .setParameter( 1, List.of( verbania ) ) |
| 71 | + .getResultList() |
| 72 | + ).invoke( deliveries -> { |
| 73 | + assertThat( deliveries ).hasSize( 1 ); |
| 74 | + assertThat( deliveries ).contains( pizza ); |
| 75 | + } ) |
| 76 | + ); |
| 77 | + } |
| 78 | + |
| 79 | + @Test |
| 80 | + public void testQueryWithWhereClauseContainingInOperatorListOfTwoValues(VertxTestContext context) { |
| 81 | + test( context, getMutinySessionFactory().withTransaction( s -> s |
| 82 | + .createQuery( "from Delivery d where d.locationId in ?1", Delivery.class ) |
| 83 | + .setParameter( 1, List.of( verbania, hallein ) ) |
| 84 | + .getResultList() |
| 85 | + ).invoke( deliveries -> { |
| 86 | + assertThat( deliveries ).hasSize( 2 ); |
| 87 | + assertThat( deliveries ).contains( pizza ); |
| 88 | + assertThat( deliveries ).contains( schnitzel ); |
| 89 | + } ) |
| 90 | + ); |
| 91 | + } |
| 92 | + |
| 93 | + @Test |
| 94 | + public void testQueryWithWhereClauseContainingInOperatorAndTwoParameters(VertxTestContext context) { |
| 95 | + test( context, getMutinySessionFactory().withTransaction( s -> s |
| 96 | + .createQuery( "from Delivery d where d.locationId in (?1,?2)", Delivery.class ) |
| 97 | + .setParameter( 1, verbania ) |
| 98 | + .setParameter( 2, hallein ) |
| 99 | + .getResultList() |
| 100 | + ).invoke( deliveries -> { |
| 101 | + assertThat( deliveries ).hasSize( 2 ); |
| 102 | + assertThat( deliveries ).contains( pizza ); |
| 103 | + assertThat( deliveries ).contains( schnitzel ); |
| 104 | + } ) |
| 105 | + ); |
| 106 | + } |
| 107 | + |
52 | 108 | @Test |
53 | 109 | public void testFindMultipleIds(VertxTestContext context) { |
54 | 110 | test( context, getMutinySessionFactory().withTransaction( s -> s.find( Delivery.class, verbania, hallein ) ) |
|
0 commit comments