@Test void cacheConfigurationConditionalOnClass() { this.contextRunner .withClassLoader(new FilteredClassLoader("javax.cache.CacheManager")) .run((context) -> assertThat(context) .doesNotHaveBean(JCacheManagerCustomizer.class)); }
@Test public void shouldNotConfigureIfHttpClientIsMissing() { contextRunner .withUserConfiguration(AuthenticationFactoryConfiguration.class) .withClassLoader( new FilteredClassLoader("reactor.netty.http.client.HttpClient")) .run(context -> { assertThat(context.getBeanNamesForType(ReactiveVaultOperations.class)) .isEmpty(); }); }
@Test void testNoDecoratingDefaultDataSourceWithoutAdapterDependency() { ApplicationContextRunner contextRunner = this.contextRunner.withClassLoader(new HidePackagesClassLoader("net.ttddyy.dsproxy", "com.p6spy", "com.vladmihalcea.flexypool.adaptor")); contextRunner.run(context -> { assertThat(context).doesNotHaveBean(DecoratedDataSource.class); }); }
@Test void testDecoratingWhenDefaultProxyProviderNotAvailable() { ApplicationContextRunner contextRunner = this.contextRunner.withClassLoader(new HidePackagesClassLoader("com.vladmihalcea.flexypool")); contextRunner.run(context -> { DataSource dataSource = context.getBean(DataSource.class); assertThat(((DecoratedDataSource) dataSource).getRealDataSource()).isInstanceOf(HikariDataSource.class); assertThatDataSourceDecoratingChain(dataSource).containsExactly(P6DataSource.class, ProxyDataSource.class); }); }