From 54d6f250e2c496a4c6ce82392418a962eca40991 Mon Sep 17 00:00:00 2001 From: Sam Brannen Date: Mon, 29 Aug 2016 13:43:38 +0200 Subject: [PATCH] Disallow empty expression in @DisabledIf This commit ensures that a user provides a non-empty expression in declarations of @DisabledIf. Issue: SPR-14614 --- .../test/context/junit/jupiter/DisabledIfCondition.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spring-test/src/main/java/org/springframework/test/context/junit/jupiter/DisabledIfCondition.java b/spring-test/src/main/java/org/springframework/test/context/junit/jupiter/DisabledIfCondition.java index ada7116924..93458fe757 100644 --- a/spring-test/src/main/java/org/springframework/test/context/junit/jupiter/DisabledIfCondition.java +++ b/spring-test/src/main/java/org/springframework/test/context/junit/jupiter/DisabledIfCondition.java @@ -82,7 +82,9 @@ public class DisabledIfCondition implements ContainerExecutionCondition, TestExe Optional disabledIf = findMergedAnnotation(element, DisabledIf.class); Assert.state(disabledIf.isPresent(), () -> "@DisabledIf must be present on " + element); - String expression = disabledIf.get().expression().trim(); + String expression = disabledIf.map(DisabledIf::expression).filter(StringUtils::hasText).orElseThrow( + () -> new IllegalStateException( + String.format("The expression in @DisabledIf on [%s] must not be blank", element))); if (isDisabled(expression, extensionContext)) { String reason = disabledIf.map(DisabledIf::reason).filter(StringUtils::hasText).orElseGet(