1111import io .vertx .junit5 .VertxTestContext ;
1212
1313import static org .assertj .core .api .Assertions .assertThat ;
14+ import static org .hibernate .reactive .containers .DatabaseConfiguration .DBType .DB2 ;
15+ import static org .hibernate .reactive .containers .DatabaseConfiguration .dbType ;
1416
1517public class NoEntitiesTest extends BaseReactiveTest {
1618
@@ -23,7 +25,7 @@ public void emptyMetamodelWithMutiny() {
2325 public void shouldBeAbleToRunQueryWithMutinyTransaction (VertxTestContext context ) {
2426 test ( context , getMutinySessionFactory ()
2527 .withTransaction ( s -> s
26- .createNativeQuery ( "select 42" , Long .class ).getSingleResult ()
28+ .createNativeQuery ( selectQuery ( 42 ) , Long .class ).getSingleResult ()
2729 ).invoke ( result -> assertThat ( result ).isEqualTo ( 42L ) )
2830 );
2931 }
@@ -34,18 +36,24 @@ public void runNativeQueryWithMutinyTransactionAndFlush(VertxTestContext context
3436 .withTransaction ( s -> {
3537 s .setFlushMode ( FlushMode .ALWAYS );
3638 return s
37- .createNativeQuery ( "select 42" , Long .class ).getSingleResult ()
39+ .createNativeQuery ( selectQuery ( 42 ) , Long .class ).getSingleResult ()
3840 .call ( s ::flush );
3941 } ).invoke ( result -> assertThat ( result ).isEqualTo ( 42L ) )
4042 );
4143 }
4244
45+ private static String selectQuery (int value ) {
46+ return dbType () == DB2
47+ ? "values " + value
48+ : "select " + value ;
49+ }
50+
4351 @ Test
4452 public void runStatelessNativeQueryWithMutinyTransactionAndFlush (VertxTestContext context ) {
4553 test (
4654 context , getMutinySessionFactory ()
4755 .withStatelessTransaction ( s -> s
48- .createNativeQuery ( "select 42" , Long .class )
56+ .createNativeQuery ( selectQuery ( 42 ) , Long .class )
4957 .getSingleResult ()
5058 )
5159 .invoke ( result -> assertThat ( result ).isEqualTo ( 42L ) )
@@ -56,7 +64,7 @@ context, getMutinySessionFactory()
5664 public void shouldBeAbleToRunQueryWithMutinyWithoutTransaction (VertxTestContext context ) {
5765 test ( context , getMutinySessionFactory ()
5866 .openSession ().chain ( s -> s
59- .createNativeQuery ( "select 666" , Long .class ).getSingleResult ()
67+ .createNativeQuery ( selectQuery ( 666 ) , Long .class ).getSingleResult ()
6068 ).invoke ( result -> assertThat ( result ).isEqualTo ( 666L ) )
6169 );
6270 }
0 commit comments