Class JqwikSession

java.lang.Object
net.jqwik.api.sessions.JqwikSession

@API(status=MAINTAINED, since="1.8.0") public class JqwikSession extends Object
JqwikSession is the abstraction to give users of Arbitrary.sample() and Arbitrary.sampleStream() outside the jqwik lifecycle more control over the lifecycle. This has also influence on memory heap usage since an un-finished session will aggregate state, e.g. through caching and other stores.
  • Constructor Details

    • JqwikSession

      public JqwikSession()
  • Method Details

    • start

      public static void start()
    • isActive

      public static boolean isActive()
    • finish

      public static void finish()
    • finishTry

      public static void finishTry()
    • run

      public static void run(JqwikSession.Runnable runnable)
    • getRandom

      @API(status=EXPERIMENTAL, since="1.9.1") public static Optional<Random> getRandom()
      Returns the Random instance associated with the current session.
      Returns:
      a Random instance if a session is active, otherwise an empty Optional
    • start

      @API(status=EXPERIMENTAL, since="1.9.1") public static void start(String randomSeed)
      Starts a new session with a given random seed. Currently seeds must be strings that can be parsed by Long.parseLong(String).
    • run

      @API(status=EXPERIMENTAL, since="1.9.1") public static void run(String randomSeed, JqwikSession.Runnable runnable)
      Runs a given JqwikSession.Runnable in a new session with a given random seed. Currently seeds must be strings that can be parsed by Long.parseLong(String).