U4-9322 - IScopeProviderInternal

This commit is contained in:
Stephan
2017-01-12 19:32:44 +01:00
parent 79c2400d27
commit 5446e4b0fc
10 changed files with 18 additions and 22 deletions

View File

@@ -27,7 +27,7 @@ namespace Umbraco.Core
/// </remarks>
public class DatabaseContext
{
internal readonly ScopeProvider ScopeProvider;
internal readonly IScopeProviderInternal ScopeProvider;
private readonly ILogger _logger;
private readonly SqlSyntaxProviders _syntaxProviders;
private bool _configured;
@@ -42,7 +42,7 @@ namespace Umbraco.Core
private const int ConnectionCheckMinutes = 1;
[Obsolete("Use the constructor specifying all dependencies instead")]
public DatabaseContext(IScopeProvider scopeProvider)
internal DatabaseContext(IScopeProviderInternal scopeProvider)
: this(scopeProvider, LoggerResolver.Current.Logger, new SqlSyntaxProviders(new ISqlSyntaxProvider[]
{
new MySqlSyntaxProvider(LoggerResolver.Current.Logger),
@@ -58,13 +58,13 @@ namespace Umbraco.Core
/// <param name="scopeProvider"></param>
/// <param name="logger"></param>
/// <param name="syntaxProviders"></param>
public DatabaseContext(IScopeProvider scopeProvider, ILogger logger, SqlSyntaxProviders syntaxProviders)
internal DatabaseContext(IScopeProviderInternal scopeProvider, ILogger logger, SqlSyntaxProviders syntaxProviders)
{
if (scopeProvider == null) throw new ArgumentNullException("scopeProvider");
if (logger == null) throw new ArgumentNullException("logger");
if (syntaxProviders == null) throw new ArgumentNullException("syntaxProviders");
ScopeProvider = (ScopeProvider) scopeProvider; // fixme ugly
ScopeProvider = scopeProvider;
_logger = logger;
_syntaxProviders = syntaxProviders;
}
@@ -76,12 +76,12 @@ namespace Umbraco.Core
/// <param name="logger"></param>
/// <param name="sqlSyntax"></param>
/// <param name="providerName"></param>
public DatabaseContext(IScopeProvider scopeProvider, ILogger logger, ISqlSyntaxProvider sqlSyntax, string providerName)
internal DatabaseContext(IScopeProviderInternal scopeProvider, ILogger logger, ISqlSyntaxProvider sqlSyntax, string providerName)
{
_providerName = providerName;
SqlSyntax = sqlSyntax;
SqlSyntaxContext.SqlSyntaxProvider = SqlSyntax;
ScopeProvider = (ScopeProvider) scopeProvider; // fixme ugly
ScopeProvider = scopeProvider;
_logger = logger;
_configured = true;
}

View File

@@ -1,12 +1,8 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Umbraco.Core.Scoping
namespace Umbraco.Core.Scoping
{
internal interface IScopeProviderInternal : IScopeProvider
{
IScope AmbientScope { get; set; }
IScope CreateNoScope();
}
}

View File

@@ -5,7 +5,7 @@ using Umbraco.Core.Persistence;
namespace Umbraco.Core.Scoping
{
internal class ScopeProvider : IScopeProvider
internal class ScopeProvider : IScopeProviderInternal
{
public ScopeProvider(IDatabaseFactory2 databaseFactory)
{

View File

@@ -72,7 +72,7 @@ namespace Umbraco.Tests.BootManagers
{
var appContext = base.CreateApplicationContext(dbContext, serviceContext);
var dbContextMock = new Mock<DatabaseContext>(Mock.Of<IScopeProvider>(), ProfilingLogger.Logger, Mock.Of<ISqlSyntaxProvider>(), "test");
var dbContextMock = new Mock<DatabaseContext>(Mock.Of<IScopeProviderInternal>(), ProfilingLogger.Logger, Mock.Of<ISqlSyntaxProvider>(), "test");
dbContextMock.Setup(x => x.CanConnect).Returns(true);
appContext.DatabaseContext = dbContextMock.Object;

View File

@@ -40,7 +40,7 @@ namespace Umbraco.Tests.Migrations
//This is needed because the Migration resolver is creating migration instances with their full ctors
ApplicationContext.EnsureContext(
new ApplicationContext(
new DatabaseContext(Mock.Of<IScopeProvider>(), Mock.Of<ILogger>(), sqlSyntax, "test"),
new DatabaseContext(Mock.Of<IScopeProviderInternal>(), Mock.Of<ILogger>(), sqlSyntax, "test"),
new ServiceContext(),
CacheHelper.CreateDisabledCacheHelper(),
new ProfilingLogger(Mock.Of<ILogger>(), Mock.Of<IProfiler>())),

View File

@@ -47,7 +47,7 @@ namespace Umbraco.Tests
[Test]
public void Can_Create_Db_Context()
{
var dbCtx = new DatabaseContext(new Mock<IScopeProvider>().Object, Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test");
var dbCtx = new DatabaseContext(new Mock<IScopeProviderInternal>().Object, Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test");
Assert.Pass();
}
@@ -55,7 +55,7 @@ namespace Umbraco.Tests
public void Can_Create_App_Context_With_Services()
{
var appCtx = new ApplicationContext(
new DatabaseContext(new Mock<IScopeProvider>().Object, Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test"),
new DatabaseContext(new Mock<IScopeProviderInternal>().Object, Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test"),
MockHelper.GetMockedServiceContext(),
CacheHelper.CreateDisabledCacheHelper(),
new ProfilingLogger(Mock.Of<ILogger>(), Mock.Of<IProfiler>()));

View File

@@ -41,7 +41,7 @@ namespace Umbraco.Tests.Models.Mapping
//Create an app context using mocks
var appContext = new ApplicationContext(
new DatabaseContext(Mock.Of<IScopeProvider>(), Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test"),
new DatabaseContext(Mock.Of<IScopeProviderInternal>(), Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test"),
//Create service context using mocks
new ServiceContext(

View File

@@ -62,7 +62,7 @@ namespace Umbraco.Tests.Routing
{
var settings = SettingsForTests.GetDefault();
return new ApplicationContext(
new DatabaseContext(Mock.Of<IScopeProvider>(), Logger, Mock.Of<ISqlSyntaxProvider>(), "test"),
new DatabaseContext(Mock.Of<IScopeProviderInternal>(), Logger, Mock.Of<ISqlSyntaxProvider>(), "test"),
GetServiceContext(settings, Logger),
CacheHelper,
ProfilingLogger)

View File

@@ -75,7 +75,7 @@ namespace Umbraco.Tests.Web.Mvc
public void Umbraco_Helper_Not_Null()
{
var appCtx = new ApplicationContext(
new DatabaseContext(new Mock<IScopeProvider>().Object, Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test"),
new DatabaseContext(new Mock<IScopeProviderInternal>().Object, Mock.Of<ILogger>(), Mock.Of<ISqlSyntaxProvider>(), "test"),
MockHelper.GetMockedServiceContext(),
CacheHelper.CreateDisabledCacheHelper(),
new ProfilingLogger(Mock.Of<ILogger>(), Mock.Of<IProfiler>()));

View File

@@ -464,7 +464,7 @@ namespace Umbraco.Tests.Web.Mvc
var svcCtx = GetServiceContext(umbracoSettings, logger);
var appCtx = new ApplicationContext(
new DatabaseContext(Mock.Of<IScopeProvider>(), logger, Mock.Of<ISqlSyntaxProvider>(), "test"),
new DatabaseContext(Mock.Of<IScopeProviderInternal>(), logger, Mock.Of<ISqlSyntaxProvider>(), "test"),
svcCtx,
CacheHelper.CreateDisabledCacheHelper(),
new ProfilingLogger(logger, Mock.Of<IProfiler>())) { IsReady = true };