Improves test suite performance - this should shed a few minutes off of the test runs.
This commit is contained in:
@@ -78,7 +78,7 @@ namespace Umbraco.Tests.PublishedCache
|
||||
//ensure the StateHelper is using our custom context
|
||||
StateHelper.HttpContext = _httpContextFactory.HttpContext;
|
||||
|
||||
var settings = SettingsForTests.GetMockSettings();
|
||||
var settings = SettingsForTests.GenerateMockSettings();
|
||||
var contentMock = Mock.Get(settings.Content);
|
||||
contentMock.Setup(x => x.UseLegacyXmlSchema).Returns(false);
|
||||
SettingsForTests.ConfigureSettings(settings);
|
||||
@@ -100,7 +100,7 @@ namespace Umbraco.Tests.PublishedCache
|
||||
|
||||
private void SetupForLegacy()
|
||||
{
|
||||
var settings = SettingsForTests.GetMockSettings();
|
||||
var settings = SettingsForTests.GenerateMockSettings();
|
||||
var contentMock = Mock.Get(settings.Content);
|
||||
contentMock.Setup(x => x.UseLegacyXmlSchema).Returns(true);
|
||||
SettingsForTests.ConfigureSettings(settings);
|
||||
|
||||
@@ -22,6 +22,8 @@ namespace Umbraco.Tests.PublishedContent
|
||||
get { return DatabaseBehavior.NoDatabasePerFixture; }
|
||||
}
|
||||
|
||||
private IUmbracoSettingsSection _umbracoSettings;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
// required so we can access property.Value
|
||||
@@ -29,7 +31,11 @@ namespace Umbraco.Tests.PublishedContent
|
||||
|
||||
base.Initialize();
|
||||
|
||||
var scriptingMock = Mock.Get(UmbracoSettings.Scripting);
|
||||
//generate new mock settings and assign so we can configure in individual tests
|
||||
_umbracoSettings = SettingsForTests.GenerateMockSettings();
|
||||
SettingsForTests.ConfigureSettings(_umbracoSettings);
|
||||
|
||||
var scriptingMock = Mock.Get(_umbracoSettings.Scripting);
|
||||
scriptingMock.Setup(x => x.DataTypeModelStaticMappings).Returns(new List<IRazorStaticMapping>());
|
||||
|
||||
// need to specify a custom callback for unit tests
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace Umbraco.Tests.PublishedContent
|
||||
{
|
||||
base.TestSetup();
|
||||
|
||||
var settings = SettingsForTests.GetMockSettings();
|
||||
var settings = SettingsForTests.GenerateMockSettings();
|
||||
var contentMock = Mock.Get(settings.Content);
|
||||
contentMock.Setup(x => x.ForceSafeAliases).Returns(true);
|
||||
contentMock.Setup(x => x.UmbracoLibraryCacheDuration).Returns(1800);
|
||||
|
||||
@@ -2,6 +2,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Core.Configuration.UmbracoSettings;
|
||||
using Umbraco.Tests.TestHelpers;
|
||||
using Umbraco.Web.PublishedCache.XmlPublishedCache;
|
||||
using Umbraco.Web.Routing;
|
||||
@@ -18,6 +19,17 @@ namespace Umbraco.Tests.Routing
|
||||
base.FreezeResolution();
|
||||
}
|
||||
|
||||
private IUmbracoSettingsSection _umbracoSettings;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
//generate new mock settings and assign so we can configure in individual tests
|
||||
_umbracoSettings = SettingsForTests.GenerateMockSettings();
|
||||
SettingsForTests.ConfigureSettings(_umbracoSettings);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This checks that when we retreive a NiceUrl for multiple items that there are no issues with cache overlap
|
||||
/// and that they are all cached correctly.
|
||||
@@ -29,7 +41,7 @@ namespace Umbraco.Tests.Routing
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false;
|
||||
|
||||
var requestHandlerMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestHandlerMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestHandlerMock.Setup(x => x.AddTrailingSlash).Returns(false);// (cached routes have none)
|
||||
|
||||
var samples = new Dictionary<int, string> {
|
||||
@@ -93,7 +105,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false;
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
var result = routingContext.UrlProvider.GetUrl(nodeId);
|
||||
@@ -117,7 +129,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = true;
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
var result = routingContext.UrlProvider.GetUrl(nodeId);
|
||||
@@ -131,7 +143,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false;
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
Assert.AreEqual("/home/sub1/custom-sub-1/", routingContext.UrlProvider.GetUrl(1177));
|
||||
@@ -153,7 +165,7 @@ namespace Umbraco.Tests.Routing
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false;
|
||||
|
||||
//mock the Umbraco settings that we need
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
Assert.AreEqual("#", routingContext.UrlProvider.GetUrl(999999));
|
||||
|
||||
@@ -3,6 +3,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Core.Configuration.UmbracoSettings;
|
||||
using Umbraco.Tests.TestHelpers;
|
||||
using Umbraco.Web.PublishedCache.XmlPublishedCache;
|
||||
using Umbraco.Web.Routing;
|
||||
@@ -18,10 +19,16 @@ namespace Umbraco.Tests.Routing
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
//generate new mock settings and assign so we can configure in individual tests
|
||||
_umbracoSettings = SettingsForTests.GenerateMockSettings();
|
||||
SettingsForTests.ConfigureSettings(_umbracoSettings);
|
||||
|
||||
// ensure we can create them although the content is not in the database
|
||||
TestHelper.DropForeignKeys("umbracoDomains");
|
||||
}
|
||||
|
||||
private IUmbracoSettingsSection _umbracoSettings;
|
||||
|
||||
protected override DatabaseBehavior DatabaseTestBehavior
|
||||
{
|
||||
get { return DatabaseBehavior.NewSchemaPerFixture; }
|
||||
@@ -202,7 +209,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
InitializeLanguagesAndDomains();
|
||||
@@ -232,7 +239,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
InitializeLanguagesAndDomains();
|
||||
@@ -254,7 +261,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
InitializeLanguagesAndDomains();
|
||||
@@ -282,7 +289,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
InitializeLanguagesAndDomains();
|
||||
@@ -300,7 +307,7 @@ namespace Umbraco.Tests.Routing
|
||||
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
InitializeLanguagesAndDomains();
|
||||
@@ -367,7 +374,7 @@ namespace Umbraco.Tests.Routing
|
||||
SetDomains4();
|
||||
|
||||
//mock the Umbraco settings that we need
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
Assert.AreEqual("/en/1001-1-1/", routingContext.UrlProvider.GetUrl(100111));
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
using System.Linq;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Core.Configuration.UmbracoSettings;
|
||||
using Umbraco.Tests.TestHelpers;
|
||||
using Umbraco.Web.PublishedCache.XmlPublishedCache;
|
||||
using umbraco.cms.businesslogic.web;
|
||||
@@ -23,7 +24,7 @@ namespace Umbraco.Tests.Routing
|
||||
{
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(true);
|
||||
|
||||
InitializeLanguagesAndDomains();
|
||||
@@ -65,12 +66,18 @@ namespace Umbraco.Tests.Routing
|
||||
//Assert.AreEqual("http://domain1.com/1001-1/1001-1-1", routingContext.NiceUrlProvider.GetNiceUrl(100111, true)); // bad
|
||||
}
|
||||
|
||||
private IUmbracoSettingsSection _umbracoSettings;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
|
||||
// ensure we can create them although the content is not in the database
|
||||
TestHelper.DropForeignKeys("umbracoDomains");
|
||||
|
||||
//generate new mock settings and assign so we can configure in individual tests
|
||||
_umbracoSettings = SettingsForTests.GenerateMockSettings();
|
||||
SettingsForTests.ConfigureSettings(_umbracoSettings);
|
||||
}
|
||||
|
||||
protected override void FreezeResolution()
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using Umbraco.Core.Configuration.UmbracoSettings;
|
||||
using Umbraco.Tests.TestHelpers;
|
||||
using Umbraco.Tests.TestHelpers.Stubs;
|
||||
using Umbraco.Web.Routing;
|
||||
@@ -11,6 +12,9 @@ namespace Umbraco.Tests.Routing
|
||||
[TestFixture]
|
||||
public class uQueryGetNodeIdByUrlTests : BaseRoutingTest
|
||||
{
|
||||
|
||||
private IUmbracoSettingsSection _umbracoSettings;
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
@@ -36,6 +40,10 @@ namespace Umbraco.Tests.Routing
|
||||
////assign the routing context back to the umbraco context
|
||||
//umbracoContext.RoutingContext = routingContext;
|
||||
Umbraco.Web.UmbracoContext.Current = routingContext.UmbracoContext;
|
||||
|
||||
//generate new mock settings and assign so we can configure in individual tests
|
||||
_umbracoSettings = SettingsForTests.GenerateMockSettings();
|
||||
SettingsForTests.ConfigureSettings(_umbracoSettings);
|
||||
}
|
||||
|
||||
public override void TearDown()
|
||||
@@ -57,9 +65,10 @@ namespace Umbraco.Tests.Routing
|
||||
{
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false;
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
Assert.AreEqual(nodeId, global::umbraco.uQuery.GetNodeIdByUrl("http://example.com" + url));
|
||||
}
|
||||
|
||||
@@ -76,9 +85,10 @@ namespace Umbraco.Tests.Routing
|
||||
{
|
||||
SettingsForTests.UseDirectoryUrls = true;
|
||||
SettingsForTests.HideTopLevelNodeFromPath = false;
|
||||
var requestMock = Mock.Get(UmbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
var requestMock = Mock.Get(_umbracoSettings.RequestHandler);
|
||||
requestMock.Setup(x => x.UseDomainPrefixes).Returns(false);
|
||||
|
||||
Assert.AreEqual(nodeId, global::umbraco.uQuery.GetNodeIdByUrl(url));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,16 +19,7 @@ namespace Umbraco.Tests.TestHelpers
|
||||
[SetUp]
|
||||
public virtual void Initialize()
|
||||
{
|
||||
using (DisposableTimer.TraceDuration < BaseUmbracoConfigurationTest>("init"))
|
||||
{
|
||||
//mock the Umbraco settings that we need
|
||||
var settings = SettingsForTests.GetMockSettings();
|
||||
//sets the global singleton to use the mocked format
|
||||
SettingsForTests.ConfigureSettings(settings);
|
||||
//set our local variable for tests to use (preferably)
|
||||
UmbracoSettings = settings;
|
||||
}
|
||||
|
||||
SettingsForTests.Reset();
|
||||
}
|
||||
|
||||
[TearDown]
|
||||
@@ -37,7 +28,5 @@ namespace Umbraco.Tests.TestHelpers
|
||||
//reset settings
|
||||
SettingsForTests.Reset();
|
||||
}
|
||||
|
||||
protected virtual IUmbracoSettingsSection UmbracoSettings { get; private set; }
|
||||
}
|
||||
}
|
||||
@@ -25,7 +25,7 @@ namespace Umbraco.Tests.TestHelpers
|
||||
/// Returns generated settings which can be stubbed to return whatever values necessary
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static IUmbracoSettingsSection GetMockSettings()
|
||||
public static IUmbracoSettingsSection GenerateMockSettings()
|
||||
{
|
||||
var settings = new Mock<IUmbracoSettingsSection>();
|
||||
|
||||
@@ -157,14 +157,20 @@ namespace Umbraco.Tests.TestHelpers
|
||||
ConfigureSettings(GetDefault());
|
||||
}
|
||||
|
||||
private static IUmbracoSettingsSection _defaultSettings;
|
||||
|
||||
internal static IUmbracoSettingsSection GetDefault()
|
||||
{
|
||||
var config = new FileInfo(TestHelper.MapPathForTest("~/Configurations/UmbracoSettings/web.config"));
|
||||
if (_defaultSettings == null)
|
||||
{
|
||||
var config = new FileInfo(TestHelper.MapPathForTest("~/Configurations/UmbracoSettings/web.config"));
|
||||
|
||||
var fileMap = new ExeConfigurationFileMap() { ExeConfigFilename = config.FullName };
|
||||
var configuration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
|
||||
var fileMap = new ExeConfigurationFileMap() { ExeConfigFilename = config.FullName };
|
||||
var configuration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
|
||||
_defaultSettings = configuration.GetSection("umbracoConfiguration/defaultSettings") as UmbracoSettingsSection;
|
||||
}
|
||||
|
||||
return configuration.GetSection("umbracoConfiguration/defaultSettings") as UmbracoSettingsSection;
|
||||
return _defaultSettings;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ namespace Umbraco.Tests
|
||||
{
|
||||
ConfigurationManager.AppSettings.Set("umbracoUseDirectoryUrls", directoryUrls ? "true" : "false");
|
||||
|
||||
var settings = SettingsForTests.GetMockSettings();
|
||||
var settings = SettingsForTests.GenerateMockSettings();
|
||||
var requestMock = Mock.Get(settings.RequestHandler);
|
||||
requestMock.Setup(x => x.AddTrailingSlash).Returns(trailingSlash);
|
||||
SettingsForTests.ConfigureSettings(settings);
|
||||
|
||||
Reference in New Issue
Block a user