Closes gh-13616
This commit is contained in:
Johnny Lim
2018-06-30 02:11:30 +09:00
committed by Stephane Nicoll
parent 809e30506f
commit ab6adc8265
5 changed files with 16 additions and 16 deletions

View File

@@ -42,10 +42,9 @@ class OnExpressionCondition extends SpringBootCondition {
.getAnnotationAttributes(ConditionalOnExpression.class.getName())
.get("value");
expression = wrapIfNecessary(expression);
String rawExpression = expression;
expression = context.getEnvironment().resolvePlaceholders(expression);
ConditionMessage.Builder messageBuilder = ConditionMessage
.forCondition(ConditionalOnExpression.class, "(" + rawExpression + ")");
.forCondition(ConditionalOnExpression.class, "(" + expression + ")");
expression = context.getEnvironment().resolvePlaceholders(expression);
ConfigurableListableBeanFactory beanFactory = context.getBeanFactory();
if (beanFactory != null) {
boolean result = evaluateExpression(beanFactory, expression);

View File

@@ -16,8 +16,7 @@
package org.springframework.boot.autoconfigure.condition;
import java.util.HashMap;
import java.util.Map;
import java.util.Collections;
import org.junit.Test;
@@ -49,7 +48,7 @@ public class ConditionalOnExpressionTests {
}
@Test
public void expressionEvaluatesToTrueRegisterBean() {
public void expressionEvaluatesToTrueRegistersBean() {
this.contextRunner.withUserConfiguration(MissingConfiguration.class)
.run((context) -> assertThat(context).doesNotHaveBean("foo"));
}
@@ -75,10 +74,8 @@ public class ConditionalOnExpressionTests {
private AnnotatedTypeMetadata mockMetaData(String value) {
AnnotatedTypeMetadata metadata = mock(AnnotatedTypeMetadata.class);
Map<String, Object> attributes = new HashMap<>();
attributes.put("value", value);
given(metadata.getAnnotationAttributes(ConditionalOnExpression.class.getName()))
.willReturn(attributes);
.willReturn(Collections.singletonMap("value", value));
return metadata;
}