Class TraceWriter

Namespace: AutoFixture.Kernel
Assembly: AutoFixture.dll

Trace writer that will write out a trace of object requests and created objects in the ISpecimenBuilder pipeline.

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

Inheritance

objectTraceWriter

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

TraceWriter(TextWriter, TracingBuilder)

Initializes a new instance of the TraceWriter class.

public TraceWriter(TextWriter writer, TracingBuilder tracer)

Parameters

writer TextWriter

The output stream for the trace.

tracer TracingBuilder

The ISpecimenBuilder to decorate.

Properties

TraceRequestFormatter

Gets or sets the formatter for tracing a request.

public Action<TextWriter, object, int> TraceRequestFormatter { get; set; }

Property Value

Action<TextWriter, object, int>

TraceSpecimenFormatter

Gets or sets the formatter for tracing a created specimen.

public Action<TextWriter, object, int> TraceSpecimenFormatter { get; set; }

Property Value

Action<TextWriter, object, int>

Tracer

Gets the TracingBuilder decorated by this instance.

public TracingBuilder Tracer { get; }

Property Value

TracingBuilder

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 by delegating to its decorated builder.

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

The requested specimen if possible; 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.