DataSourcePropertyProviderLoader { public static DataSourcePropertyProvider getProvider(final DataSource dataSource) { String dataSourceClassName = dataSource.getClass().getName(); return DATA_SOURCE_PROPERTY_PROVIDERS.containsKey(dataSourceClassName) ? DATA_SOURCE_PROPERTY_PROVIDERS.get(dataSourceClassName) : new DefaultDataSourcePropertyProvider(); }  static DataSourcePropertyProvider getProvider(final DataSource dataSource);  }
@Test public void assertGetProviderByDefault() { assertThat(DataSourcePropertyProviderLoader.getProvider(new BasicDataSource()), instanceOf(DefaultDataSourcePropertyProvider.class)); }
@Test public void assertGetProviderBySPI() { assertThat(DataSourcePropertyProviderLoader.getProvider(new HikariDataSource()), instanceOf(HikariCPPropertyProvider.class)); }