Interface DialectContractProfile


@Incubating(since="8.0", group="dialect-testkit") @SPI({IMPLEMENT,SUPPLY}) public interface DialectContractProfile

Defines one stable, database-free Dialect test profile supplied by a provider to DialectTestKit.

Implementations must return a nonblank stable name(), a fresh Dialect from each createDialect() invocation, and a non-null expected version. Settings must be safe during metadata boot without JDBC metadata, a live connection, or schema execution. They must not select an alternate Dialect.

Since:
8.0
See Also:
  • Method Details

    • name

      String name()
      A stable, human-readable profile name used for dynamic test reporting.
    • createDialect

      Dialect createDialect()
      Create a fresh Dialect instance for a test-kit context.
    • expectedDatabaseVersion

      DatabaseVersion expectedDatabaseVersion()
      The database version the created Dialect is expected to report.
    • settings

      default Map<String,Object> settings()
      Additional database-free bootstrap settings.
    • applicability

      default ContractApplicability applicability(DialectContract contract)
      Determine whether the given optional contract applies.