Class MutableValueTypeWarningThrower

Namespace: AutoFixture.Kernel
Assembly: AutoFixture.dll

Throws an ObjectCreationException when one tries to create Structure without explicit parametrized constructor. Possibly notifying about bad design (mutable value type).

public class MutableValueTypeWarningThrower : ISpecimenBuilder

Inheritance

objectMutableValueTypeWarningThrower

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

This `ISpecimenBuilder` can be used with proper filtering `IRequestSpecification` to throw exceptions only on structures without constructors. Will throw an exception instead of letting the containing builder return a `NoSpecimen` instance when it can't satisfy a request or generic exception being thrown.

Constructors

MutableValueTypeWarningThrower()

public MutableValueTypeWarningThrower()

Methods

Create(object, ISpecimenContext)

Throws an ObjectCreationException.

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. Not used.

Returns

object

This method never returns. It always throws an ObjectCreationException.