88import jakarta .persistence .Id ;
99import org .hibernate .cfg .Environment ;
1010import org .hibernate .cfg .JdbcSettings ;
11+ import org .hibernate .dialect .DB2Dialect ;
12+ import org .hibernate .dialect .OracleDialect ;
1113import org .hibernate .internal .log .ConnectionInfoLogger ;
1214import org .hibernate .testing .logger .LogInspectionHelper ;
1315import org .hibernate .testing .logger .LogListener ;
1416import org .hibernate .testing .orm .junit .EntityManagerFactoryScope ;
1517import org .hibernate .testing .orm .junit .Jpa ;
1618import org .hibernate .testing .orm .junit .Setting ;
19+ import org .hibernate .testing .orm .junit .SkipForDialect ;
1720import org .jboss .logging .Logger ;
1821import org .junit .jupiter .api .Test ;
1922
2528@ Jpa (annotatedClasses = DataSourceTest .TestEntity .class ,
2629 integrationSettings = @ Setting (name = JdbcSettings .CONNECTION_PROVIDER ,
2730 value = "org.hibernate.orm.test.datasource.TestDataSourceConnectionProvider" ))
31+ @ SkipForDialect (dialectClass = DB2Dialect .class )
2832public class DataSourceTest {
2933 @ Test
3034 void test (EntityManagerFactoryScope scope ) {
3135 Listener listener = new Listener ();
3236 LogInspectionHelper .registerListener ( listener , ConnectionInfoLogger .INSTANCE );
3337 scope .getEntityManagerFactory ();
3438 LogInspectionHelper .clearAllListeners ( ConnectionInfoLogger .INSTANCE );
35- assertTrue ( listener .seen );
39+ assertTrue ( scope .getDialect () instanceof OracleDialect dialect && dialect .isAutonomous ()
40+ || listener .seen );
3641 }
3742
3843 @ Entity (name ="TestEntity" )
@@ -47,9 +52,8 @@ private static class Listener implements LogListener {
4752 @ Override
4853 public void loggedEvent (Logger .Level level , String renderedMessage , Throwable thrown ) {
4954 if ( renderedMessage .contains ( "Database info:" ) ) {
50- seen = true ;
51- final Properties properties = Environment .getProperties ();
52- assertTrue ( renderedMessage .contains ( split ( ";" , properties .getProperty (JdbcSettings .URL ) )[0 ] ) );
55+ final String url = Environment .getProperties ().getProperty ( JdbcSettings .URL );
56+ seen = renderedMessage .contains ( split ( ";" , url )[0 ] );
5357 }
5458 }
5559 }
0 commit comments