Remove unused generic from ContainerConnectionSource

See gh-35017
This commit is contained in:
Andy Wilkinson 2023-04-17 13:58:46 +01:00
parent 8ba7e2d020
commit 7b3e3deb58
26 changed files with 60 additions and 80 deletions

View File

@ -41,7 +41,7 @@ import org.springframework.util.ObjectUtils;
* @since 3.1.0
*/
public abstract class ContainerConnectionDetailsFactory<D extends ConnectionDetails, C extends Container<?>>
implements ConnectionDetailsFactory<ContainerConnectionSource<D, C>, D> {
implements ConnectionDetailsFactory<ContainerConnectionSource<C>, D> {
/**
* Constant passed to the constructor when any connection name is accepted.
@ -72,7 +72,7 @@ public abstract class ContainerConnectionDetailsFactory<D extends ConnectionDeta
}
@Override
public final D getConnectionDetails(ContainerConnectionSource<D, C> source) {
public final D getConnectionDetails(ContainerConnectionSource<C> source) {
if (!hasRequiredClasses()) {
return null;
}
@ -105,7 +105,7 @@ public abstract class ContainerConnectionDetailsFactory<D extends ConnectionDeta
* @param source the source
* @return the service connection or {@code null}.
*/
protected abstract D getContainerConnectionDetails(ContainerConnectionSource<D, C> source);
protected abstract D getContainerConnectionDetails(ContainerConnectionSource<C> source);
/**
* Convenient base class for {@link ConnectionDetails} results that are backed by a
@ -119,7 +119,7 @@ public abstract class ContainerConnectionDetailsFactory<D extends ConnectionDeta
* Create a new {@link ContainerConnectionDetails} instance.
* @param source the source {@link ContainerConnectionSource}
*/
protected ContainerConnectionDetails(ContainerConnectionSource<?, ?> source) {
protected ContainerConnectionDetails(ContainerConnectionSource<?> source) {
Assert.notNull(source, "Source must not be null");
this.origin = source.getOrigin();
}

View File

@ -23,7 +23,6 @@ import org.apache.commons.logging.LogFactory;
import org.testcontainers.containers.Container;
import org.testcontainers.utility.DockerImageName;
import org.springframework.boot.autoconfigure.service.connection.ConnectionDetails;
import org.springframework.boot.origin.Origin;
import org.springframework.boot.origin.OriginProvider;
import org.springframework.core.annotation.MergedAnnotation;
@ -35,7 +34,6 @@ import org.springframework.util.StringUtils;
* {@link ServiceConnection @ServiceConnection} annotated {@link Container} that provides
* the service.
*
* @param <D> the connection details type
* @param <C> the generic container type
* @author Moritz Halbritter
* @author Andy Wilkinson
@ -43,8 +41,7 @@ import org.springframework.util.StringUtils;
* @since 3.1.0
* @see ContainerConnectionDetailsFactory
*/
public final class ContainerConnectionSource<D extends ConnectionDetails, C extends Container<?>>
implements OriginProvider {
public final class ContainerConnectionSource<C extends Container<?>> implements OriginProvider {
private static final Log logger = LogFactory.getLog(ContainerConnectionSource.class);

View File

@ -53,10 +53,10 @@ class ContainerConnectionSourcesRegistrar {
private final ConnectionDetailsFactories connectionDetailsFactories;
private final List<ContainerConnectionSource<?, ?>> sources;
private final List<ContainerConnectionSource<?>> sources;
ContainerConnectionSourcesRegistrar(ListableBeanFactory beanFactory,
ConnectionDetailsFactories connectionDetailsFactories, List<ContainerConnectionSource<?, ?>> sources) {
ConnectionDetailsFactories connectionDetailsFactories, List<ContainerConnectionSource<?>> sources) {
this.beanFactory = beanFactory;
this.connectionDetailsFactories = connectionDetailsFactories;
this.sources = sources;
@ -66,7 +66,7 @@ class ContainerConnectionSourcesRegistrar {
this.sources.forEach((source) -> registerBeanDefinition(registry, source));
}
private void registerBeanDefinition(BeanDefinitionRegistry registry, ContainerConnectionSource<?, ?> source) {
private void registerBeanDefinition(BeanDefinitionRegistry registry, ContainerConnectionSource<?> source) {
getConnectionDetails(source)
.forEach((connectionDetailsType, connectionDetails) -> registerBeanDefinition(registry, source,
connectionDetailsType, connectionDetails));
@ -80,7 +80,7 @@ class ContainerConnectionSourcesRegistrar {
}
@SuppressWarnings("unchecked")
private <T> void registerBeanDefinition(BeanDefinitionRegistry registry, ContainerConnectionSource<?, ?> source,
private <T> void registerBeanDefinition(BeanDefinitionRegistry registry, ContainerConnectionSource<?> source,
Class<?> connectionDetailsType, ConnectionDetails connectionDetails) {
String[] existingBeans = this.beanFactory.getBeanNamesForType(connectionDetailsType);
if (!ObjectUtils.isEmpty(existingBeans)) {
@ -95,7 +95,7 @@ class ContainerConnectionSourcesRegistrar {
registry.registerBeanDefinition(beanName, new RootBeanDefinition(beanType, beanSupplier));
}
private String getBeanName(ContainerConnectionSource<?, ?> source, ConnectionDetails connectionDetails) {
private String getBeanName(ContainerConnectionSource<?> source, ConnectionDetails connectionDetails) {
List<String> parts = new ArrayList<>();
parts.add(ClassUtils.getShortNameAsProperty(connectionDetails.getClass()));
parts.add("for");

View File

@ -64,14 +64,14 @@ public class ServiceConnectionAutoConfiguration {
BeanDefinitionRegistry registry) {
if (this.beanFactory instanceof ConfigurableListableBeanFactory listableBeanFactory) {
ConnectionDetailsFactories connectionDetailsFactories = new ConnectionDetailsFactories();
List<ContainerConnectionSource<?, ?>> sources = getSources(listableBeanFactory);
List<ContainerConnectionSource<?>> sources = getSources(listableBeanFactory);
new ContainerConnectionSourcesRegistrar(listableBeanFactory, connectionDetailsFactories, sources)
.registerBeanDefinitions(registry);
}
}
private List<ContainerConnectionSource<?, ?>> getSources(ConfigurableListableBeanFactory beanFactory) {
List<ContainerConnectionSource<?, ?>> sources = new ArrayList<>();
private List<ContainerConnectionSource<?>> getSources(ConfigurableListableBeanFactory beanFactory) {
List<ContainerConnectionSource<?>> sources = new ArrayList<>();
for (String candidate : beanFactory.getBeanNamesForType(Container.class)) {
Set<ServiceConnection> annotations = beanFactory.findAllAnnotationsOnBean(candidate,
ServiceConnection.class, false);
@ -82,8 +82,8 @@ public class ServiceConnectionAutoConfiguration {
return sources;
}
private void addSources(List<ContainerConnectionSource<?, ?>> sources,
ConfigurableListableBeanFactory beanFactory, String beanName, Set<ServiceConnection> annotations) {
private void addSources(List<ContainerConnectionSource<?>> sources, ConfigurableListableBeanFactory beanFactory,
String beanName, Set<ServiceConnection> annotations) {
BeanDefinition beanDefinition = beanFactory.getBeanDefinition(beanName);
Origin origin = new BeanOrigin(beanName, beanDefinition);
Container<?> container = beanFactory.getBean(beanName, Container.class);

View File

@ -35,15 +35,15 @@ import org.springframework.test.context.MergedContextConfiguration;
*/
class ServiceConnectionContextCustomizer implements ContextCustomizer {
private final List<ContainerConnectionSource<?, ?>> sources;
private final List<ContainerConnectionSource<?>> sources;
private final ConnectionDetailsFactories connectionDetailsFactories;
ServiceConnectionContextCustomizer(List<ContainerConnectionSource<?, ?>> sources) {
ServiceConnectionContextCustomizer(List<ContainerConnectionSource<?>> sources) {
this(sources, new ConnectionDetailsFactories());
}
ServiceConnectionContextCustomizer(List<ContainerConnectionSource<?, ?>> sources,
ServiceConnectionContextCustomizer(List<ContainerConnectionSource<?>> sources,
ConnectionDetailsFactories connectionDetailsFactories) {
this.sources = sources;
this.connectionDetailsFactories = connectionDetailsFactories;
@ -58,7 +58,7 @@ class ServiceConnectionContextCustomizer implements ContextCustomizer {
}
}
List<ContainerConnectionSource<?, ?>> getSources() {
List<ContainerConnectionSource<?>> getSources() {
return this.sources;
}

View File

@ -49,12 +49,12 @@ class ServiceConnectionContextCustomizerFactory implements ContextCustomizerFact
@Override
public ContextCustomizer createContextCustomizer(Class<?> testClass,
List<ContextConfigurationAttributes> configAttributes) {
List<ContainerConnectionSource<?, ?>> sources = new ArrayList<>();
List<ContainerConnectionSource<?>> sources = new ArrayList<>();
findSources(testClass, sources);
return (sources.isEmpty()) ? null : new ServiceConnectionContextCustomizer(sources);
}
private void findSources(Class<?> clazz, List<ContainerConnectionSource<?, ?>> sources) {
private void findSources(Class<?> clazz, List<ContainerConnectionSource<?>> sources) {
ReflectionUtils.doWithFields(clazz, (field) -> {
MergedAnnotations annotations = MergedAnnotations.from(field);
annotations.stream(ServiceConnection.class)
@ -65,7 +65,7 @@ class ServiceConnectionContextCustomizerFactory implements ContextCustomizerFact
}
}
private ContainerConnectionSource<?, ?> createSource(Field field, MergedAnnotation<ServiceConnection> annotation) {
private ContainerConnectionSource<?> createSource(Field field, MergedAnnotation<ServiceConnection> annotation) {
Assert.state(Modifier.isStatic(field.getModifiers()),
() -> "@ServiceConnection field '%s' must be static".formatted(field.getName()));
String beanNameSuffix = StringUtils.capitalize(ClassUtils.getShortNameAsProperty(field.getDeclaringClass()))

View File

@ -40,7 +40,7 @@ class RabbitContainerConnectionDetailsFactory
@Override
protected RabbitConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<RabbitConnectionDetails, RabbitMQContainer> source) {
ContainerConnectionSource<RabbitMQContainer> source) {
return new RabbitMqContainerConnectionDetails(source);
}
@ -52,8 +52,7 @@ class RabbitContainerConnectionDetailsFactory
private final RabbitMQContainer container;
private RabbitMqContainerConnectionDetails(
ContainerConnectionSource<RabbitConnectionDetails, RabbitMQContainer> source) {
private RabbitMqContainerConnectionDetails(ContainerConnectionSource<RabbitMQContainer> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -39,7 +39,7 @@ class CassandraContainerConnectionDetailsFactory
@Override
protected CassandraConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<CassandraConnectionDetails, CassandraContainer<?>> source) {
ContainerConnectionSource<CassandraContainer<?>> source) {
return new CassandraContainerConnectionDetails(source);
}
@ -51,8 +51,7 @@ class CassandraContainerConnectionDetailsFactory
private final CassandraContainer<?> container;
private CassandraContainerConnectionDetails(
ContainerConnectionSource<CassandraConnectionDetails, CassandraContainer<?>> source) {
private CassandraContainerConnectionDetails(ContainerConnectionSource<CassandraContainer<?>> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -37,7 +37,7 @@ class CouchbaseContainerConnectionDetailsFactory
@Override
protected CouchbaseConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<CouchbaseConnectionDetails, CouchbaseContainer> source) {
ContainerConnectionSource<CouchbaseContainer> source) {
return new CouchbaseContainerConnectionDetails(source);
}
@ -49,8 +49,7 @@ class CouchbaseContainerConnectionDetailsFactory
private final CouchbaseContainer container;
private CouchbaseContainerConnectionDetails(
ContainerConnectionSource<CouchbaseConnectionDetails, CouchbaseContainer> source) {
private CouchbaseContainerConnectionDetails(ContainerConnectionSource<CouchbaseContainer> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -42,7 +42,7 @@ class ElasticsearchContainerConnectionDetailsFactory
@Override
protected ElasticsearchConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<ElasticsearchConnectionDetails, ElasticsearchContainer> source) {
ContainerConnectionSource<ElasticsearchContainer> source) {
return new ElasticsearchContainerConnectionDetails(source);
}
@ -55,8 +55,7 @@ class ElasticsearchContainerConnectionDetailsFactory
private final List<Node> nodes;
private ElasticsearchContainerConnectionDetails(
ContainerConnectionSource<ElasticsearchConnectionDetails, ElasticsearchContainer> source) {
private ElasticsearchContainerConnectionDetails(ContainerConnectionSource<ElasticsearchContainer> source) {
super(source);
this.nodes = List.of(new Node(source.getContainer().getHost(),
source.getContainer().getMappedPort(DEFAULT_PORT), Protocol.HTTP, null, null));

View File

@ -35,7 +35,7 @@ class FlywayContainerConnectionDetailsFactory
@Override
protected FlywayConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<FlywayConnectionDetails, JdbcDatabaseContainer<?>> source) {
ContainerConnectionSource<JdbcDatabaseContainer<?>> source) {
return new FlywayContainerConnectionDetails(source);
}
@ -47,8 +47,7 @@ class FlywayContainerConnectionDetailsFactory
private final JdbcDatabaseContainer<?> container;
private FlywayContainerConnectionDetails(
ContainerConnectionSource<FlywayConnectionDetails, JdbcDatabaseContainer<?>> source) {
private FlywayContainerConnectionDetails(ContainerConnectionSource<JdbcDatabaseContainer<?>> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -39,7 +39,7 @@ class InfluxDbContainerConnectionDetailsFactory
@Override
protected InfluxDbConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<InfluxDbConnectionDetails, InfluxDBContainer<?>> source) {
ContainerConnectionSource<InfluxDBContainer<?>> source) {
return new InfluxDbContainerConnectionDetails(source);
}
@ -51,8 +51,7 @@ class InfluxDbContainerConnectionDetailsFactory
private final InfluxDBContainer<?> container;
private InfluxDbContainerConnectionDetails(
ContainerConnectionSource<InfluxDbConnectionDetails, InfluxDBContainer<?>> source) {
private InfluxDbContainerConnectionDetails(ContainerConnectionSource<InfluxDBContainer<?>> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -36,7 +36,7 @@ class JdbcContainerConnectionDetailsFactory
@Override
protected JdbcConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<JdbcConnectionDetails, JdbcDatabaseContainer<?>> source) {
ContainerConnectionSource<JdbcDatabaseContainer<?>> source) {
return new JdbcContainerConnectionDetails(source);
}
@ -48,8 +48,7 @@ class JdbcContainerConnectionDetailsFactory
private final JdbcDatabaseContainer<?> container;
private JdbcContainerConnectionDetails(
ContainerConnectionSource<JdbcConnectionDetails, JdbcDatabaseContainer<?>> source) {
private JdbcContainerConnectionDetails(ContainerConnectionSource<JdbcDatabaseContainer<?>> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -38,8 +38,7 @@ class KafkaContainerConnectionDetailsFactory
extends ContainerConnectionDetailsFactory<KafkaConnectionDetails, KafkaContainer> {
@Override
protected KafkaConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<KafkaConnectionDetails, KafkaContainer> source) {
protected KafkaConnectionDetails getContainerConnectionDetails(ContainerConnectionSource<KafkaContainer> source) {
return new KafkaContainerConnectionDetails(source);
}
@ -51,8 +50,7 @@ class KafkaContainerConnectionDetailsFactory
private final KafkaContainer container;
private KafkaContainerConnectionDetails(
ContainerConnectionSource<KafkaConnectionDetails, KafkaContainer> source) {
private KafkaContainerConnectionDetails(ContainerConnectionSource<KafkaContainer> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -35,7 +35,7 @@ class LiquibaseContainerConnectionDetailsFactory
@Override
protected LiquibaseConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<LiquibaseConnectionDetails, JdbcDatabaseContainer<?>> source) {
ContainerConnectionSource<JdbcDatabaseContainer<?>> source) {
return new LiquibaseContainerConnectionDetails(source);
}
@ -47,8 +47,7 @@ class LiquibaseContainerConnectionDetailsFactory
private final JdbcDatabaseContainer<?> container;
private LiquibaseContainerConnectionDetails(
ContainerConnectionSource<LiquibaseConnectionDetails, JdbcDatabaseContainer<?>> source) {
private LiquibaseContainerConnectionDetails(ContainerConnectionSource<JdbcDatabaseContainer<?>> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -40,8 +40,7 @@ class MongoContainerConnectionDetailsFactory
}
@Override
protected MongoConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<MongoConnectionDetails, MongoDBContainer> source) {
protected MongoConnectionDetails getContainerConnectionDetails(ContainerConnectionSource<MongoDBContainer> source) {
return new MongoContainerConnectionDetails(source);
}
@ -53,8 +52,7 @@ class MongoContainerConnectionDetailsFactory
private final ConnectionString connectionString;
private MongoContainerConnectionDetails(
ContainerConnectionSource<MongoConnectionDetails, MongoDBContainer> source) {
private MongoContainerConnectionDetails(ContainerConnectionSource<MongoDBContainer> source) {
super(source);
this.connectionString = new ConnectionString(source.getContainer().getReplicaSetUrl());
}

View File

@ -44,7 +44,7 @@ class Neo4jContainerConnectionDetailsFactory
@Override
protected Neo4jConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<Neo4jConnectionDetails, Neo4jContainer<?>> source) {
ContainerConnectionSource<Neo4jContainer<?>> source) {
return new Neo4jContainerConnectionDetails(source);
}
@ -56,8 +56,7 @@ class Neo4jContainerConnectionDetailsFactory
private final Neo4jContainer<?> container;
private Neo4jContainerConnectionDetails(
ContainerConnectionSource<Neo4jConnectionDetails, Neo4jContainer<?>> source) {
private Neo4jContainerConnectionDetails(ContainerConnectionSource<Neo4jContainer<?>> source) {
super(source);
this.container = source.getContainer();
}

View File

@ -41,8 +41,7 @@ class MariaDbR2dbcContainerConnectionDetailsFactory
}
@Override
public R2dbcConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<R2dbcConnectionDetails, MariaDBContainer<?>> source) {
public R2dbcConnectionDetails getContainerConnectionDetails(ContainerConnectionSource<MariaDBContainer<?>> source) {
return new R2dbcDatabaseContainerConnectionDetails(source.getContainer());
}

View File

@ -42,7 +42,7 @@ class MsSqlServerR2dbcContainerConnectionDetailsFactory
@Override
public R2dbcConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<R2dbcConnectionDetails, MSSQLServerContainer<?>> source) {
ContainerConnectionSource<MSSQLServerContainer<?>> source) {
return new R2dbcDatabaseContainerConnectionDetails(source.getContainer());
}

View File

@ -41,8 +41,7 @@ class MySqlR2dbcContainerConnectionDetailsFactory
}
@Override
public R2dbcConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<R2dbcConnectionDetails, MySQLContainer<?>> source) {
public R2dbcConnectionDetails getContainerConnectionDetails(ContainerConnectionSource<MySQLContainer<?>> source) {
return new R2dbcDatabaseContainerConnectionDetails(source.getContainer());
}

View File

@ -42,7 +42,7 @@ class PostgresR2dbcContainerConnectionDetailsFactory
@Override
public R2dbcConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<R2dbcConnectionDetails, PostgreSQLContainer<?>> source) {
ContainerConnectionSource<PostgreSQLContainer<?>> source) {
return new R2dbcDatabaseContainerConnectionDetails(source.getContainer());
}

View File

@ -41,8 +41,7 @@ class RedisContainerConnectionDetailsFactory
}
@Override
public RedisConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<RedisConnectionDetails, Container<?>> source) {
public RedisConnectionDetails getContainerConnectionDetails(ContainerConnectionSource<Container<?>> source) {
return new RedisContainerConnectionDetails(source);
}
@ -54,8 +53,7 @@ class RedisContainerConnectionDetailsFactory
private final Standalone standalone;
private RedisContainerConnectionDetails(
ContainerConnectionSource<RedisConnectionDetails, Container<?>> source) {
private RedisContainerConnectionDetails(ContainerConnectionSource<Container<?>> source) {
super(source);
this.standalone = Standalone.of(source.getContainer().getHost(),
source.getContainer().getFirstMappedPort());

View File

@ -50,7 +50,7 @@ class ContainerConnectionDetailsFactoryTests {
private MergedAnnotation<ServiceConnection> annotation;
private ContainerConnectionSource<?, ?> source;
private ContainerConnectionSource<?> source;
@BeforeEach
void setup() {
@ -87,7 +87,7 @@ class ContainerConnectionDetailsFactoryTests {
@Test
void getConnectionDetailsWhenContainerTypeDoesNotMatchReturnsNull() {
ElasticsearchContainer container = mock(ElasticsearchContainer.class);
ContainerConnectionSource<?, ?> source = new ContainerConnectionSource<>(this.beanNameSuffix, this.origin,
ContainerConnectionSource<?> source = new ContainerConnectionSource<>(this.beanNameSuffix, this.origin,
container, this.annotation);
TestContainerConnectionDetailsFactory factory = new TestContainerConnectionDetailsFactory();
ConnectionDetails connectionDetails = getConnectionDetails(factory, source);
@ -103,7 +103,7 @@ class ContainerConnectionDetailsFactoryTests {
@SuppressWarnings({ "rawtypes", "unchecked" })
private ConnectionDetails getConnectionDetails(ConnectionDetailsFactory<?, ?> factory,
ContainerConnectionSource<?, ?> source) {
ContainerConnectionSource<?> source) {
return ((ConnectionDetailsFactory) factory).getConnectionDetails(source);
}
@ -123,14 +123,14 @@ class ContainerConnectionDetailsFactoryTests {
@Override
protected JdbcConnectionDetails getContainerConnectionDetails(
ContainerConnectionSource<JdbcConnectionDetails, JdbcDatabaseContainer<?>> source) {
ContainerConnectionSource<JdbcDatabaseContainer<?>> source) {
return new TestContainerConnectionDetails(source);
}
static class TestContainerConnectionDetails extends ContainerConnectionDetails
implements JdbcConnectionDetails {
TestContainerConnectionDetails(ContainerConnectionSource<?, ?> source) {
TestContainerConnectionDetails(ContainerConnectionSource<?> source) {
super(source);
}

View File

@ -50,7 +50,7 @@ class ContainerConnectionSourceTests {
private MergedAnnotation<ServiceConnection> annotation;
private ContainerConnectionSource<?, ?> source;
private ContainerConnectionSource<?> source;
@BeforeEach
void setup() {

View File

@ -79,7 +79,7 @@ class ServiceConnectionContextCustomizerFactoryTests {
void createContextCustomizerCreatesCustomizerSourceWithSensibleBeanNameSuffix() {
ServiceConnectionContextCustomizer customizer = (ServiceConnectionContextCustomizer) this.factory
.createContextCustomizer(SingleServiceConnection.class, null);
ContainerConnectionSource<?, ?> source = customizer.getSources().get(0);
ContainerConnectionSource<?> source = customizer.getSources().get(0);
assertThat(source.getBeanNameSuffix()).isEqualTo("SingleServiceConnectionService1");
}
@ -87,7 +87,7 @@ class ServiceConnectionContextCustomizerFactoryTests {
void createContextCustomizerCreatesCustomizerSourceWithSensibleOrigin() {
ServiceConnectionContextCustomizer customizer = (ServiceConnectionContextCustomizer) this.factory
.createContextCustomizer(SingleServiceConnection.class, null);
ContainerConnectionSource<?, ?> source = customizer.getSources().get(0);
ContainerConnectionSource<?> source = customizer.getSources().get(0);
assertThat(source.getOrigin())
.hasToString("ServiceConnectionContextCustomizerFactoryTests.SingleServiceConnection.service1");
}
@ -96,7 +96,7 @@ class ServiceConnectionContextCustomizerFactoryTests {
void createContextCustomizerCreatesCustomizerSourceWithSensibleToString() {
ServiceConnectionContextCustomizer customizer = (ServiceConnectionContextCustomizer) this.factory
.createContextCustomizer(SingleServiceConnection.class, null);
ContainerConnectionSource<?, ?> source = customizer.getSources().get(0);
ContainerConnectionSource<?> source = customizer.getSources().get(0);
assertThat(source).hasToString(
"@ServiceConnection source for ServiceConnectionContextCustomizerFactoryTests.SingleServiceConnection.service1");
}

View File

@ -60,7 +60,7 @@ class ServiceConnectionContextCustomizerTests {
private MergedAnnotation<ServiceConnection> annotation;
private ContainerConnectionSource<?, ?> source;
private ContainerConnectionSource<?> source;
private ConnectionDetailsFactories factories;