Class OmitOnRecursionGuard

Namespace: AutoFixture.Kernel
Assembly: AutoFixture.dll

Recursion handler that returns OmitSpecimen at recursion points.

[Obsolete("This class will be removed in a future version of AutoFixture. Instead, use an instance of RecursionGuard, composed with an instance of OmitOnRecursionHandler.", true)]
public class OmitOnRecursionGuard : RecursionGuard, ISpecimenBuilderNode, ISpecimenBuilder, IEnumerable<ISpecimenBuilder>, IEnumerable

Inheritance

objectRecursionGuardOmitOnRecursionGuard

Implements

ISpecimenBuilderNode, ISpecimenBuilder, IEnumerable<ISpecimenBuilder>, IEnumerable

Inherited Members

RecursionGuard.HandleRecursiveRequest(object), RecursionGuard.Create(object, ISpecimenContext), RecursionGuard.Compose(IEnumerable<ISpecimenBuilder>), RecursionGuard.GetEnumerator(), RecursionGuard.Builder, RecursionGuard.RecursionHandler, RecursionGuard.RecursionDepth, RecursionGuard.Comparer, RecursionGuard.RecordedRequests, object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Extension Methods

SpecimenFactory.Create<T>(ISpecimenBuilder), SpecimenFactory.CreateMany<T>(ISpecimenBuilder), SpecimenFactory.CreateMany<T>(ISpecimenBuilder, int), SpecimenCommand.Do<T>(ISpecimenBuilder, Action<T>), SpecimenCommand.Do<T1, T2>(ISpecimenBuilder, Action<T1, T2>), SpecimenCommand.Do<T1, T2, T3>(ISpecimenBuilder, Action<T1, T2, T3>), SpecimenCommand.Do<T1, T2, T3, T4>(ISpecimenBuilder, Action<T1, T2, T3, T4>), SpecimenQuery.Get<T, TResult>(ISpecimenBuilder, Func<T, TResult>), SpecimenQuery.Get<T1, T2, TResult>(ISpecimenBuilder, Func<T1, T2, TResult>), SpecimenQuery.Get<T1, T2, T3, TResult>(ISpecimenBuilder, Func<T1, T2, T3, TResult>), SpecimenQuery.Get<T1, T2, T3, T4, TResult>(ISpecimenBuilder, Func<T1, T2, T3, T4, TResult>), SpecimenBuilderNode.GraphEquals(ISpecimenBuilderNode, ISpecimenBuilderNode), SpecimenBuilderNode.GraphEquals(ISpecimenBuilderNode, ISpecimenBuilderNode, IEqualityComparer<ISpecimenBuilder>), CustomizationExtensions.ToCustomization(ISpecimenBuilder)

Constructors

OmitOnRecursionGuard(ISpecimenBuilder)

Initializes a new instance of the OmitOnRecursionGuard class.

public OmitOnRecursionGuard(ISpecimenBuilder builder)

Parameters

builder ISpecimenBuilder

The builder to decorate.

OmitOnRecursionGuard(ISpecimenBuilder, IEqualityComparer)

Initializes a new instance of the OmitOnRecursionGuard class.

public OmitOnRecursionGuard(ISpecimenBuilder builder, IEqualityComparer comparer)

Parameters

builder ISpecimenBuilder

The builder to decorate.

comparer IEqualityComparer

An IEqualityComparer implementation to use when comparing requests to determine recursion.

Methods

Compose(IEnumerable<ISpecimenBuilder>)

Composes the supplied builders.

public override ISpecimenBuilderNode Compose(IEnumerable<ISpecimenBuilder> builders)

Parameters

builders IEnumerable<ISpecimenBuilder>

The builders to compose.

Returns

ISpecimenBuilderNode

A new ISpecimenBuilderNode instance containing builders as child nodes.

HandleRecursiveRequest(object)

Handles a request that would cause recursion.

[Obsolete("This class will be removed in a future version of AutoFixture. Instead, use an instance of RecursionGuard, composed with an instance of OmitOnRecursionHandler.", true)]
public override object HandleRecursiveRequest(object request)

Parameters

request object

The recursion-causing request.

Returns

object

An OmitSpecimen instance.