Interface MapArbitrary<K,V>

All Superinterfaces:
Arbitrary<Map<K,V>>, SizableArbitrary<Map<K,V>>

@API(status=MAINTAINED, since="1.3.2") public interface MapArbitrary<K,V> extends Arbitrary<Map<K,V>>, SizableArbitrary<Map<K,V>>
Fluent interface to add functionality to arbitraries that generate instances of type Map
  • Method Details

    • ofSize

      default MapArbitrary<K,V> ofSize(int size)
      Fix the size to size.
      Specified by:
      ofSize in interface SizableArbitrary<K>
      Parameters:
      size - The size of the generated map
      Returns:
      new arbitrary instance
    • ofMinSize

      MapArbitrary<K,V> ofMinSize(int minSize)
      Set lower size boundary minSize (included).
      Specified by:
      ofMinSize in interface SizableArbitrary<K>
      Parameters:
      minSize - The minimum size of the generated map
      Returns:
      new arbitrary instance
    • ofMaxSize

      MapArbitrary<K,V> ofMaxSize(int maxSize)
      Set upper size boundary maxSize (included).
      Specified by:
      ofMaxSize in interface SizableArbitrary<K>
      Parameters:
      maxSize - The maximum size of the generated map
      Returns:
      new arbitrary instance
    • withSizeDistribution

      @API(status=EXPERIMENTAL, since="1.5.3") MapArbitrary<K,V> withSizeDistribution(RandomDistribution uniform)
      Set random distribution distribution of size of generated map. The distribution's center is the minimum size of the generated map.
      Specified by:
      withSizeDistribution in interface SizableArbitrary<K>
    • uniqueKeys

      @API(status=MAINTAINED, since="1.4.0") MapArbitrary<K,V> uniqueKeys(Function<K,Object> by)
      Add the constraint that keys of the generated map must be unique relating to an element's "feature" being extracted by applying the by function on a map entry's key. The extracted features are being compared using Object.equals(Object).

      The constraint can be combined with other uniqueKeys(Function) constraints.

      Returns:
      new arbitrary instance
    • uniqueValues

      @API(status=MAINTAINED, since="1.4.0") MapArbitrary<K,V> uniqueValues(Function<V,Object> by)
      Add the constraint that value of the generated map must be unique relating to an element's "feature" being extracted by applying the by function on a map entry's value. The extracted features are being compared using Object.equals(Object).

      The constraint can be combined with other uniqueValues(Function) constraints.

      Returns:
      new arbitrary instance
    • uniqueValues

      @API(status=MAINTAINED, since="1.4.0") MapArbitrary<K,V> uniqueValues()
      Add the constraint that values of the generated map must be unique, i.e. no two value must return true when being compared using Object.equals(Object).

      The constraint can be combined with other uniqueValues(Function) constraints.

      Returns:
      new arbitrary instance