diff --git a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/MutinySessionTest.java b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/MutinySessionTest.java index 604b08f6a..fb8c7e1f1 100644 --- a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/MutinySessionTest.java +++ b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/MutinySessionTest.java @@ -68,6 +68,20 @@ private static String nameFromResult(List rowSet) { } } + @Test + public void reactiveFindMultipleIds(VertxTestContext context) { + final GuineaPig rump = new GuineaPig( 55, "Rumpelstiltskin" ); + final GuineaPig emma = new GuineaPig( 77, "Emma" ); + test( context, populateDB() + .chain( () -> getMutinySessionFactory().withTransaction( s -> s.persistAll( emma, rump ) ) ) + .chain( () -> getMutinySessionFactory().withTransaction( s -> s.find( GuineaPig.class, emma.getId(), rump.getId() ) ) + ) + .invoke( pigs -> { + org.assertj.core.api.Assertions.assertThat( pigs ).containsExactlyInAnyOrder( emma, rump ); + } ) + ); + } + @Test public void sessionClear(VertxTestContext context) { final GuineaPig guineaPig = new GuineaPig( 81, "Perry" ); diff --git a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/ReactiveSessionTest.java b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/ReactiveSessionTest.java index 959dc4ed7..73de9fd30 100644 --- a/hibernate-reactive-core/src/test/java/org/hibernate/reactive/ReactiveSessionTest.java +++ b/hibernate-reactive-core/src/test/java/org/hibernate/reactive/ReactiveSessionTest.java @@ -79,6 +79,21 @@ public void reactiveFind(VertxTestContext context) { ); } + @Test + public void reactiveFindMultipleIds(VertxTestContext context) { + final GuineaPig rump = new GuineaPig( 55, "Rumpelstiltskin" ); + final GuineaPig emma = new GuineaPig( 77, "Emma" ); + test( context, populateDB() + .thenCompose( v -> getSessionFactory().withTransaction( s -> s.persist( emma, rump ) ) ) + .thenCompose( v -> getSessionFactory().withTransaction( s -> s + .find( GuineaPig.class, emma.getId(), rump.getId() ) ) + ) + .thenAccept( pigs -> { + org.assertj.core.api.Assertions.assertThat( pigs ).containsExactlyInAnyOrder( emma, rump ); + } ) + ); + } + @Test public void sessionClear(VertxTestContext context) { final GuineaPig guineaPig = new GuineaPig( 81, "Perry" );