committed by
Mark Paluch
parent
0fb0b53a95
commit
797e17d9a8
@@ -36,7 +36,8 @@ import org.junit.jupiter.api.extension.ExtendWith;
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Inherited
|
||||
@Documented
|
||||
@ExtendWith(EnabledOnCommandCondition.class)
|
||||
@EnabledOnRedisAvailable
|
||||
@ExtendWith({EnabledOnRedisAvailableCondition.class})
|
||||
public @interface EnabledOnCommand {
|
||||
|
||||
String host() default "localhost";
|
||||
|
||||
@@ -36,12 +36,18 @@ import org.junit.platform.commons.util.AnnotationUtils;
|
||||
*/
|
||||
class EnabledOnCommandCondition implements ExecutionCondition {
|
||||
|
||||
EnabledOnRedisAvailableCondition redisAvailable = new EnabledOnRedisAvailableCondition();
|
||||
|
||||
private static final ConditionEvaluationResult ENABLED_BY_DEFAULT = enabled("@EnabledOnCommand is not present");
|
||||
private static final ExtensionContext.Namespace NAMESPACE = ExtensionContext.Namespace.create(RedisConditions.class);
|
||||
|
||||
@Override
|
||||
public ConditionEvaluationResult evaluateExecutionCondition(ExtensionContext context) {
|
||||
|
||||
if(redisAvailable.evaluateExecutionCondition(context).isDisabled()) {
|
||||
return disabled("Redis not available");
|
||||
}
|
||||
|
||||
var optional = AnnotationUtils.findAnnotation(context.getElement(), EnabledOnCommand.class);
|
||||
|
||||
if (!optional.isPresent()) {
|
||||
|
||||
Reference in New Issue
Block a user