Files
Umbraco-CMS/src/Umbraco.Tests/PublishedContent/PublishedContentTestBase.cs

67 lines
2.4 KiB
C#
Raw Normal View History

using System;
using System.IO;
2013-09-05 17:47:13 +02:00
using System.Linq;
using Umbraco.Core;
using Umbraco.Core.Configuration;
2013-09-05 17:47:13 +02:00
using Umbraco.Core.Models;
using Umbraco.Core.Models.PublishedContent;
using Umbraco.Core.PropertyEditors;
using Umbraco.Core.PropertyEditors.ValueConverters;
using Umbraco.Tests.TestHelpers;
using Umbraco.Web;
2013-02-05 06:31:13 -01:00
using Umbraco.Web.PublishedCache;
using Umbraco.Web.PublishedCache.XmlPublishedCache;
namespace Umbraco.Tests.PublishedContent
{
/// <summary>
/// Abstract base class for tests for published content and published media
/// </summary>
public abstract class PublishedContentTestBase : BaseRoutingTest
{
public override void Initialize()
{
base.Initialize();
2013-09-05 17:47:13 +02:00
// need to specify a custom callback for unit tests
var propertyTypes = new[]
{
2013-09-05 17:47:13 +02:00
// AutoPublishedContentType will auto-generate other properties
2013-09-24 09:12:58 +02:00
new PublishedPropertyType("content", 0, Constants.PropertyEditors.TinyMCEv3Alias),
};
2013-09-05 17:47:13 +02:00
var type = new AutoPublishedContentType(0, "anything", propertyTypes);
PublishedContentType.GetPublishedContentTypeCallback = (alias) => type;
var rCtx = GetRoutingContext("/test", 1234);
UmbracoContext.Current = rCtx.UmbracoContext;
2013-02-21 21:33:21 +06:00
}
protected override void FreezeResolution()
{
2013-09-24 10:49:30 +02:00
if (PropertyValueConvertersResolver.HasCurrent == false)
PropertyValueConvertersResolver.Current = new PropertyValueConvertersResolver(
new[]
{
typeof(DatePickerValueConverter),
typeof(TinyMceValueConverter),
typeof(YesNoValueConverter)
});
2013-02-21 21:33:21 +06:00
PublishedCachesResolver.Current = new PublishedCachesResolver(new PublishedCaches(
new PublishedContentCache(), new PublishedMediaCache()));
2013-02-21 21:33:21 +06:00
2013-09-05 17:47:13 +02:00
if (PublishedContentModelFactoryResolver.HasCurrent == false)
PublishedContentModelFactoryResolver.Current = new PublishedContentModelFactoryResolver();
2013-02-21 21:33:21 +06:00
base.FreezeResolution();
}
public override void TearDown()
{
base.TearDown();
UmbracoContext.Current = null;
}
}
}