Package net.jqwik.api

Interface EdgeCases.Config<T>

Enclosing interface:
EdgeCases<T extends @Nullable Object>

@API(status=MAINTAINED, since="1.8.0") public static interface EdgeCases.Config<T>
  • Method Details

    • noConfig

      static <T extends @Nullable Object> Consumer<EdgeCases.Config<T>> noConfig()
    • none

      Don't use any of the default edge cases
      Returns:
      same configuration instance
    • filter

      EdgeCases.Config<T> filter(Predicate<? super T> filter)
      Only include default edge cases for which filter(Predicate) returns true
      Parameters:
      filter - A predicate
      Returns:
      same configuration instance
    • add

      EdgeCases.Config<T> add(T... edgeCases)
      Add one or more unshrinkable additional values as edge cases. In general, edge cases you add here must be values within the allowed value range of the current arbitrary. You add them as edge cases to make sure they are generated with a very high probability.

      Some arbitraries may allow added values to be outside the allowed value range. This is mainly due to implementation issues and should not rely on it. Adding impossible values will - sadly enough - not raise an exception nor log a warning.

      Parameters:
      edgeCases - The edge cases to add to default edge cases.
      Returns:
      same configuration instance
    • includeOnly

      EdgeCases.Config<T> includeOnly(T... includedValues)
      Include only the values given, and only if they are in the set of default edge cases.
      Parameters:
      includedValues - The values to be included
      Returns:
      same configuration instance