All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.jqwik.engine.hooks.DisabledHook Maven / Gradle / Ivy

The newest version!
package net.jqwik.engine.hooks;

import org.junit.platform.commons.support.*;

import net.jqwik.api.*;
import net.jqwik.api.lifecycle.*;

public class DisabledHook implements SkipExecutionHook {

	@Override
	public SkipResult shouldBeSkipped(LifecycleContext context) {
		return context.optionalElement()
					  .flatMap(element -> AnnotationSupport.findAnnotation(element, Disabled.class))
					  .map(disabled -> {
						  String reason = disabled.value().isEmpty() ?
											  String.format("@Disabled: %s", context.optionalElement().get())
											  : disabled.value();
						  return SkipResult.skip(reason);
					  })
					  .orElse(SkipResult.doNotSkip());
	}

	@Override
	public PropagationMode propagateTo() {
		return PropagationMode.ALL_DESCENDANTS;
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy