public IScopeProvider GetScopeProvider(ILoggerFactory loggerFactory, FileSystems fileSystems = null, IUmbracoDatabaseFactory databaseFactory = null) { var globalSettings = Options.Create(new GlobalSettings()); var connectionString = ConfigurationManager.ConnectionStrings[Constants.System.UmbracoConnectionName].ConnectionString; var connectionStrings = Options.Create(new ConnectionStrings { UmbracoConnectionString = new ConfigConnectionString(Constants.System.UmbracoConnectionName, connectionString) }); var coreDebugSettings = new CoreDebugSettings(); if (databaseFactory == null) { // var mappersBuilder = new MapperCollectionBuilder(Current.Container); // FIXME: // mappersBuilder.AddCore(); // var mappers = mappersBuilder.CreateCollection(); var mappers = Current.Factory.GetRequiredService <IMapperCollection>(); databaseFactory = new UmbracoDatabaseFactory( loggerFactory.CreateLogger <UmbracoDatabaseFactory>(), loggerFactory, globalSettings, connectionStrings, new Lazy <IMapperCollection>(() => mappers), TestHelper.DbProviderFactoryCreator, new DatabaseSchemaCreatorFactory(Mock.Of <ILogger <DatabaseSchemaCreator> >(), loggerFactory, new UmbracoVersion(), Mock.Of <IEventAggregator>())); } fileSystems ??= new FileSystems(loggerFactory, TestHelper.IOHelper, globalSettings, TestHelper.GetHostingEnvironment()); var coreDebug = TestHelper.CoreDebugSettings; var mediaFileManager = Mock.Of <MediaFileManager>(); var eventAggregator = Mock.Of <IEventAggregator>(); return(new ScopeProvider(databaseFactory, fileSystems, Options.Create(coreDebugSettings), mediaFileManager, loggerFactory.CreateLogger <ScopeProvider>(), loggerFactory, NoAppCache.Instance, eventAggregator)); }
public ThreadAbortExceptionEnricher( IOptionsMonitor <CoreDebugSettings> coreDebugSettings, IHostingEnvironment hostingEnvironment, IMarchal marchal) { _coreDebugSettings = coreDebugSettings.CurrentValue; _hostingEnvironment = hostingEnvironment; _marchal = marchal; coreDebugSettings.OnChange(x => _coreDebugSettings = x); }
protected virtual void ComposeSettings() { var contentSettings = new ContentSettings(); var coreDebugSettings = new CoreDebugSettings(); var globalSettings = new GlobalSettings(); var nuCacheSettings = new NuCacheSettings(); var requestHandlerSettings = new RequestHandlerSettings(); var userPasswordConfigurationSettings = new UserPasswordConfigurationSettings(); var webRoutingSettings = new WebRoutingSettings(); Builder.Services.AddTransient(x => Microsoft.Extensions.Options.Options.Create(contentSettings)); Builder.Services.AddTransient(x => Microsoft.Extensions.Options.Options.Create(coreDebugSettings)); Builder.Services.AddTransient(x => Microsoft.Extensions.Options.Options.Create(globalSettings)); Builder.Services.AddTransient(x => Microsoft.Extensions.Options.Options.Create(nuCacheSettings)); Builder.Services.AddTransient(x => Microsoft.Extensions.Options.Options.Create(requestHandlerSettings)); Builder.Services.AddTransient(x => Microsoft.Extensions.Options.Options.Create(userPasswordConfigurationSettings)); Builder.Services.AddTransient(x => Microsoft.Extensions.Options.Options.Create(webRoutingSettings)); }
private static IServiceProvider MockFactory(Action <Mock <IServiceProvider> > setup = null) { // FIXME: use IUmbracoDatabaseFactory vs UmbracoDatabaseFactory, clean it all up! var mock = new Mock <IServiceProvider>(); NullLoggerFactory loggerFactory = NullLoggerFactory.Instance; ILogger logger = loggerFactory.CreateLogger("GenericLogger"); var globalSettings = new GlobalSettings(); var connectionStrings = new ConnectionStrings(); var mapperCollection = new NPocoMapperCollection(() => new[] { new NullableDateMapper() }); var f = new UmbracoDatabaseFactory( loggerFactory.CreateLogger <UmbracoDatabaseFactory>(), loggerFactory, Options.Create(globalSettings), Mock.Of <IOptionsMonitor <ConnectionStrings> >(x => x.CurrentValue == connectionStrings), new MapperCollection(() => Enumerable.Empty <BaseMapper>()), TestHelper.DbProviderFactoryCreator, new DatabaseSchemaCreatorFactory(loggerFactory.CreateLogger <DatabaseSchemaCreator>(), loggerFactory, new UmbracoVersion(), Mock.Of <IEventAggregator>()), mapperCollection); var fs = new FileSystems(loggerFactory, IOHelper, Options.Create(globalSettings), Mock.Of <IHostingEnvironment>()); var coreDebug = new CoreDebugSettings(); var mediaFileManager = new MediaFileManager( Mock.Of <IFileSystem>(), Mock.Of <IMediaPathScheme>(), Mock.Of <ILogger <MediaFileManager> >(), Mock.Of <IShortStringHelper>(), Mock.Of <IServiceProvider>(), Options.Create(new ContentSettings())); IEventAggregator eventAggregator = Mock.Of <IEventAggregator>(); var scopeProvider = new ScopeProvider(f, fs, Options.Create(coreDebug), mediaFileManager, loggerFactory.CreateLogger <ScopeProvider>(), loggerFactory, NoAppCache.Instance, eventAggregator); mock.Setup(x => x.GetService(typeof(ILogger))).Returns(logger); mock.Setup(x => x.GetService(typeof(ILogger <ComponentCollection>))).Returns(loggerFactory.CreateLogger <ComponentCollection>); mock.Setup(x => x.GetService(typeof(ILoggerFactory))).Returns(loggerFactory); mock.Setup(x => x.GetService(typeof(IProfilingLogger))).Returns(new ProfilingLogger(loggerFactory.CreateLogger <ProfilingLogger>(), Mock.Of <IProfiler>())); mock.Setup(x => x.GetService(typeof(IUmbracoDatabaseFactory))).Returns(f); mock.Setup(x => x.GetService(typeof(IScopeProvider))).Returns(scopeProvider); setup?.Invoke(mock); return(mock.Object); }