Class JdbiOtjPostgresExtension

java.lang.Object
org.jdbi.v3.testing.junit5.JdbiExtension
org.jdbi.v3.testing.junit5.JdbiOtjPostgresExtension
All Implemented Interfaces:
org.junit.jupiter.api.extension.AfterAllCallback, org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.BeforeAllCallback, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.Extension, org.junit.jupiter.api.extension.ParameterResolver

public class JdbiOtjPostgresExtension extends JdbiExtension
Jdbi PostgreSQL JUnit 5 rule using the otj-pg-embedded component. Override methods for special case construction:

     @RegisterExtension
     public JdbiExtension extension = new JdbiOtjPostgresExtension() {
         @Override
         protected DataSource createDataSource() {
            ...
         }
     };
 
Use with ExtendWith:

 @ExtendWith(JdbiOtjPostgresExtension.class)
 public class DatabaseTest {
     @Test
     public void testWithJdbi(Jdbi jdbi) {
         ...
     }

     @Test
     public void testWithHandle(Handle handle) {
         ...
     }
 }
 
  • Constructor Details

    • JdbiOtjPostgresExtension

      public JdbiOtjPostgresExtension()
  • Method Details

    • getUrl

      public String getUrl()
      Description copied from class: JdbiExtension
      Returns a JDBC url representing the data source used by this extension. This url is database-specific and may or may not be used to connect to the data source outside testing code that uses this extension (e.g. the JdbiSqliteExtension returns a constant uri for all database instances).
      Specified by:
      getUrl in class JdbiExtension
      Returns:
      A string representing the JDBC URL.
    • customize

      public JdbiOtjPostgresExtension customize(Consumer<com.opentable.db.postgres.embedded.EmbeddedPostgres.Builder> customizer)