net.jqwik.api.lifecycle.AroundTryHook Maven / Gradle / Ivy
package net.jqwik.api.lifecycle;
import java.util.*;
import org.apiguardian.api.*;
import static org.apiguardian.api.API.Status.*;
/**
* Implement this hook to define behaviour that should "wrap" the execution of a single try,
* i.e., do something directly before or after executing a property method with a given list of parameters.
* You can even change the result of a try from satisfied to falsified or the other way round.
*/
@API(status = MAINTAINED, since = "1.4.0")
@FunctionalInterface
public interface AroundTryHook extends LifecycleHook {
/**
* When you wrap a try you can do stuff before and/or after its execution.
* All implementors should invoke the try with {@code aTry.execute(parameters)}
* and either return the result of this call or create another result.
*
*
* It is possible to manipulate the {@code parameters} before invoking
* {@code aTry.execute(parameters)}.
* Never change the number and types of parameters because this will result
* in runtime errors.
* Also keep in mind that
* all manipulation might mess up random generation and shrinking.
*
*
* @param context The property's context object
* @param aTry executor to call
* @param parameters the generated parameters for this try
* @return result of running a single try
*/
TryExecutionResult aroundTry(TryLifecycleContext context, TryExecutor aTry, List
© 2015 - 2024 Weber Informatics LLC | Privacy Policy