Skip to content

Commit d6e05dd

Browse files
committed
Polish XmlBeanDefinitionReaderTests
1 parent a92bd42 commit d6e05dd

File tree

1 file changed

+34
-46
lines changed

1 file changed

+34
-46
lines changed

spring-beans/src/test/java/org/springframework/beans/factory/xml/XmlBeanDefinitionReaderTests.java

Lines changed: 34 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616

1717
package org.springframework.beans.factory.xml;
1818

19-
import java.util.Arrays;
20-
2119
import org.junit.jupiter.api.Test;
2220
import org.xml.sax.InputSource;
2321

@@ -29,116 +27,106 @@
2927
import org.springframework.core.io.ClassPathResource;
3028
import org.springframework.core.io.InputStreamResource;
3129
import org.springframework.core.io.Resource;
32-
import org.springframework.util.ObjectUtils;
3330

3431
import static org.assertj.core.api.Assertions.assertThat;
3532
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
33+
import static org.assertj.core.api.Assertions.assertThatNoException;
3634

3735
/**
3836
* @author Rick Evans
3937
* @author Juergen Hoeller
4038
* @author Sam Brannen
4139
*/
42-
public class XmlBeanDefinitionReaderTests {
40+
class XmlBeanDefinitionReaderTests {
41+
42+
private final SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
43+
44+
private final XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(registry);
45+
4346

4447
@Test
45-
public void setParserClassSunnyDay() {
46-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
47-
new XmlBeanDefinitionReader(registry).setDocumentReaderClass(DefaultBeanDefinitionDocumentReader.class);
48+
void setReaderClass() {
49+
assertThatNoException().isThrownBy(() -> reader.setDocumentReaderClass(DefaultBeanDefinitionDocumentReader.class));
4850
}
4951

5052
@Test
51-
public void withOpenInputStream() {
52-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
53+
void withInputStreamResourceWithoutExplicitValidationMode() {
5354
Resource resource = new InputStreamResource(getClass().getResourceAsStream("test.xml"));
54-
assertThatExceptionOfType(BeanDefinitionStoreException.class).isThrownBy(() ->
55-
new XmlBeanDefinitionReader(registry).loadBeanDefinitions(resource));
55+
assertThatExceptionOfType(BeanDefinitionStoreException.class).isThrownBy(() -> reader.loadBeanDefinitions(resource));
5656
}
5757

5858
@Test
59-
public void withOpenInputStreamAndExplicitValidationMode() {
60-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
59+
void withInputStreamResourceAndExplicitValidationMode() {
6160
Resource resource = new InputStreamResource(getClass().getResourceAsStream("test.xml"));
62-
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(registry);
6361
reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_DTD);
6462
reader.loadBeanDefinitions(resource);
65-
testBeanDefinitions(registry);
63+
assertBeanDefinitions(registry);
6664
}
6765

6866
@Test
69-
public void withImport() {
70-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
67+
void withImport() {
7168
Resource resource = new ClassPathResource("import.xml", getClass());
72-
new XmlBeanDefinitionReader(registry).loadBeanDefinitions(resource);
73-
testBeanDefinitions(registry);
69+
reader.loadBeanDefinitions(resource);
70+
assertBeanDefinitions(registry);
7471
}
7572

7673
@Test
77-
public void withWildcardImport() {
78-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
74+
void withWildcardImport() {
7975
Resource resource = new ClassPathResource("importPattern.xml", getClass());
80-
new XmlBeanDefinitionReader(registry).loadBeanDefinitions(resource);
81-
testBeanDefinitions(registry);
76+
reader.loadBeanDefinitions(resource);
77+
assertBeanDefinitions(registry);
8278
}
8379

8480
@Test
85-
public void withInputSource() {
86-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
81+
void withInputSourceWithoutExplicitValidationMode() {
8782
InputSource resource = new InputSource(getClass().getResourceAsStream("test.xml"));
88-
assertThatExceptionOfType(BeanDefinitionStoreException.class).isThrownBy(() ->
89-
new XmlBeanDefinitionReader(registry).loadBeanDefinitions(resource));
83+
assertThatExceptionOfType(BeanDefinitionStoreException.class)
84+
.isThrownBy(() -> reader.loadBeanDefinitions(resource))
85+
.withMessageStartingWith("Unable to determine validation mode for [resource loaded through SAX InputSource]:");
9086
}
9187

9288
@Test
93-
public void withInputSourceAndExplicitValidationMode() {
94-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
89+
void withInputSourceAndExplicitValidationMode() {
9590
InputSource resource = new InputSource(getClass().getResourceAsStream("test.xml"));
96-
XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(registry);
9791
reader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_DTD);
9892
reader.loadBeanDefinitions(resource);
99-
testBeanDefinitions(registry);
93+
assertBeanDefinitions(registry);
10094
}
10195

10296
@Test
103-
public void withFreshInputStream() {
104-
SimpleBeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
97+
void withClassPathResource() {
10598
Resource resource = new ClassPathResource("test.xml", getClass());
106-
new XmlBeanDefinitionReader(registry).loadBeanDefinitions(resource);
107-
testBeanDefinitions(registry);
99+
reader.loadBeanDefinitions(resource);
100+
assertBeanDefinitions(registry);
108101
}
109102

110-
private void testBeanDefinitions(BeanDefinitionRegistry registry) {
103+
private void assertBeanDefinitions(BeanDefinitionRegistry registry) {
111104
assertThat(registry.getBeanDefinitionCount()).isEqualTo(24);
112105
assertThat(registry.getBeanDefinitionNames()).hasSize(24);
113-
assertThat(Arrays.asList(registry.getBeanDefinitionNames()).contains("rod")).isTrue();
114-
assertThat(Arrays.asList(registry.getBeanDefinitionNames()).contains("aliased")).isTrue();
106+
assertThat(registry.getBeanDefinitionNames()).contains("rod", "aliased");
115107
assertThat(registry.containsBeanDefinition("rod")).isTrue();
116108
assertThat(registry.containsBeanDefinition("aliased")).isTrue();
117109
assertThat(registry.getBeanDefinition("rod").getBeanClassName()).isEqualTo(TestBean.class.getName());
118110
assertThat(registry.getBeanDefinition("aliased").getBeanClassName()).isEqualTo(TestBean.class.getName());
119111
assertThat(registry.isAlias("youralias")).isTrue();
120-
String[] aliases = registry.getAliases("aliased");
121-
assertThat(aliases).hasSize(2);
122-
assertThat(ObjectUtils.containsElement(aliases, "myalias")).isTrue();
123-
assertThat(ObjectUtils.containsElement(aliases, "youralias")).isTrue();
112+
assertThat(registry.getAliases("aliased")).containsExactly("myalias", "youralias");
124113
}
125114

126115
@Test
127-
public void dtdValidationAutodetect() {
116+
void dtdValidationAutodetect() {
128117
doTestValidation("validateWithDtd.xml");
129118
}
130119

131120
@Test
132-
public void xsdValidationAutodetect() {
121+
void xsdValidationAutodetect() {
133122
doTestValidation("validateWithXsd.xml");
134123
}
135124

136125
private void doTestValidation(String resourceName) {
137126
DefaultListableBeanFactory factory = new DefaultListableBeanFactory();
138127
Resource resource = new ClassPathResource(resourceName, getClass());
139128
new XmlBeanDefinitionReader(factory).loadBeanDefinitions(resource);
140-
TestBean bean = (TestBean) factory.getBean("testBean");
141-
assertThat(bean).isNotNull();
129+
assertThat((TestBean) factory.getBean("testBean")).isNotNull();
142130
}
143131

144132
}

0 commit comments

Comments
 (0)