2019-12-21 11:34:27 +00:00
|
|
|
using System;
|
|
|
|
|
using AutoFixture.Kernel;
|
|
|
|
|
|
2020-10-19 20:12:11 +00:00
|
|
|
namespace Elsa.Testing.Shared.AutoFixture.Abstractions
|
2019-12-21 11:34:27 +00:00
|
|
|
{
|
|
|
|
|
public abstract class SpecimenBuilderBase<T> : ISpecimenBuilder
|
|
|
|
|
{
|
|
|
|
|
public object Create(object request, ISpecimenContext context)
|
|
|
|
|
{
|
|
|
|
|
if (context == null)
|
|
|
|
|
throw new ArgumentNullException(nameof(context));
|
|
|
|
|
|
|
|
|
|
return !typeof(T).Equals(request) ? new NoSpecimen() : CreateSpecimen(request, context);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected abstract object CreateSpecimen(object request, ISpecimenContext context);
|
|
|
|
|
}
|
|
|
|
|
}
|