1515import org .hibernate .annotations .FetchMode ;
1616
1717import org .junit .After ;
18+ import org .junit .Ignore ;
1819import org .junit .Test ;
1920
2021import io .vertx .ext .unit .TestContext ;
3637import jakarta .persistence .Transient ;
3738import jakarta .persistence .Version ;
3839
40+ @ Ignore // see https://github.com/hibernate/hibernate-reactive/issues/1502
3941public class SubselectFetchTest extends BaseReactiveTest {
4042
4143 @ Override
@@ -60,24 +62,24 @@ public void testQuery(TestContext context) {
6062 basik .parent .elements .add ( new Element ( basik .parent ) );
6163 basik .parent .elements .add ( new Element ( basik .parent ) );
6264
63- test ( context , getSessionFactory ()
64- .withTransaction ( s -> s .persist ( basik ) )
65- .thenCompose ( v -> openSession () )
66- .thenCompose ( s -> s .createQuery ( "from Node n order by id" , Node .class )
67- .getResultList ()
68- .thenCompose ( list -> {
69- context .assertEquals ( list .size (), 2 );
70- Node n1 = list .get ( 0 );
71- Node n2 = list .get ( 1 );
72- context .assertFalse ( Hibernate .isInitialized ( n1 .getElements () ) );
73- context .assertFalse ( Hibernate .isInitialized ( n2 .getElements () ) );
74- return s .fetch ( n1 .getElements () ).thenAccept ( elements -> {
75- context .assertTrue ( Hibernate .isInitialized ( elements ) );
76- context .assertTrue ( Hibernate .isInitialized ( n1 .getElements () ) );
77- context .assertTrue ( Hibernate .isInitialized ( n2 .getElements () ) );
78- } );
79- } )
80- )
65+ test ( context , getSessionFactory ()
66+ .withTransaction ( s -> s .persist ( basik ) )
67+ .thenCompose ( v -> openSession () )
68+ .thenCompose ( s -> s .createQuery ( "from Node n order by id" , Node .class )
69+ .getResultList ()
70+ .thenCompose ( list -> {
71+ context .assertEquals ( list .size (), 2 );
72+ Node n1 = list .get ( 0 );
73+ Node n2 = list .get ( 1 );
74+ context .assertFalse ( Hibernate .isInitialized ( n1 .getElements () ), "'n1.elements' should not be initialized" );
75+ context .assertFalse ( Hibernate .isInitialized ( n2 .getElements () ), "'n2.elements' should not be initialized" );
76+ return s .fetch ( n1 .getElements () ).thenAccept ( elements -> {
77+ context .assertTrue ( Hibernate .isInitialized ( elements ), "'elements' - after fetch - should be initialized" );
78+ context .assertTrue ( Hibernate .isInitialized ( n1 .getElements () ), "'n1.elements' - after fetch - should be initialized" );
79+ context .assertTrue ( Hibernate .isInitialized ( n2 .getElements () ), "'n2.elements' - after fetch - should be initialized" );
80+ } );
81+ } )
82+ )
8183 );
8284 }
8385
0 commit comments