|
25 | 25 | import org.springframework.beans.testfixture.beans.TestBean; |
26 | 26 | import org.springframework.core.OverridingClassLoader; |
27 | 27 | import org.springframework.core.io.DefaultResourceLoader; |
| 28 | +import org.springframework.core.io.UrlResource; |
28 | 29 |
|
29 | 30 | import static org.assertj.core.api.Assertions.assertThat; |
30 | 31 | import static org.assertj.core.api.Assertions.assertThatExceptionOfType; |
@@ -152,7 +153,7 @@ public void setPropertyTypeMismatch() { |
152 | 153 | } |
153 | 154 |
|
154 | 155 | @Test |
155 | | - public void propertyDescriptors() { |
| 156 | + public void propertyDescriptors() throws Exception { |
156 | 157 | TestBean target = new TestBean(); |
157 | 158 | target.setSpouse(new TestBean()); |
158 | 159 | BeanWrapper accessor = createAccessor(target); |
@@ -181,11 +182,29 @@ public void propertyDescriptors() { |
181 | 182 | assertThat(accessor.isReadableProperty("class.package")).isFalse(); |
182 | 183 | assertThat(accessor.isReadableProperty("class.module")).isFalse(); |
183 | 184 | assertThat(accessor.isReadableProperty("class.classLoader")).isFalse(); |
| 185 | + assertThat(accessor.isReadableProperty("class.name")).isTrue(); |
| 186 | + assertThat(accessor.isReadableProperty("class.simpleName")).isTrue(); |
184 | 187 | assertThat(accessor.isReadableProperty("classLoader")).isTrue(); |
185 | 188 | assertThat(accessor.isWritableProperty("classLoader")).isTrue(); |
186 | 189 | OverridingClassLoader ocl = new OverridingClassLoader(getClass().getClassLoader()); |
187 | 190 | accessor.setPropertyValue("classLoader", ocl); |
188 | 191 | assertThat(accessor.getPropertyValue("classLoader")).isSameAs(ocl); |
| 192 | + |
| 193 | + accessor = createAccessor(new UrlResource("https://spring.io")); |
| 194 | + |
| 195 | + assertThat(accessor.isReadableProperty("class.package")).isFalse(); |
| 196 | + assertThat(accessor.isReadableProperty("class.module")).isFalse(); |
| 197 | + assertThat(accessor.isReadableProperty("class.classLoader")).isFalse(); |
| 198 | + assertThat(accessor.isReadableProperty("class.name")).isTrue(); |
| 199 | + assertThat(accessor.isReadableProperty("class.simpleName")).isTrue(); |
| 200 | + assertThat(accessor.isReadableProperty("URL.protocol")).isTrue(); |
| 201 | + assertThat(accessor.isReadableProperty("URL.host")).isTrue(); |
| 202 | + assertThat(accessor.isReadableProperty("URL.port")).isTrue(); |
| 203 | + assertThat(accessor.isReadableProperty("URL.file")).isTrue(); |
| 204 | + assertThat(accessor.isReadableProperty("URL.content")).isFalse(); |
| 205 | + assertThat(accessor.isReadableProperty("inputStream")).isFalse(); |
| 206 | + assertThat(accessor.isReadableProperty("filename")).isTrue(); |
| 207 | + assertThat(accessor.isReadableProperty("description")).isTrue(); |
189 | 208 | } |
190 | 209 |
|
191 | 210 | @Test |
|
0 commit comments