zoukankan      html  css  js  c++  java
  • 将Abp的UnitTest中的InMemory改为SQLite in memory

    添加nuget包

    Microsoft.EntityFrameworkCore.Sqlite
    

    添加ServiceCollectionRegistrarSqlite

     public static class ServiceCollectionRegistrarSqlite
        {
            public static void Register(IIocManager iocManager)
            {
                var services = new ServiceCollection();
    
                IdentityRegistrar.Register(services);
    
                services.AddEntityFrameworkSqlite();
    
                var serviceProvider = WindsorRegistrationHelper.CreateServiceProvider(iocManager.IocContainer, services);
    
                var builder = new DbContextOptionsBuilder<DeviceManageSystemDbContext>();
    
    
                var inMemorySqlite = new SqliteConnection("Data Source=:memory:");
                builder.UseSqlite(inMemorySqlite);
    
                iocManager.IocContainer.Register(
                    Component
                        .For<DbContextOptions<DeviceManageSystemDbContext>>()
                        .Instance(builder.Options)
                        .LifestyleSingleton()
                );
    
                inMemorySqlite.Open();
                new DeviceManageSystemDbContext(builder.Options).Database.EnsureCreated();
            }
        }
    

    添加DeviceManageSystemTestModuleSqlite

    复制DeviceManageSystemTestModule,修改

     [DependsOn(
            typeof(DeviceManageSystemApplicationModule),
            typeof(DeviceManageSystemEntityFrameworkModule),
            typeof(AbpTestBaseModule)
            )]
        public class DeviceManageSystemTestModuleSqlite : AbpModule
        {
         public override void Initialize()
            {
                ServiceCollectionRegistrarSqlite.Register(IocManager);
            }
        }
    

    修改DeviceManageSystemTestBase

    public abstract class DeviceManageSystemTestBase : AbpIntegratedTestBase<DeviceManageSystemTestModuleSqlite>
    {
    
    }
    
  • 相关阅读:
    structs2---OGNL表达式
    六种获取配置properties文件的方法
    java poi导出Excel 总结
    Linux中发布项目的一些命令笔记
    JavaScript 闭包
    常见数据库连接方式
    Docker(五):镜像
    Docker(四):docker的安装
    Ubuntu命令
    Docker(三):Docker的基本概念
  • 原文地址:https://www.cnblogs.com/hahaxi/p/11135280.html
Copyright © 2011-2022 走看看