Ejemplo n.º 1
0
        public void BaseSetUp()
        {
            AppHost = new BasicAppHost(typeof(FileService).Assembly)
            {
                ConfigureAppHost = host =>
                {
                    OrmLiteConfig.ExecFilter = new LogExecFilter();

                    host.Plugins.Add(new AuthFeature(() => new AuthUserSession(),
                                                     new IAuthProvider[]
                    {
                        new CredentialsAuthProvider()
                    }));

                    host.AppSettings = new EnvironmentVariableSettings();
                },
                ConfigureContainer = container =>
                {
                    var dbFactory = new OrmLiteConnectionFactory(DataSeed.TestDbConnection, MySqlDialect.Provider);

                    container.Register <IDbConnectionFactory>(c => dbFactory);
                    container.Register <ICacheClient>(new MemoryCacheClient());
                    container.Register <IAuthRepository>(c =>
                                                         new OrmLiteAuthRepository <UserInfo, UserAuthDetails>(dbFactory)
                    {
                        UseDistinctRoleTables = true
                    });

                    container.RegisterAs <OrgManage, IOrgManage>();
                    container.Register <ISchemaManage>(c => new MysqlSchemaManage("MyApp_test_db"));
                }
            };

            AppHost.Init();

            OrgManage = AppHost.Resolve <IOrgManage>();
            Db        = AppHost.GetDbConnection();

            DataSeed.InitDataTable(AppHost);
            DataSeed.Create(AppHost);
        }