Files
Yi.Framework/Yi.Abp.Net8/test/Yi.Framework.Rbac.Test/YiTestBase.cs
2024-04-29 17:50:51 +08:00

55 lines
2.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Volo.Abp;
using Yi.Framework.Rbac.Domain.Repositories;
using Yi.Framework.Rbac.SqlSugarCore.Repositories;
namespace Yi.Framework.Rbac.Test
{
public class YiTestBase : AbpTestBaseWithServiceProvider
{
public ILogger Logger { get; private set; }
protected IServiceScope TestServiceScope { get; }
public YiTestBase()
{
//在启动之前清除sqlite全库由于非常危险建议使用sqlite
//Microsoft.Data.Sqlite.SqliteConnection.ClearAllPools();
//var dbPath = "yi-rbac-test.db";
//if (File.Exists(dbPath))
//{
// File.Delete(dbPath);
//}
IHost host = Host.CreateDefaultBuilder()
.UseAutofac()
.ConfigureServices((host, service) =>
{
ConfigureServices(host, service);
service.AddLogging(builder => builder.ClearProviders().AddConsole().AddDebug());
/*application= */
service.AddApplicationAsync<YiFrameworkRbacTestModule>().Wait();
})
.ConfigureAppConfiguration(ConfigureAppConfiguration)
.Build();
ServiceProvider = host.Services;
TestServiceScope = ServiceProvider.CreateScope();
Logger = (ILogger)ServiceProvider.GetRequiredService(typeof(ILogger<>).MakeGenericType(GetType()));
host.InitializeAsync().Wait();
}
public virtual void ConfigureServices(HostBuilderContext host, IServiceCollection service)
{
}
protected virtual void ConfigureAppConfiguration(IConfigurationBuilder configurationBuilder)
{
configurationBuilder.AddJsonFile("appsettings.json");
//configurationBuilder.AddJsonFile("appsettings.Development.json");
}
}
}