OneOfConstraints: {
    depthIdentifier?: DepthIdentifier | string;
    depthSize?: DepthSize;
    maxDepth?: number;
    withCrossShrink?: boolean;
}

Constraints to be applied on oneof

Type declaration

  • OptionaldepthIdentifier?: DepthIdentifier | string

    Depth identifier can be used to share the current depth between several instances.

    By default, if not specified, each instance of oneof will have its own depth. In other words: you can have depth=1 in one while you have depth=100 in another one.

    Since 2.14.0

  • OptionaldepthSize?: DepthSize

    While going deeper and deeper within a recursive structure (see letrec), this factor will be used to increase the probability to generate instances of the first passed arbitrary.

    Since 2.14.0

  • OptionalmaxDepth?: number

    Maximal authorized depth. Once this depth has been reached only the first arbitrary will be used.

    Number.POSITIVE_INFINITY — defaulting seen as "max non specified" when defaultSizeToMaxWhenMaxSpecified=true

    Since 2.14.0

  • OptionalwithCrossShrink?: boolean

    When set to true, the shrinker of oneof will try to check if the first arbitrary could have been used to discover an issue. It allows to shrink trees.

    Warning: First arbitrary must be the one resulting in the smallest structures for usages in deep tree-like structures.

    false
    

    Since 2.14.0

Since 2.14.0