mirror of
https://github.com/bitwarden/server.git
synced 2024-12-01 13:43:23 +01:00
28 lines
925 B
C#
28 lines
925 B
C#
using System.Reflection;
|
|
using AutoFixture;
|
|
using Bit.Test.Common.Helpers;
|
|
using Xunit.Sdk;
|
|
|
|
namespace Bit.Test.Common.AutoFixture.Attributes;
|
|
|
|
[DataDiscoverer("AutoFixture.Xunit2.NoPreDiscoveryDataDiscoverer", "AutoFixture.Xunit2")]
|
|
public class BitAutoDataAttribute : DataAttribute
|
|
{
|
|
private readonly Func<IFixture> _createFixture;
|
|
private readonly object[] _fixedTestParameters;
|
|
|
|
public BitAutoDataAttribute(params object[] fixedTestParameters) :
|
|
this(() => new Fixture(), fixedTestParameters)
|
|
{ }
|
|
|
|
public BitAutoDataAttribute(Func<IFixture> createFixture, params object[] fixedTestParameters) :
|
|
base()
|
|
{
|
|
_createFixture = createFixture;
|
|
_fixedTestParameters = fixedTestParameters;
|
|
}
|
|
|
|
public override IEnumerable<object[]> GetData(MethodInfo testMethod)
|
|
=> BitAutoDataAttributeHelpers.GetData(testMethod, _createFixture(), _fixedTestParameters);
|
|
}
|