Browse Source

Polishing

(cherry picked from commit fdf1418dfb)
pull/30971/head
Juergen Hoeller 3 years ago
parent
commit
840bd574db
  1. 82
      spring-beans/src/test/java/org/springframework/beans/factory/DefaultListableBeanFactoryTests.java
  2. 5
      spring-tx/src/main/java/org/springframework/dao/support/DataAccessUtils.java

82
spring-beans/src/test/java/org/springframework/beans/factory/DefaultListableBeanFactoryTests.java

@ -1271,10 +1271,11 @@ class DefaultListableBeanFactoryTests {
lbf.registerBeanDefinition("rod", bd); lbf.registerBeanDefinition("rod", bd);
RootBeanDefinition bd2 = new RootBeanDefinition(TestBean.class); RootBeanDefinition bd2 = new RootBeanDefinition(TestBean.class);
lbf.registerBeanDefinition("rod2", bd2); lbf.registerBeanDefinition("rod2", bd2);
assertThatExceptionOfType(UnsatisfiedDependencyException.class).isThrownBy(() ->
lbf.autowire(ConstructorDependency.class, AutowireCapableBeanFactory.AUTOWIRE_CONSTRUCTOR, false)) assertThatExceptionOfType(UnsatisfiedDependencyException.class)
.withMessageContaining("rod") .isThrownBy(() -> lbf.autowire(ConstructorDependency.class, AutowireCapableBeanFactory.AUTOWIRE_CONSTRUCTOR, false))
.withMessageContaining("rod2"); .withMessageContaining("rod")
.withMessageContaining("rod2");
} }
@Test @Test
@ -1336,11 +1337,12 @@ class DefaultListableBeanFactoryTests {
RootBeanDefinition bd2 = new RootBeanDefinition(TestBean.class); RootBeanDefinition bd2 = new RootBeanDefinition(TestBean.class);
bd2.setDependsOn("tb1"); bd2.setDependsOn("tb1");
lbf.registerBeanDefinition("tb2", bd2); lbf.registerBeanDefinition("tb2", bd2);
assertThatExceptionOfType(BeanCreationException.class).isThrownBy(() ->
lbf.preInstantiateSingletons()) assertThatExceptionOfType(BeanCreationException.class)
.withMessageContaining("Circular") .isThrownBy(() -> lbf.preInstantiateSingletons())
.withMessageContaining("'tb2'") .withMessageContaining("Circular")
.withMessageContaining("'tb1'"); .withMessageContaining("'tb2'")
.withMessageContaining("'tb1'");
} }
@Test @Test
@ -1354,11 +1356,12 @@ class DefaultListableBeanFactoryTests {
RootBeanDefinition bd3 = new RootBeanDefinition(TestBean.class); RootBeanDefinition bd3 = new RootBeanDefinition(TestBean.class);
bd3.setDependsOn("tb1"); bd3.setDependsOn("tb1");
lbf.registerBeanDefinition("tb3", bd3); lbf.registerBeanDefinition("tb3", bd3);
assertThatExceptionOfType(BeanCreationException.class).isThrownBy(
lbf::preInstantiateSingletons) assertThatExceptionOfType(BeanCreationException.class)
.withMessageContaining("Circular") .isThrownBy(lbf::preInstantiateSingletons)
.withMessageContaining("'tb3'") .withMessageContaining("Circular")
.withMessageContaining("'tb1'"); .withMessageContaining("'tb3'")
.withMessageContaining("'tb1'");
} }
@Test @Test
@ -1493,10 +1496,11 @@ class DefaultListableBeanFactoryTests {
RootBeanDefinition bd2 = new RootBeanDefinition(HighPriorityTestBean.class); RootBeanDefinition bd2 = new RootBeanDefinition(HighPriorityTestBean.class);
lbf.registerBeanDefinition("bd1", bd1); lbf.registerBeanDefinition("bd1", bd1);
lbf.registerBeanDefinition("bd2", bd2); lbf.registerBeanDefinition("bd2", bd2);
assertThatExceptionOfType(NoUniqueBeanDefinitionException.class).isThrownBy(() ->
lbf.getBean(TestBean.class)) assertThatExceptionOfType(NoUniqueBeanDefinitionException.class)
.withMessageContaining("Multiple beans found with the same priority") .isThrownBy(() -> lbf.getBean(TestBean.class))
.withMessageContaining("5"); // conflicting priority .withMessageContaining("Multiple beans found with the same priority")
.withMessageContaining("5"); // conflicting priority
} }
@Test @Test
@ -1698,9 +1702,9 @@ class DefaultListableBeanFactoryTests {
lbf.registerBeanDefinition("bd1", bd1); lbf.registerBeanDefinition("bd1", bd1);
lbf.registerBeanDefinition("bd2", bd2); lbf.registerBeanDefinition("bd2", bd2);
assertThatExceptionOfType(NoUniqueBeanDefinitionException.class).isThrownBy(() -> assertThatExceptionOfType(NoUniqueBeanDefinitionException.class)
lbf.getBean(ConstructorDependency.class, 42)) .isThrownBy(() -> lbf.getBean(ConstructorDependency.class, 42))
.withMessageContaining("more than one 'primary'"); .withMessageContaining("more than one 'primary'");
} }
@Test @Test
@ -1881,10 +1885,11 @@ class DefaultListableBeanFactoryTests {
RootBeanDefinition bd2 = new RootBeanDefinition(TestBean.class); RootBeanDefinition bd2 = new RootBeanDefinition(TestBean.class);
lbf.registerBeanDefinition("test", bd); lbf.registerBeanDefinition("test", bd);
lbf.registerBeanDefinition("spouse", bd2); lbf.registerBeanDefinition("spouse", bd2);
assertThatExceptionOfType(UnsatisfiedDependencyException.class).isThrownBy(() ->
lbf.autowire(DependenciesBean.class, AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, true)) assertThatExceptionOfType(UnsatisfiedDependencyException.class)
.withMessageContaining("test") .isThrownBy(() -> lbf.autowire(DependenciesBean.class, AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, true))
.withMessageContaining("spouse"); .withMessageContaining("test")
.withMessageContaining("spouse");
} }
@Test @Test
@ -1946,10 +1951,11 @@ class DefaultListableBeanFactoryTests {
RootBeanDefinition bd2 = new RootBeanDefinition(HighPriorityTestBean.class); RootBeanDefinition bd2 = new RootBeanDefinition(HighPriorityTestBean.class);
lbf.registerBeanDefinition("test", bd); lbf.registerBeanDefinition("test", bd);
lbf.registerBeanDefinition("spouse", bd2); lbf.registerBeanDefinition("spouse", bd2);
assertThatExceptionOfType(UnsatisfiedDependencyException.class).isThrownBy(() ->
lbf.autowire(DependenciesBean.class, AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, true)) assertThatExceptionOfType(UnsatisfiedDependencyException.class)
.withCauseExactlyInstanceOf(NoUniqueBeanDefinitionException.class) .isThrownBy(() -> lbf.autowire(DependenciesBean.class, AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, true))
.withMessageContaining("5"); .withCauseExactlyInstanceOf(NoUniqueBeanDefinitionException.class)
.withMessageContaining("5");
} }
@Test @Test
@ -2185,19 +2191,21 @@ class DefaultListableBeanFactoryTests {
@Test @Test
void beanDefinitionWithInterface() { void beanDefinitionWithInterface() {
lbf.registerBeanDefinition("test", new RootBeanDefinition(ITestBean.class)); lbf.registerBeanDefinition("test", new RootBeanDefinition(ITestBean.class));
assertThatExceptionOfType(BeanCreationException.class).isThrownBy(() ->
lbf.getBean("test")) assertThatExceptionOfType(BeanCreationException.class)
.withMessageContaining("interface") .isThrownBy(() -> lbf.getBean("test"))
.satisfies(ex -> assertThat(ex.getBeanName()).isEqualTo("test")); .withMessageContaining("interface")
.satisfies(ex -> assertThat(ex.getBeanName()).isEqualTo("test"));
} }
@Test @Test
void beanDefinitionWithAbstractClass() { void beanDefinitionWithAbstractClass() {
lbf.registerBeanDefinition("test", new RootBeanDefinition(AbstractBeanFactory.class)); lbf.registerBeanDefinition("test", new RootBeanDefinition(AbstractBeanFactory.class));
assertThatExceptionOfType(BeanCreationException.class).isThrownBy(() ->
lbf.getBean("test")) assertThatExceptionOfType(BeanCreationException.class)
.withMessageContaining("abstract") .isThrownBy(() -> lbf.getBean("test"))
.satisfies(ex -> assertThat(ex.getBeanName()).isEqualTo("test")); .withMessageContaining("abstract")
.satisfies(ex -> assertThat(ex.getBeanName()).isEqualTo("test"));
} }
@Test @Test

5
spring-tx/src/main/java/org/springframework/dao/support/DataAccessUtils.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2020 the original author or authors. * Copyright 2002-2023 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -29,7 +29,8 @@ import org.springframework.util.NumberUtils;
/** /**
* Miscellaneous utility methods for DAO implementations. * Miscellaneous utility methods for DAO implementations.
* Useful with any data access technology. *
* <p>Useful with any data access technology.
* *
* @author Juergen Hoeller * @author Juergen Hoeller
* @since 1.0.2 * @since 1.0.2

Loading…
Cancel
Save