1
0
mirror of https://github.com/bitwarden/server.git synced 2024-11-28 13:15:12 +01:00
bitwarden-server/test/Core.Test/AutoFixture/GlobalSettingsFixtures.cs

32 lines
862 B
C#
Raw Normal View History

using System.Reflection;
using AutoFixture;
using AutoFixture.Kernel;
using AutoFixture.Xunit2;
using Bit.Core.Test.Helpers.Factories;
2022-08-29 22:06:55 +02:00
namespace Bit.Test.Common.AutoFixture;
public class GlobalSettingsBuilder : ISpecimenBuilder
{
2022-08-29 22:06:55 +02:00
public object Create(object request, ISpecimenContext context)
{
2022-08-29 22:06:55 +02:00
if (context == null)
{
2022-08-29 22:06:55 +02:00
throw new ArgumentNullException(nameof(context));
}
2022-08-29 22:06:55 +02:00
var pi = request as ParameterInfo;
var fixture = new Fixture();
2022-08-29 22:06:55 +02:00
if (pi == null || pi.ParameterType != typeof(Bit.Core.Settings.GlobalSettings))
return new NoSpecimen();
2022-08-29 22:06:55 +02:00
return GlobalSettingsFactory.GlobalSettings;
}
2022-08-29 22:06:55 +02:00
}
2022-08-29 22:06:55 +02:00
public class GlobalSettingsCustomizeAttribute : CustomizeAttribute
{
public override ICustomization GetCustomization(ParameterInfo parameter) => new GlobalSettings();
}