Class StableFiniteSequenceRelay

Namespace: AutoFixture.Kernel
Assembly: AutoFixture.dll

Unwraps a request for many instances and returns the results as a stable list.

public class StableFiniteSequenceRelay : ISpecimenBuilder

Inheritance

objectStableFiniteSequenceRelay

Implements

ISpecimenBuilder

Inherited Members

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>), CustomizationExtensions.ToCustomization(ISpecimenBuilder)

Remarks

In contrast to `FiniteSequenceRelay` this alternative implementation returns the sequence wrapped in a `List%601`. This means that the iterator will yield the same instances across multiple iterations.

By default this class is not used by `Fixture`, but it can be used to override the dynamic enumerable behavior by adding it to `Customizations`.

Constructors

StableFiniteSequenceRelay()

public StableFiniteSequenceRelay()

Methods

Create(object, ISpecimenContext)

Creates a new specimen based on a request.

public object Create(object request, ISpecimenContext context)

Parameters

request object

The request that describes what to create.

context ISpecimenContext

A context that can be used to create other specimens.

Returns

object

Many specimens if request is a FiniteSequenceRequest instance; otherwise a NoSpecimen instance.

Remarks

The sequence of specimens returned is stable which means that it can be iterated over more than once and be expected to yield the same instances every time.

See Also

FiniteSequenceRelay