using LiteCharms.Features.Extensions; using LiteCharms.Features.TechShop.Extensions; namespace LiteCharms.Features.TechShop.Tests; public class Fixture : IDisposable { public IConfiguration Configuration { get; set; } public IServiceProvider Services { get; set; } public IMediator Mediator { get; set; } public Fixture() { Configuration = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddUserSecrets() .AddJsonFile(Path.Combine(Directory.GetCurrentDirectory(), "appsettings.json"), optional: true, reloadOnChange: true) .AddEnvironmentVariables() .Build(); Services = new ServiceCollection() .AddMediator() .AddLogging() .AddTechShopServices() .AddEmailServiceBus() .AddGarageS3(Configuration) .AddTechShopDatabase(Configuration) .AddEmailServices(Configuration) .AddSingleton(Configuration) .BuildServiceProvider(); Mediator = Services.GetRequiredService(); } public void Dispose() { } }