Class FilteringSpecimenBuilder

Namespace: AutoFixture.Kernel
Assembly: AutoFixture.dll

Decorates an ISpecimenBuilder and filters requests so that only some requests are passed through to the decorated builder.

public class FilteringSpecimenBuilder : ISpecimenBuilderNode, ISpecimenBuilder, IEnumerable<ISpecimenBuilder>, IEnumerable

Inheritance

objectFilteringSpecimenBuilder

Implements

ISpecimenBuilderNode, ISpecimenBuilder, IEnumerable<ISpecimenBuilder>, IEnumerable

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>), SpecimenBuilderNode.GraphEquals(ISpecimenBuilderNode, ISpecimenBuilderNode), SpecimenBuilderNode.GraphEquals(ISpecimenBuilderNode, ISpecimenBuilderNode, IEqualityComparer<ISpecimenBuilder>), CustomizationExtensions.ToCustomization(ISpecimenBuilder)

Constructors

FilteringSpecimenBuilder(ISpecimenBuilder, IRequestSpecification)

Initializes a new instance of the FilteringSpecimenBuilder class.

public FilteringSpecimenBuilder(ISpecimenBuilder builder, IRequestSpecification specification)

Parameters

builder ISpecimenBuilder

A specimen builder to decorate.

specification IRequestSpecification

A specification that determines whether builder will receive the request.

Properties

Builder

Gets the decorated builder.

public ISpecimenBuilder Builder { get; }

Property Value

ISpecimenBuilder

Specification

Gets the specification that determines whether Builder will be invoked or not.

public IRequestSpecification Specification { get; }

Property Value

IRequestSpecification

Methods

Compose(IEnumerable<ISpecimenBuilder>)

Composes the supplied builders.

public virtual ISpecimenBuilderNode Compose(IEnumerable<ISpecimenBuilder> builders)

Parameters

builders IEnumerable<ISpecimenBuilder>

The builders to compose.

Returns

ISpecimenBuilderNode

A new ISpecimenBuilderNode instance containing builders as child nodes.

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 container that can be used to create other specimens.

Returns

object

A specimen created by the decorated ISpecimenBuilder if the filter allows the request through; otherwise, a NoSpecimen instance.

GetEnumerator()

Returns an enumerator that iterates through the collection.

public IEnumerator<ISpecimenBuilder> GetEnumerator()

Returns

IEnumerator<ISpecimenBuilder>

A IEnumerator%601 that can be used to iterate through the collection.