Browse Source

Revise system property replacement tests

See gh-22959
pull/23837/head
Juergen Hoeller 6 years ago
parent
commit
55e601c322
  1. 28
      spring-core/src/test/java/org/springframework/core/io/ResourceEditorTests.java
  2. 14
      spring-core/src/test/java/org/springframework/core/io/support/ResourceArrayPropertyEditorTests.java

28
spring-core/src/test/java/org/springframework/core/io/ResourceEditorTests.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2010 the original author or authors.
* Copyright 2002-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -34,7 +34,7 @@ import static org.junit.Assert.*; @@ -34,7 +34,7 @@ import static org.junit.Assert.*;
public class ResourceEditorTests {
@Test
public void sunnyDay() throws Exception {
public void sunnyDay() {
PropertyEditor editor = new ResourceEditor();
editor.setAsText("classpath:org/springframework/core/io/ResourceEditorTests.class");
Resource resource = (Resource) editor.getValue();
@ -43,19 +43,19 @@ public class ResourceEditorTests { @@ -43,19 +43,19 @@ public class ResourceEditorTests {
}
@Test(expected = IllegalArgumentException.class)
public void ctorWithNullCtorArgs() throws Exception {
public void ctorWithNullCtorArgs() {
new ResourceEditor(null, null);
}
@Test
public void setAndGetAsTextWithNull() throws Exception {
public void setAndGetAsTextWithNull() {
PropertyEditor editor = new ResourceEditor();
editor.setAsText(null);
assertEquals("", editor.getAsText());
}
@Test
public void setAndGetAsTextWithWhitespaceResource() throws Exception {
public void setAndGetAsTextWithWhitespaceResource() {
PropertyEditor editor = new ResourceEditor();
editor.setAsText(" ");
assertEquals("", editor.getAsText());
@ -63,6 +63,20 @@ public class ResourceEditorTests { @@ -63,6 +63,20 @@ public class ResourceEditorTests {
@Test
public void testSystemPropertyReplacement() {
PropertyEditor editor = new ResourceEditor();
System.setProperty("test.prop", "foo");
try {
editor.setAsText("${test.prop}");
Resource resolved = (Resource) editor.getValue();
assertEquals("foo", resolved.getFilename());
}
finally {
System.getProperties().remove("test.prop");
}
}
@Test
public void testSystemPropertyReplacementWithUnresolvablePlaceholder() {
PropertyEditor editor = new ResourceEditor();
System.setProperty("test.prop", "foo");
try {
@ -76,13 +90,11 @@ public class ResourceEditorTests { @@ -76,13 +90,11 @@ public class ResourceEditorTests {
}
@Test(expected = IllegalArgumentException.class)
public void testStrictSystemPropertyReplacement() {
public void testStrictSystemPropertyReplacementWithUnresolvablePlaceholder() {
PropertyEditor editor = new ResourceEditor(new DefaultResourceLoader(), new StandardEnvironment(), false);
System.setProperty("test.prop", "foo");
try {
editor.setAsText("${test.prop}-${bar}");
Resource resolved = (Resource) editor.getValue();
assertEquals("foo-${bar}", resolved.getFilename());
}
finally {
System.getProperties().remove("test.prop");

14
spring-core/src/test/java/org/springframework/core/io/support/ResourceArrayPropertyEditorTests.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2012 the original author or authors.
* Copyright 2002-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -32,7 +32,7 @@ import static org.junit.Assert.*; @@ -32,7 +32,7 @@ import static org.junit.Assert.*;
public class ResourceArrayPropertyEditorTests {
@Test
public void testVanillaResource() throws Exception {
public void testVanillaResource() {
PropertyEditor editor = new ResourceArrayPropertyEditor();
editor.setAsText("classpath:org/springframework/core/io/support/ResourceArrayPropertyEditor.class");
Resource[] resources = (Resource[]) editor.getValue();
@ -41,7 +41,7 @@ public class ResourceArrayPropertyEditorTests { @@ -41,7 +41,7 @@ public class ResourceArrayPropertyEditorTests {
}
@Test
public void testPatternResource() throws Exception {
public void testPatternResource() {
// N.B. this will sometimes fail if you use classpath: instead of classpath*:.
// The result depends on the classpath - if test-classes are segregated from classes
// and they come first on the classpath (like in Maven) then it breaks, if classes
@ -58,9 +58,9 @@ public class ResourceArrayPropertyEditorTests { @@ -58,9 +58,9 @@ public class ResourceArrayPropertyEditorTests {
PropertyEditor editor = new ResourceArrayPropertyEditor();
System.setProperty("test.prop", "foo");
try {
editor.setAsText("${test.prop}-${bar}");
editor.setAsText("${test.prop}");
Resource[] resources = (Resource[]) editor.getValue();
assertEquals("foo-${bar}", resources[0].getFilename());
assertEquals("foo", resources[0].getFilename());
}
finally {
System.getProperties().remove("test.prop");
@ -68,15 +68,13 @@ public class ResourceArrayPropertyEditorTests { @@ -68,15 +68,13 @@ public class ResourceArrayPropertyEditorTests {
}
@Test(expected = IllegalArgumentException.class)
public void testStrictSystemPropertyReplacement() {
public void testStrictSystemPropertyReplacementWithUnresolvablePlaceholder() {
PropertyEditor editor = new ResourceArrayPropertyEditor(
new PathMatchingResourcePatternResolver(), new StandardEnvironment(),
false);
System.setProperty("test.prop", "foo");
try {
editor.setAsText("${test.prop}-${bar}");
Resource[] resources = (Resource[]) editor.getValue();
assertEquals("foo-${bar}", resources[0].getFilename());
}
finally {
System.getProperties().remove("test.prop");

Loading…
Cancel
Save