From b043ee577f612d030ea97c7258382ffd82a9690d Mon Sep 17 00:00:00 2001 From: Shannon Date: Mon, 16 Sep 2013 17:39:45 +1000 Subject: [PATCH] Renamed config interfaces properly with Section suffix, re-implemented the For UmbracoConfiguration method to retreive specific settings... might use this entirely instead of the nested access as it might make it easier to mock. --- .../Configuration/BaseRest/BaseRestSection.cs | 13 +- .../BaseRest/ExtensionElement.cs | 8 +- .../{IBaseRest.cs => IBaseRestSection.cs} | 2 +- .../Configuration/BaseRest/IExtension.cs | 2 +- .../{IMethod.cs => IMethodSection.cs} | 2 +- .../Configuration/BaseRest/MethodElement.cs | 2 +- .../FileSystemProvidersSection.cs | 1 - .../Configuration/UmbracoConfiguration.cs | 110 ++++++----- .../UmbracoConfigurationSection.cs | 6 +- .../UmbracoSettings/ContentElement.cs | 3 +- .../UmbracoSettings/ContentImagingElement.cs | 12 +- .../UmbracoSettings/DeveloperElement.cs | 4 +- .../UmbracoSettings/DistributedCallElement.cs | 8 +- .../UmbracoSettings/HelpElement.cs | 6 +- .../UmbracoSettings/IContentSection.cs | 2 +- .../{IDeveloper.cs => IDeveloperSection.cs} | 2 +- ...utedCall.cs => IDistributedCallSection.cs} | 2 +- .../{IHelp.cs => IHelpSection.cs} | 2 +- ...ield.cs => IImagingAutoFillUploadField.cs} | 2 +- .../{ILogging.cs => ILoggingSection.cs} | 2 +- .../{IProviders.cs => IProvidersSection.cs} | 2 +- ...epositories.cs => IRepositoriesSection.cs} | 2 +- ...stHandler.cs => IRequestHandlerSection.cs} | 2 +- ...uledTasks.cs => IScheduledTasksSection.cs} | 2 +- .../{IScripting.cs => IScriptingSection.cs} | 2 +- .../{ISecurity.cs => ISecuritySection.cs} | 2 +- .../{ITemplates.cs => ITemplatesSection.cs} | 2 +- .../UmbracoSettings/IUmbracoSettings.cs | 33 ---- .../IUmbracoSettingsSection.cs | 33 ++++ ...ule.cs => IViewStateMoverModuleSection.cs} | 2 +- .../{IWebRouting.cs => IWebRoutingSection.cs} | 2 +- ...=> ImagingAutoFillPropertiesCollection.cs} | 72 +++---- ...s => ImagingAutoFillUploadFieldElement.cs} | 180 +++++++++--------- .../UmbracoSettings/LoggingElement.cs | 20 +- .../UmbracoSettings/ProvidersElement.cs | 2 +- .../UmbracoSettings/RepositoriesElement.cs | 4 +- .../UmbracoSettings/RequestHandlerElement.cs | 10 +- .../UmbracoSettings/ScheduledTasksElement.cs | 4 +- .../UmbracoSettings/ScriptingElement.cs | 6 +- .../UmbracoSettings/SecurityElement.cs | 10 +- .../UmbracoSettings/TemplatesElement.cs | 10 +- .../UmbracoSettings/UmbracoSettingsSection.cs | 41 ++-- .../ViewstateMoverModuleElement.cs | 2 +- .../UmbracoSettings/WebRoutingElement.cs | 2 +- .../IO/FileSystemProviderManager.cs | 2 +- src/Umbraco.Core/Models/ContentExtensions.cs | 2 +- .../Persistence/RepositoryFactory.cs | 4 +- src/Umbraco.Core/PluginManager.cs | 18 +- src/Umbraco.Core/Umbraco.Core.csproj | 38 ++-- .../ContentElementDefaultTests.cs | 24 +-- .../UmbracoSettings/ContentElementTests.cs | 100 +++++----- .../UmbracoSettings/DeveloperElementTests.cs | 4 +- .../DistributedCallElementDefaultTests.cs | 4 +- .../DistributedCallElementTests.cs | 14 +- .../HelpElementDefaultTests.cs | 2 +- .../UmbracoSettings/HelpElementTests.cs | 24 +-- .../LoggingElementDefaultTests.cs | 14 +- .../UmbracoSettings/LoggingElementTests.cs | 24 +-- .../PackageRepositoriesElementDefaultTests.cs | 6 +- .../PackageRepositoriesElementTests.cs | 10 +- .../UmbracoSettings/ProvidersElementTests.cs | 2 +- .../RequestHandlerElementTests.cs | 14 +- .../ScheduledTasksElementDefaultTests.cs | 2 +- .../ScheduledTasksElementTests.cs | 18 +- .../ScriptingElementDefaultTests.cs | 2 +- .../UmbracoSettings/ScriptingElementTests.cs | 4 +- .../UmbracoSettings/SecurityElementTests.cs | 8 +- .../UmbracoSettings/TemplateElementTests.cs | 8 +- .../UmbracoSettings/UmbracoSettingsTests.cs | 10 +- .../ViewstateMoverModuleElementTests.cs | 2 +- .../UmbracoSettings/WebRoutingElementTests.cs | 6 +- .../PublishedContentCacheTests.cs | 4 +- .../LegacyExamineBackedMediaTests.cs | 2 +- .../Routing/NiceUrlProviderTests.cs | 10 +- .../NiceUrlsProviderWithDomainsTests.cs | 12 +- .../Routing/UrlsWithNestedDomains.cs | 2 +- .../Routing/uQueryGetNodeIdByUrlTests.cs | 4 +- .../TestHelpers/BaseUmbracoApplicationTest.cs | 5 +- .../TestHelpers/SettingsForTests.cs | 4 +- src/Umbraco.Tests/TestHelpers/TestHelper.cs | 1 + src/Umbraco.Tests/UriUtilityTests.cs | 2 +- .../FileUploadPropertyEditor.cs | 4 +- .../viewstateMoverModule.cs | 2 +- src/umbraco.businesslogic/UmbracoSettings.cs | 2 +- .../businesslogic/datatype/FileHandlerData.cs | 2 +- 85 files changed, 540 insertions(+), 520 deletions(-) rename src/Umbraco.Core/Configuration/BaseRest/{IBaseRest.cs => IBaseRestSection.cs} (88%) rename src/Umbraco.Core/Configuration/BaseRest/{IMethod.cs => IMethodSection.cs} (88%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IDeveloper.cs => IDeveloperSection.cs} (71%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IDistributedCall.cs => IDistributedCallSection.cs} (73%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IHelp.cs => IHelpSection.cs} (73%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IContentImagingAutoFillUploadField.cs => IImagingAutoFillUploadField.cs} (87%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{ILogging.cs => ILoggingSection.cs} (88%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IProviders.cs => IProvidersSection.cs} (69%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IRepositories.cs => IRepositoriesSection.cs} (68%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IRequestHandler.cs => IRequestHandlerSection.cs} (78%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IScheduledTasks.cs => IScheduledTasksSection.cs} (67%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IScripting.cs => IScriptingSection.cs} (79%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{ISecurity.cs => ISecuritySection.cs} (78%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{ITemplates.cs => ITemplatesSection.cs} (78%) delete mode 100644 src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettings.cs create mode 100644 src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettingsSection.cs rename src/Umbraco.Core/Configuration/UmbracoSettings/{IViewstateMoverModule.cs => IViewStateMoverModuleSection.cs} (55%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{IWebRouting.cs => IWebRoutingSection.cs} (75%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{ContentImagingAutoFillPropertiesCollection.cs => ImagingAutoFillPropertiesCollection.cs} (50%) rename src/Umbraco.Core/Configuration/UmbracoSettings/{ContentImagingAutoFillUploadFieldElement.cs => ImagingAutoFillUploadFieldElement.cs} (82%) diff --git a/src/Umbraco.Core/Configuration/BaseRest/BaseRestSection.cs b/src/Umbraco.Core/Configuration/BaseRest/BaseRestSection.cs index 6372ca1b34..0ca638402f 100644 --- a/src/Umbraco.Core/Configuration/BaseRest/BaseRestSection.cs +++ b/src/Umbraco.Core/Configuration/BaseRest/BaseRestSection.cs @@ -4,19 +4,12 @@ using System.Configuration; namespace Umbraco.Core.Configuration.BaseRest { [ConfigurationKey("BaseRestExtensions")] - internal class BaseRestSection : UmbracoConfigurationSection, IBaseRest + internal class BaseRestSection : UmbracoConfigurationSection, IBaseRestSection { private const string KeyEnabled = "enabled"; private bool? _enabled; - - //internal protected override void ResetSection() - //{ - // base.ResetSection(); - - // _enabled = null; - //} - + [ConfigurationProperty("", IsKey = false, IsRequired = false, IsDefaultCollection = true)] public ExtensionElementCollection Items { @@ -36,7 +29,7 @@ namespace Umbraco.Core.Configuration.BaseRest internal set { _enabled = value; } } - IExtensionsCollection IBaseRest.Items + IExtensionsCollection IBaseRestSection.Items { get { return Items; } } diff --git a/src/Umbraco.Core/Configuration/BaseRest/ExtensionElement.cs b/src/Umbraco.Core/Configuration/BaseRest/ExtensionElement.cs index 5f0a5540ae..9d59281b11 100644 --- a/src/Umbraco.Core/Configuration/BaseRest/ExtensionElement.cs +++ b/src/Umbraco.Core/Configuration/BaseRest/ExtensionElement.cs @@ -6,7 +6,7 @@ namespace Umbraco.Core.Configuration.BaseRest { [ConfigurationCollection(typeof(ExtensionElement), CollectionType = ConfigurationElementCollectionType.BasicMapAlternate)] - internal class ExtensionElement : ConfigurationElementCollection, IEnumerable, IExtension + internal class ExtensionElement : ConfigurationElementCollection, IEnumerable, IExtension { const string KeyAlias = "alias"; const string KeyType = "type"; @@ -59,11 +59,11 @@ namespace Umbraco.Core.Configuration.BaseRest get { return (MethodElement)BaseGet(index); } } - IEnumerator IEnumerable.GetEnumerator() + IEnumerator IEnumerable.GetEnumerator() { for (var i = 0; i < Count; i++) { - yield return BaseGet(i) as IMethod; + yield return BaseGet(i) as IMethodSection; } } @@ -72,7 +72,7 @@ namespace Umbraco.Core.Configuration.BaseRest return GetEnumerator(); } - IMethod IExtension.this[string index] + IMethodSection IExtension.this[string index] { get { return this[index]; } } diff --git a/src/Umbraco.Core/Configuration/BaseRest/IBaseRest.cs b/src/Umbraco.Core/Configuration/BaseRest/IBaseRestSection.cs similarity index 88% rename from src/Umbraco.Core/Configuration/BaseRest/IBaseRest.cs rename to src/Umbraco.Core/Configuration/BaseRest/IBaseRestSection.cs index 00e72a54a3..ff661465eb 100644 --- a/src/Umbraco.Core/Configuration/BaseRest/IBaseRest.cs +++ b/src/Umbraco.Core/Configuration/BaseRest/IBaseRestSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.BaseRest { - public interface IBaseRest + public interface IBaseRestSection { IExtensionsCollection Items { get; } diff --git a/src/Umbraco.Core/Configuration/BaseRest/IExtension.cs b/src/Umbraco.Core/Configuration/BaseRest/IExtension.cs index a40c83422b..a0657d8f25 100644 --- a/src/Umbraco.Core/Configuration/BaseRest/IExtension.cs +++ b/src/Umbraco.Core/Configuration/BaseRest/IExtension.cs @@ -6,6 +6,6 @@ string Type { get; } - IMethod this[string index] { get; } + IMethodSection this[string index] { get; } } } \ No newline at end of file diff --git a/src/Umbraco.Core/Configuration/BaseRest/IMethod.cs b/src/Umbraco.Core/Configuration/BaseRest/IMethodSection.cs similarity index 88% rename from src/Umbraco.Core/Configuration/BaseRest/IMethod.cs rename to src/Umbraco.Core/Configuration/BaseRest/IMethodSection.cs index c1e9f00357..c226c34a60 100644 --- a/src/Umbraco.Core/Configuration/BaseRest/IMethod.cs +++ b/src/Umbraco.Core/Configuration/BaseRest/IMethodSection.cs @@ -1,6 +1,6 @@ namespace Umbraco.Core.Configuration.BaseRest { - public interface IMethod + public interface IMethodSection { string Name { get; } diff --git a/src/Umbraco.Core/Configuration/BaseRest/MethodElement.cs b/src/Umbraco.Core/Configuration/BaseRest/MethodElement.cs index c9a06006ea..c52999b9ea 100644 --- a/src/Umbraco.Core/Configuration/BaseRest/MethodElement.cs +++ b/src/Umbraco.Core/Configuration/BaseRest/MethodElement.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.BaseRest { - internal class MethodElement : ConfigurationElement, IMethod + internal class MethodElement : ConfigurationElement, IMethodSection { const string KeyName = "name"; const string KeyAllowAll = "allowAll"; diff --git a/src/Umbraco.Core/Configuration/FileSystemProvidersSection.cs b/src/Umbraco.Core/Configuration/FileSystemProvidersSection.cs index a893d541a6..0da1cb802a 100644 --- a/src/Umbraco.Core/Configuration/FileSystemProvidersSection.cs +++ b/src/Umbraco.Core/Configuration/FileSystemProvidersSection.cs @@ -8,7 +8,6 @@ namespace Umbraco.Core.Configuration { public class FileSystemProvidersSection : ConfigurationSection { - private const string PROVIDERS_KEY = "providers"; [ConfigurationProperty("", IsDefaultCollection = true, IsRequired = true)] public FileSystemProviderElementCollection Providers diff --git a/src/Umbraco.Core/Configuration/UmbracoConfiguration.cs b/src/Umbraco.Core/Configuration/UmbracoConfiguration.cs index af39da8c5c..f9783c77f3 100644 --- a/src/Umbraco.Core/Configuration/UmbracoConfiguration.cs +++ b/src/Umbraco.Core/Configuration/UmbracoConfiguration.cs @@ -1,6 +1,8 @@ using System; using System.Collections.Concurrent; +using System.Collections.Generic; using System.Configuration; +using System.Linq; using System.Threading; using Umbraco.Core.Configuration.BaseRest; using Umbraco.Core.Configuration.UmbracoSettings; @@ -24,57 +26,63 @@ namespace Umbraco.Core.Configuration #endregion - //#region Extensible settings + #region Extensible settings - //TODO: Need to think about this... it seems nicer to do this than having giant nested access to the configuration - // sections, BUT we don't want to attribute the interfaces. We can make IUmbracoConfigurationSection plugins and then search for the matching - // one based on the specified interface ? + private static readonly ConcurrentDictionary Sections = new ConcurrentDictionary(); - //private static readonly ConcurrentDictionary Sections = new ConcurrentDictionary(); + /// + /// Gets the specified UmbracoConfigurationSection. + /// + /// The type of the UmbracoConfigurationSectiont. + /// The UmbracoConfigurationSection of the specified type. + public static T For(System.Configuration.Configuration config = null) + where T : IUmbracoConfigurationSection + { + var sectionType = typeof(T); + return (T)Sections.GetOrAdd(sectionType, type => + { + //if there is no entry for this type + var configurationSections = PluginManager.Current.ResolveUmbracoConfigurationSections(); + var implementationType = configurationSections.FirstOrDefault(TypeHelper.IsTypeAssignableFrom); + if (implementationType == null) + { + throw new InvalidOperationException("Could not find an implementation for " + typeof(T)); + } - ///// - ///// Gets the specified UmbracoConfigurationSection. - ///// - ///// The type of the UmbracoConfigurationSectiont. - ///// The UmbracoConfigurationSection of the specified type. - //public static T For() - // where T : IUmbracoConfigurationSection - //{ - // var sectionType = typeof(T); - // return (T)Sections.GetOrAdd(sectionType, type => - // { - // var attr = sectionType.GetCustomAttribute(false); - // if (attr == null) - // throw new InvalidOperationException(string.Format("Type \"{0}\" is missing attribute ConfigurationKeyAttribute.", sectionType.FullName)); + var attr = implementationType.GetCustomAttribute(false); + if (attr == null) + throw new InvalidOperationException(string.Format("Type \"{0}\" is missing attribute ConfigurationKeyAttribute.", sectionType.FullName)); - // var sectionKey = attr.ConfigurationKey; - // if (string.IsNullOrWhiteSpace(sectionKey)) - // throw new InvalidOperationException(string.Format("Type \"{0}\" ConfigurationKeyAttribute value is null or empty.", sectionType.FullName)); + var sectionKey = attr.ConfigurationKey; + if (string.IsNullOrWhiteSpace(sectionKey)) + throw new InvalidOperationException(string.Format("Type \"{0}\" {1} value is null or empty.", sectionType.FullName, typeof(ConfigurationKeyAttribute))); - // var section = GetSection(sectionType, sectionKey); + var section = GetSection(sectionType, sectionKey, config); - // return (T)section; - // }); - //} + return (T)section; + }); + } - //private static IUmbracoConfigurationSection GetSection(Type sectionType, string key) - //{ - // if (TypeHelper.IsTypeAssignableFrom(sectionType) == false) - // { - // throw new ArgumentException(string.Format( - // "Type \"{0}\" does not inherit from UmbracoConfigurationSection.", sectionType.FullName), "sectionType"); - // } + private static IUmbracoConfigurationSection GetSection(Type sectionType, string key, System.Configuration.Configuration config = null) + { + var section = config == null + ? ConfigurationManager.GetSection(key) + : config.GetSection(key); - // var section = ConfigurationManager.GetSection(key); + if (section == null) + { + throw new KeyNotFoundException("Could not find/load config section: " + key); + } - // if (section != null && section.GetType() != sectionType) - // throw new InvalidCastException(string.Format("Section at key \"{0}\" is of type \"{1}\" and not \"{2}\".", - // key, section.GetType().FullName, sectionType.FullName)); + var result = section as IUmbracoConfigurationSection; + if (result == null) + { + throw new InvalidOperationException(string.Format("The section type requested '{0}' does not match the resulting section type '{1}", sectionType, section.GetType())); + } + return result; + } - // return section as IUmbracoConfigurationSection; - //} - - //#endregion + #endregion /// /// Default constructor @@ -83,13 +91,23 @@ namespace Umbraco.Core.Configuration { if (UmbracoSettings == null) { - var umbracoSettings = ConfigurationManager.GetSection("umbracoConfiguration/settings") as IUmbracoSettings; + var umbracoSettings = ConfigurationManager.GetSection("umbracoConfiguration/settings") as IUmbracoSettingsSection; if (umbracoSettings == null) { - LogHelper.Warn("Could not load the IUmbracoSettings from config file!"); + LogHelper.Warn("Could not load the " + typeof(IUmbracoSettingsSection) + " from config file!"); } UmbracoSettings = umbracoSettings; } + + if (BaseRestExtensions == null) + { + var baseRestExtensions = ConfigurationManager.GetSection("umbracoConfiguration/BaseRestExtensions") as IBaseRestSection; + if (baseRestExtensions == null) + { + LogHelper.Warn("Could not load the " + typeof(IBaseRestSection) + " from config file!"); + } + BaseRestExtensions = baseRestExtensions; + } } /// @@ -97,7 +115,7 @@ namespace Umbraco.Core.Configuration /// /// /// - public UmbracoConfiguration(IUmbracoSettings umbracoSettings, IBaseRest baseRestSettings) + public UmbracoConfiguration(IUmbracoSettingsSection umbracoSettings, IBaseRestSection baseRestSettings) { UmbracoSettings = umbracoSettings; BaseRestExtensions = baseRestSettings; @@ -106,14 +124,14 @@ namespace Umbraco.Core.Configuration /// /// Gets the IUmbracoSettings /// - public IUmbracoSettings UmbracoSettings + public IUmbracoSettingsSection UmbracoSettings { get; //This is purely for setting for Unit tests ONLY internal set; } - public IBaseRest BaseRestExtensions { get; private set; } + public IBaseRestSection BaseRestExtensions { get; private set; } //TODO: Add other configurations here ! } diff --git a/src/Umbraco.Core/Configuration/UmbracoConfigurationSection.cs b/src/Umbraco.Core/Configuration/UmbracoConfigurationSection.cs index 9124eb2fb1..2b7678a6d8 100644 --- a/src/Umbraco.Core/Configuration/UmbracoConfigurationSection.cs +++ b/src/Umbraco.Core/Configuration/UmbracoConfigurationSection.cs @@ -2,7 +2,9 @@ namespace Umbraco.Core.Configuration { - + /// + /// Represents an Umbraco configuration section which can be used to pass to UmbracoConfiguration.For{T} + /// public interface IUmbracoConfigurationSection { @@ -19,7 +21,7 @@ namespace Umbraco.Core.Configuration /// The UmbracoSettings.For{T} method will return a section, either one that /// is in the configuration file, or a section that was created with default values. /// - public abstract class UmbracoConfigurationSection : ConfigurationSection + public abstract class UmbracoConfigurationSection : ConfigurationSection, IUmbracoConfigurationSection { /// /// Gets a value indicating whether the section actually is in the configuration file. diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ContentElement.cs index 5a027165db..64fdcf82ad 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ContentElement.cs @@ -3,6 +3,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { + [ConfigurationKey("umbracoConfiguration/settings/content")] internal class ContentElement : ConfigurationElement, IContentSection { [ConfigurationProperty("imaging")] @@ -309,7 +310,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings get { return Imaging.ImageTagAllowedAttributes; } } - IEnumerable IContentSection.ImageAutoFillProperties + IEnumerable IContentSection.ImageAutoFillProperties { get { return Imaging.ImageAutoFillProperties; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingElement.cs index c450798c37..6b8542ec24 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingElement.cs @@ -29,11 +29,11 @@ namespace Umbraco.Core.Configuration.UmbracoSettings } } - private ContentImagingAutoFillPropertiesCollection _defaultImageAutoFill; + private ImagingAutoFillPropertiesCollection _defaultImageAutoFill; - [ConfigurationCollection(typeof(ContentImagingAutoFillPropertiesCollection), AddItemName = "uploadField")] + [ConfigurationCollection(typeof(ImagingAutoFillPropertiesCollection), AddItemName = "uploadField")] [ConfigurationProperty("autoFillImageProperties", IsDefaultCollection = true)] - internal ContentImagingAutoFillPropertiesCollection ImageAutoFillProperties + internal ImagingAutoFillPropertiesCollection ImageAutoFillProperties { get { @@ -47,9 +47,9 @@ namespace Umbraco.Core.Configuration.UmbracoSettings var autoFill = this[prop] as ConfigurationElement; if (autoFill != null && autoFill.ElementInformation.IsPresent == false) { - _defaultImageAutoFill = new ContentImagingAutoFillPropertiesCollection + _defaultImageAutoFill = new ImagingAutoFillPropertiesCollection { - new ContentImagingAutoFillUploadFieldElement + new ImagingAutoFillUploadFieldElement { Alias = "umbracoFile" } @@ -57,7 +57,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings return _defaultImageAutoFill; } - return (ContentImagingAutoFillPropertiesCollection) base["autoFillImageProperties"]; + return (ImagingAutoFillPropertiesCollection) base["autoFillImageProperties"]; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/DeveloperElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/DeveloperElement.cs index 4208906457..f2bf88db04 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/DeveloperElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/DeveloperElement.cs @@ -3,7 +3,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class DeveloperElement : ConfigurationElement, IDeveloper + internal class DeveloperElement : ConfigurationElement, IDeveloperSection { private AppCodeFileExtensionsElement _default; @@ -39,7 +39,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings } } - IEnumerable IDeveloper.AppCodeFileExtensions + IEnumerable IDeveloperSection.AppCodeFileExtensions { get { return AppCodeFileExtensions.AppCodeFileExtensionsCollection; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/DistributedCallElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/DistributedCallElement.cs index 5446562084..9a9047f838 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/DistributedCallElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/DistributedCallElement.cs @@ -3,7 +3,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class DistributedCallElement : ConfigurationElement, IDistributedCall + internal class DistributedCallElement : ConfigurationElement, IDistributedCallSection { [ConfigurationProperty("enable", DefaultValue = false)] internal bool Enabled @@ -30,17 +30,17 @@ namespace Umbraco.Core.Configuration.UmbracoSettings get { return (ServerCollection)base["servers"]; } } - bool IDistributedCall.Enabled + bool IDistributedCallSection.Enabled { get { return Enabled; } } - int IDistributedCall.UserId + int IDistributedCallSection.UserId { get { return UserId; } } - IEnumerable IDistributedCall.Servers + IEnumerable IDistributedCallSection.Servers { get { return Servers; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/HelpElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/HelpElement.cs index 1d6fee490c..cc4d459359 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/HelpElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/HelpElement.cs @@ -3,7 +3,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class HelpElement : ConfigurationElement, IHelp + internal class HelpElement : ConfigurationElement, IHelpSection { [ConfigurationProperty("defaultUrl", DefaultValue = "http://our.umbraco.org/wiki/umbraco-help/{0}/{1}")] public string DefaultUrl @@ -18,12 +18,12 @@ namespace Umbraco.Core.Configuration.UmbracoSettings get { return (LinksCollection) base[""]; } } - string IHelp.DefaultUrl + string IHelpSection.DefaultUrl { get { return DefaultUrl; } } - IEnumerable IHelp.Links + IEnumerable IHelpSection.Links { get { return Links; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IContentSection.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IContentSection.cs index 051497faa2..f8c0e02ea9 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IContentSection.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IContentSection.cs @@ -12,7 +12,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings IEnumerable ImageTagAllowedAttributes { get; } - IEnumerable ImageAutoFillProperties { get; } + IEnumerable ImageAutoFillProperties { get; } string ScriptFolderPath { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IDeveloper.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IDeveloperSection.cs similarity index 71% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IDeveloper.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IDeveloperSection.cs index dfdc3a74f5..df6f8c0ed7 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IDeveloper.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IDeveloperSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IDeveloper + public interface IDeveloperSection : IUmbracoConfigurationSection { IEnumerable AppCodeFileExtensions { get; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IDistributedCall.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IDistributedCallSection.cs similarity index 73% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IDistributedCall.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IDistributedCallSection.cs index 1acd541ce7..f3c0d5247a 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IDistributedCall.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IDistributedCallSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IDistributedCall + public interface IDistributedCallSection : IUmbracoConfigurationSection { bool Enabled { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IHelp.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IHelpSection.cs similarity index 73% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IHelp.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IHelpSection.cs index d5822ebffe..e8ee7195ee 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IHelp.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IHelpSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IHelp + public interface IHelpSection : IUmbracoConfigurationSection { string DefaultUrl { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IContentImagingAutoFillUploadField.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IImagingAutoFillUploadField.cs similarity index 87% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IContentImagingAutoFillUploadField.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IImagingAutoFillUploadField.cs index 69eb2c7238..5dbeee02d0 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IContentImagingAutoFillUploadField.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IImagingAutoFillUploadField.cs @@ -1,6 +1,6 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IContentImagingAutoFillUploadField + public interface IImagingAutoFillUploadField { /// /// Allow setting internally so we can create a default diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ILogging.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ILoggingSection.cs similarity index 88% rename from src/Umbraco.Core/Configuration/UmbracoSettings/ILogging.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/ILoggingSection.cs index cc0a54b515..df75a82f64 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ILogging.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ILoggingSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface ILogging + public interface ILoggingSection : IUmbracoConfigurationSection { bool AutoCleanLogs { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IProviders.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IProvidersSection.cs similarity index 69% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IProviders.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IProvidersSection.cs index 92543401b0..6234cc6f2c 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IProviders.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IProvidersSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IProviders + public interface IProvidersSection : IUmbracoConfigurationSection { string DefaultBackOfficeUserProvider { get; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IRepositories.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IRepositoriesSection.cs similarity index 68% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IRepositories.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IRepositoriesSection.cs index d198f1f6b6..746cc030e5 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IRepositories.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IRepositoriesSection.cs @@ -3,7 +3,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IRepositories + public interface IRepositoriesSection : IUmbracoConfigurationSection { IEnumerable Repositories { get; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IRequestHandler.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IRequestHandlerSection.cs similarity index 78% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IRequestHandler.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IRequestHandlerSection.cs index 0f3ff38413..db11cfe883 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IRequestHandler.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IRequestHandlerSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IRequestHandler + public interface IRequestHandlerSection : IUmbracoConfigurationSection { bool UseDomainPrefixes { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IScheduledTasks.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IScheduledTasksSection.cs similarity index 67% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IScheduledTasks.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IScheduledTasksSection.cs index d28ac97895..334b97bfba 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IScheduledTasks.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IScheduledTasksSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IScheduledTasks + public interface IScheduledTasksSection : IUmbracoConfigurationSection { IEnumerable Tasks { get; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IScripting.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IScriptingSection.cs similarity index 79% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IScripting.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IScriptingSection.cs index 3b7810958d..37e93d55e8 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IScripting.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IScriptingSection.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IScripting + public interface IScriptingSection : IUmbracoConfigurationSection { IEnumerable NotDynamicXmlDocumentElements { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ISecurity.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ISecuritySection.cs similarity index 78% rename from src/Umbraco.Core/Configuration/UmbracoSettings/ISecurity.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/ISecuritySection.cs index a55f7c23e6..37ff79ff07 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ISecurity.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ISecuritySection.cs @@ -1,6 +1,6 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface ISecurity + public interface ISecuritySection : IUmbracoConfigurationSection { bool KeepUserLoggedIn { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ITemplates.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ITemplatesSection.cs similarity index 78% rename from src/Umbraco.Core/Configuration/UmbracoSettings/ITemplates.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/ITemplatesSection.cs index 77656e421a..8db3a411ee 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ITemplates.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ITemplatesSection.cs @@ -1,6 +1,6 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface ITemplates + public interface ITemplatesSection : IUmbracoConfigurationSection { bool UseAspNetMasterPages { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettings.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettings.cs deleted file mode 100644 index 5c51ba25e1..0000000000 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettings.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace Umbraco.Core.Configuration.UmbracoSettings -{ - public interface IUmbracoSettings - { - IContentSection Content { get; } - - ISecurity Security { get; } - - IRequestHandler RequestHandler { get; } - - ITemplates Templates { get; } - - IDeveloper Developer { get; } - - IViewstateMoverModule ViewstateMoverModule { get; } - - ILogging Logging { get; } - - IScheduledTasks ScheduledTasks { get; } - - IDistributedCall DistributedCall { get; } - - IRepositories PackageRepositories { get; } - - IProviders Providers { get; } - - IHelp Help { get; } - - IWebRouting WebRouting { get; } - - IScripting Scripting { get; } - } -} \ No newline at end of file diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettingsSection.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettingsSection.cs new file mode 100644 index 0000000000..5189d3002d --- /dev/null +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IUmbracoSettingsSection.cs @@ -0,0 +1,33 @@ +namespace Umbraco.Core.Configuration.UmbracoSettings +{ + public interface IUmbracoSettingsSection : IUmbracoConfigurationSection + { + IContentSection Content { get; } + + ISecuritySection Security { get; } + + IRequestHandlerSection RequestHandler { get; } + + ITemplatesSection Templates { get; } + + IDeveloperSection Developer { get; } + + IViewStateMoverModuleSection ViewStateMoverModule { get; } + + ILoggingSection Logging { get; } + + IScheduledTasksSection ScheduledTasks { get; } + + IDistributedCallSection DistributedCall { get; } + + IRepositoriesSection PackageRepositories { get; } + + IProvidersSection Providers { get; } + + IHelpSection Help { get; } + + IWebRoutingSection WebRouting { get; } + + IScriptingSection Scripting { get; } + } +} \ No newline at end of file diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IViewstateMoverModule.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IViewStateMoverModuleSection.cs similarity index 55% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IViewstateMoverModule.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IViewStateMoverModuleSection.cs index 9450cd6f63..953e18ef1e 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IViewstateMoverModule.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IViewStateMoverModuleSection.cs @@ -1,6 +1,6 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IViewstateMoverModule + public interface IViewStateMoverModuleSection : IUmbracoConfigurationSection { bool Enable { get; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/IWebRouting.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/IWebRoutingSection.cs similarity index 75% rename from src/Umbraco.Core/Configuration/UmbracoSettings/IWebRouting.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/IWebRoutingSection.cs index 6318ded60c..73177ed2af 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/IWebRouting.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/IWebRoutingSection.cs @@ -1,6 +1,6 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - public interface IWebRouting + public interface IWebRoutingSection : IUmbracoConfigurationSection { bool TrySkipIisCustomErrors { get; } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingAutoFillPropertiesCollection.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ImagingAutoFillPropertiesCollection.cs similarity index 50% rename from src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingAutoFillPropertiesCollection.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/ImagingAutoFillPropertiesCollection.cs index c8eab4bb05..981172349d 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingAutoFillPropertiesCollection.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ImagingAutoFillPropertiesCollection.cs @@ -1,37 +1,37 @@ -using System.Collections.Generic; -using System.Configuration; - -namespace Umbraco.Core.Configuration.UmbracoSettings -{ - internal class ContentImagingAutoFillPropertiesCollection : ConfigurationElementCollection, IEnumerable - { - - protected override ConfigurationElement CreateNewElement() - { - return new ContentImagingAutoFillUploadFieldElement(); - } - - protected override object GetElementKey(ConfigurationElement element) - { - return ((ContentImagingAutoFillUploadFieldElement)element).Alias; - } - - internal void Add(ContentImagingAutoFillUploadFieldElement item) - { - BaseAdd(item); - } - - IEnumerator IEnumerable.GetEnumerator() - { - for (var i = 0; i < Count; i++) - { - yield return BaseGet(i) as IContentImagingAutoFillUploadField; - } - } - - System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() - { - return GetEnumerator(); - } - } +using System.Collections.Generic; +using System.Configuration; + +namespace Umbraco.Core.Configuration.UmbracoSettings +{ + internal class ImagingAutoFillPropertiesCollection : ConfigurationElementCollection, IEnumerable + { + + protected override ConfigurationElement CreateNewElement() + { + return new ImagingAutoFillUploadFieldElement(); + } + + protected override object GetElementKey(ConfigurationElement element) + { + return ((ImagingAutoFillUploadFieldElement)element).Alias; + } + + internal void Add(ImagingAutoFillUploadFieldElement item) + { + BaseAdd(item); + } + + IEnumerator IEnumerable.GetEnumerator() + { + for (var i = 0; i < Count; i++) + { + yield return BaseGet(i) as IImagingAutoFillUploadField; + } + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } + } } \ No newline at end of file diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingAutoFillUploadFieldElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ImagingAutoFillUploadFieldElement.cs similarity index 82% rename from src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingAutoFillUploadFieldElement.cs rename to src/Umbraco.Core/Configuration/UmbracoSettings/ImagingAutoFillUploadFieldElement.cs index bd0e7a279e..e23aae8b8e 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ContentImagingAutoFillUploadFieldElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ImagingAutoFillUploadFieldElement.cs @@ -1,91 +1,91 @@ -using System.Configuration; - -namespace Umbraco.Core.Configuration.UmbracoSettings -{ - internal class ContentImagingAutoFillUploadFieldElement : ConfigurationElement, IContentImagingAutoFillUploadField - { - /// - /// Allow setting internally so we can create a default - /// - [ConfigurationProperty("alias", IsKey = true, IsRequired = true)] - public string Alias - { - get { return (string)this["alias"]; } - set { this["alias"] = value; } - } - - [ConfigurationProperty("widthFieldAlias")] - internal InnerTextConfigurationElement WidthFieldAlias - { - get - { - return new OptionalInnerTextConfigurationElement( - (InnerTextConfigurationElement)this["widthFieldAlias"], - //set the default - "umbracoWidth"); - } - } - - [ConfigurationProperty("heightFieldAlias")] - internal InnerTextConfigurationElement HeightFieldAlias - { - get - { - return new OptionalInnerTextConfigurationElement( - (InnerTextConfigurationElement)this["heightFieldAlias"], - //set the default - "umbracoHeight"); - } - } - - [ConfigurationProperty("lengthFieldAlias")] - internal InnerTextConfigurationElement LengthFieldAlias - { - get - { - return new OptionalInnerTextConfigurationElement( - (InnerTextConfigurationElement)this["lengthFieldAlias"], - //set the default - "umbracoBytes"); - } - } - - [ConfigurationProperty("extensionFieldAlias")] - internal InnerTextConfigurationElement ExtensionFieldAlias - { - get - { - return new OptionalInnerTextConfigurationElement( - (InnerTextConfigurationElement)this["extensionFieldAlias"], - //set the default - "umbracoExtension"); - } - } - - string IContentImagingAutoFillUploadField.Alias - { - get { return Alias; } - - } - - string IContentImagingAutoFillUploadField.WidthFieldAlias - { - get { return WidthFieldAlias; } - } - - string IContentImagingAutoFillUploadField.HeightFieldAlias - { - get { return HeightFieldAlias; } - } - - string IContentImagingAutoFillUploadField.LengthFieldAlias - { - get { return LengthFieldAlias; } - } - - string IContentImagingAutoFillUploadField.ExtensionFieldAlias - { - get { return ExtensionFieldAlias; } - } - } +using System.Configuration; + +namespace Umbraco.Core.Configuration.UmbracoSettings +{ + internal class ImagingAutoFillUploadFieldElement : ConfigurationElement, IImagingAutoFillUploadField + { + /// + /// Allow setting internally so we can create a default + /// + [ConfigurationProperty("alias", IsKey = true, IsRequired = true)] + public string Alias + { + get { return (string)this["alias"]; } + set { this["alias"] = value; } + } + + [ConfigurationProperty("widthFieldAlias")] + internal InnerTextConfigurationElement WidthFieldAlias + { + get + { + return new OptionalInnerTextConfigurationElement( + (InnerTextConfigurationElement)this["widthFieldAlias"], + //set the default + "umbracoWidth"); + } + } + + [ConfigurationProperty("heightFieldAlias")] + internal InnerTextConfigurationElement HeightFieldAlias + { + get + { + return new OptionalInnerTextConfigurationElement( + (InnerTextConfigurationElement)this["heightFieldAlias"], + //set the default + "umbracoHeight"); + } + } + + [ConfigurationProperty("lengthFieldAlias")] + internal InnerTextConfigurationElement LengthFieldAlias + { + get + { + return new OptionalInnerTextConfigurationElement( + (InnerTextConfigurationElement)this["lengthFieldAlias"], + //set the default + "umbracoBytes"); + } + } + + [ConfigurationProperty("extensionFieldAlias")] + internal InnerTextConfigurationElement ExtensionFieldAlias + { + get + { + return new OptionalInnerTextConfigurationElement( + (InnerTextConfigurationElement)this["extensionFieldAlias"], + //set the default + "umbracoExtension"); + } + } + + string IImagingAutoFillUploadField.Alias + { + get { return Alias; } + + } + + string IImagingAutoFillUploadField.WidthFieldAlias + { + get { return WidthFieldAlias; } + } + + string IImagingAutoFillUploadField.HeightFieldAlias + { + get { return HeightFieldAlias; } + } + + string IImagingAutoFillUploadField.LengthFieldAlias + { + get { return LengthFieldAlias; } + } + + string IImagingAutoFillUploadField.ExtensionFieldAlias + { + get { return ExtensionFieldAlias; } + } + } } \ No newline at end of file diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/LoggingElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/LoggingElement.cs index bb880af85c..f95a9c7e76 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/LoggingElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/LoggingElement.cs @@ -3,7 +3,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class LoggingElement : ConfigurationElement, ILogging + internal class LoggingElement : ConfigurationElement, ILoggingSection { [ConfigurationProperty("autoCleanLogs")] @@ -93,47 +93,47 @@ namespace Umbraco.Core.Configuration.UmbracoSettings } } - string ILogging.ExternalLoggerAssembly + string ILoggingSection.ExternalLoggerAssembly { get { return ExternalLogger.Assembly; } } - string ILogging.ExternalLoggerType + string ILoggingSection.ExternalLoggerType { get { return ExternalLogger.Type; } } - bool ILogging.ExternalLoggerEnableAuditTrail + bool ILoggingSection.ExternalLoggerEnableAuditTrail { get { return ExternalLogger.LogAuditTrail; } } - bool ILogging.AutoCleanLogs + bool ILoggingSection.AutoCleanLogs { get { return AutoCleanLogs; } } - bool ILogging.EnableLogging + bool ILoggingSection.EnableLogging { get { return EnableLogging; } } - bool ILogging.EnableAsyncLogging + bool ILoggingSection.EnableAsyncLogging { get { return EnableAsyncLogging; } } - int ILogging.CleaningMiliseconds + int ILoggingSection.CleaningMiliseconds { get { return CleaningMiliseconds; } } - int ILogging.MaxLogAge + int ILoggingSection.MaxLogAge { get { return MaxLogAge; } } - IEnumerable ILogging.DisabledLogTypes + IEnumerable ILoggingSection.DisabledLogTypes { get { return DisabledLogTypes; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ProvidersElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ProvidersElement.cs index 76f3363f20..5cc94a4eb2 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ProvidersElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ProvidersElement.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class ProvidersElement : ConfigurationElement, IProviders + internal class ProvidersElement : ConfigurationElement, IProvidersSection { [ConfigurationProperty("users")] public UserProviderElement Users diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/RepositoriesElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/RepositoriesElement.cs index 3ad0a6bd6d..e2c3ba3036 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/RepositoriesElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/RepositoriesElement.cs @@ -4,7 +4,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class RepositoriesElement : ConfigurationElement, IRepositories + internal class RepositoriesElement : ConfigurationElement, IRepositoriesSection { [ConfigurationCollection(typeof(RepositoriesCollection), AddItemName = "repository")] @@ -15,7 +15,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings set { base[""] = value; } } - IEnumerable IRepositories.Repositories + IEnumerable IRepositoriesSection.Repositories { get { return Repositories; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/RequestHandlerElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/RequestHandlerElement.cs index acdd2d94ea..cef84b71c3 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/RequestHandlerElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/RequestHandlerElement.cs @@ -5,7 +5,7 @@ using System.Collections.Generic; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class RequestHandlerElement : ConfigurationElement, IRequestHandler + internal class RequestHandlerElement : ConfigurationElement, IRequestHandlerSection { [ConfigurationProperty("useDomainPrefixes")] public InnerTextConfigurationElement UseDomainPrefixes @@ -101,22 +101,22 @@ namespace Umbraco.Core.Configuration.UmbracoSettings } } - bool IRequestHandler.UseDomainPrefixes + bool IRequestHandlerSection.UseDomainPrefixes { get { return UseDomainPrefixes; } } - bool IRequestHandler.AddTrailingSlash + bool IRequestHandlerSection.AddTrailingSlash { get { return AddTrailingSlash; } } - bool IRequestHandler.RemoveDoubleDashes + bool IRequestHandlerSection.RemoveDoubleDashes { get { return UrlReplacing.RemoveDoubleDashes; } } - IEnumerable IRequestHandler.CharCollection + IEnumerable IRequestHandlerSection.CharCollection { get { return UrlReplacing.CharCollection; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ScheduledTasksElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ScheduledTasksElement.cs index 91b304c657..3571e2d7ed 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ScheduledTasksElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ScheduledTasksElement.cs @@ -3,7 +3,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class ScheduledTasksElement : ConfigurationElement, IScheduledTasks + internal class ScheduledTasksElement : ConfigurationElement, IScheduledTasksSection { [ConfigurationCollection(typeof(ScheduledTasksCollection), AddItemName = "task")] [ConfigurationProperty("", IsDefaultCollection = true)] @@ -12,7 +12,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings get { return (ScheduledTasksCollection)base[""]; } } - IEnumerable IScheduledTasks.Tasks + IEnumerable IScheduledTasksSection.Tasks { get { return Tasks; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ScriptingElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ScriptingElement.cs index 7de6b8b4f2..6721b71629 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ScriptingElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ScriptingElement.cs @@ -3,7 +3,7 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class ScriptingElement : ConfigurationElement, IScripting + internal class ScriptingElement : ConfigurationElement, IScriptingSection { [ConfigurationProperty("razor")] internal RazorElement Razor @@ -11,12 +11,12 @@ namespace Umbraco.Core.Configuration.UmbracoSettings get { return (RazorElement) base["razor"]; } } - IEnumerable IScripting.NotDynamicXmlDocumentElements + IEnumerable IScriptingSection.NotDynamicXmlDocumentElements { get { return Razor.NotDynamicXmlDocumentElements; } } - IEnumerable IScripting.DataTypeModelStaticMappings + IEnumerable IScriptingSection.DataTypeModelStaticMappings { get { return Razor.DataTypeModelStaticMappings; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/SecurityElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/SecurityElement.cs index e493e74e71..33a8a8584b 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/SecurityElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/SecurityElement.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class SecurityElement : ConfigurationElement, ISecurity + internal class SecurityElement : ConfigurationElement, ISecuritySection { [ConfigurationProperty("keepUserLoggedIn")] internal InnerTextConfigurationElement KeepUserLoggedIn @@ -52,22 +52,22 @@ namespace Umbraco.Core.Configuration.UmbracoSettings } } - bool ISecurity.KeepUserLoggedIn + bool ISecuritySection.KeepUserLoggedIn { get { return KeepUserLoggedIn; } } - bool ISecurity.HideDisabledUsersInBackoffice + bool ISecuritySection.HideDisabledUsersInBackoffice { get { return HideDisabledUsersInBackoffice; } } - string ISecurity.AuthCookieName + string ISecuritySection.AuthCookieName { get { return AuthCookieName; } } - string ISecurity.AuthCookieDomain + string ISecuritySection.AuthCookieDomain { get { return AuthCookieDomain; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/TemplatesElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/TemplatesElement.cs index b864d0ed2e..31c374ce6c 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/TemplatesElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/TemplatesElement.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class TemplatesElement : ConfigurationElement, ITemplates + internal class TemplatesElement : ConfigurationElement, ITemplatesSection { [ConfigurationProperty("useAspNetMasterPages")] internal InnerTextConfigurationElement UseAspNetMasterPages @@ -52,22 +52,22 @@ namespace Umbraco.Core.Configuration.UmbracoSettings } } - bool ITemplates.UseAspNetMasterPages + bool ITemplatesSection.UseAspNetMasterPages { get { return UseAspNetMasterPages; } } - bool ITemplates.EnableSkinSupport + bool ITemplatesSection.EnableSkinSupport { get { return EnableSkinSupport; } } - RenderingEngine ITemplates.DefaultRenderingEngine + RenderingEngine ITemplatesSection.DefaultRenderingEngine { get { return DefaultRenderingEngine; } } - bool ITemplates.EnableTemplateFolders + bool ITemplatesSection.EnableTemplateFolders { get { return EnableTemplateFolders; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/UmbracoSettingsSection.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/UmbracoSettingsSection.cs index 83b857b202..bbfebf11ce 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/UmbracoSettingsSection.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/UmbracoSettingsSection.cs @@ -3,18 +3,9 @@ using System.Configuration; namespace Umbraco.Core.Configuration.UmbracoSettings { - public class UmbracoSettingsSection : ConfigurationSection, IUmbracoSettings + [ConfigurationKey("umbracoConfiguration/settings")] + public class UmbracoSettingsSection : ConfigurationSection, IUmbracoSettingsSection { - - ///// - ///// Get the current settings - ///// - //public static UmbracoSettings Current - //{ - // get { return (UmbracoSettings) ConfigurationManager.GetSection("umbracoConfiguration/settings"); } - - //} - [ConfigurationProperty("content")] internal ContentElement Content { @@ -129,72 +120,72 @@ namespace Umbraco.Core.Configuration.UmbracoSettings get { return (ScriptingElement)this["scripting"]; } } - IContentSection IUmbracoSettings.Content + IContentSection IUmbracoSettingsSection.Content { get { return Content; } } - ISecurity IUmbracoSettings.Security + ISecuritySection IUmbracoSettingsSection.Security { get { return Security; } } - IRequestHandler IUmbracoSettings.RequestHandler + IRequestHandlerSection IUmbracoSettingsSection.RequestHandler { get { return RequestHandler; } } - ITemplates IUmbracoSettings.Templates + ITemplatesSection IUmbracoSettingsSection.Templates { get { return Templates; } } - IDeveloper IUmbracoSettings.Developer + IDeveloperSection IUmbracoSettingsSection.Developer { get { return Developer; } } - IViewstateMoverModule IUmbracoSettings.ViewstateMoverModule + IViewStateMoverModuleSection IUmbracoSettingsSection.ViewStateMoverModule { get { return ViewstateMoverModule; } } - ILogging IUmbracoSettings.Logging + ILoggingSection IUmbracoSettingsSection.Logging { get { return Logging; } } - IScheduledTasks IUmbracoSettings.ScheduledTasks + IScheduledTasksSection IUmbracoSettingsSection.ScheduledTasks { get { return ScheduledTasks; } } - IDistributedCall IUmbracoSettings.DistributedCall + IDistributedCallSection IUmbracoSettingsSection.DistributedCall { get { return DistributedCall; } } - IRepositories IUmbracoSettings.PackageRepositories + IRepositoriesSection IUmbracoSettingsSection.PackageRepositories { get { return PackageRepositories; } } - IProviders IUmbracoSettings.Providers + IProvidersSection IUmbracoSettingsSection.Providers { get { return Providers; } } - IHelp IUmbracoSettings.Help + IHelpSection IUmbracoSettingsSection.Help { get { return Help; } } - IWebRouting IUmbracoSettings.WebRouting + IWebRoutingSection IUmbracoSettingsSection.WebRouting { get { return WebRouting; } } - IScripting IUmbracoSettings.Scripting + IScriptingSection IUmbracoSettingsSection.Scripting { get { return Scripting; } } diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/ViewstateMoverModuleElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/ViewstateMoverModuleElement.cs index c6d6a96a37..869ca94841 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/ViewstateMoverModuleElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/ViewstateMoverModuleElement.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class ViewstateMoverModuleElement : ConfigurationElement, IViewstateMoverModule + internal class ViewstateMoverModuleElement : ConfigurationElement, IViewStateMoverModuleSection { [ConfigurationProperty("enable", DefaultValue = false)] public bool Enable diff --git a/src/Umbraco.Core/Configuration/UmbracoSettings/WebRoutingElement.cs b/src/Umbraco.Core/Configuration/UmbracoSettings/WebRoutingElement.cs index ad3b48a070..0cce4e2678 100644 --- a/src/Umbraco.Core/Configuration/UmbracoSettings/WebRoutingElement.cs +++ b/src/Umbraco.Core/Configuration/UmbracoSettings/WebRoutingElement.cs @@ -2,7 +2,7 @@ namespace Umbraco.Core.Configuration.UmbracoSettings { - internal class WebRoutingElement : ConfigurationElement, IWebRouting + internal class WebRoutingElement : ConfigurationElement, IWebRoutingSection { [ConfigurationProperty("trySkipIisCustomErrors", DefaultValue = "false")] public bool TrySkipIisCustomErrors diff --git a/src/Umbraco.Core/IO/FileSystemProviderManager.cs b/src/Umbraco.Core/IO/FileSystemProviderManager.cs index cb18454fb8..b2bcaee61f 100644 --- a/src/Umbraco.Core/IO/FileSystemProviderManager.cs +++ b/src/Umbraco.Core/IO/FileSystemProviderManager.cs @@ -29,7 +29,7 @@ namespace Umbraco.Core.IO internal FileSystemProviderManager() { - _config = (FileSystemProvidersSection)ConfigurationManager.GetSection("FileSystemProviders"); + _config = (FileSystemProvidersSection)ConfigurationManager.GetSection("umbracoConfiguration/FileSystemProviders"); } #endregion diff --git a/src/Umbraco.Core/Models/ContentExtensions.cs b/src/Umbraco.Core/Models/ContentExtensions.cs index 04dfced33c..e337493aff 100644 --- a/src/Umbraco.Core/Models/ContentExtensions.cs +++ b/src/Umbraco.Core/Models/ContentExtensions.cs @@ -419,7 +419,7 @@ namespace Umbraco.Core.Models var supportsResizing = UmbracoConfiguration.Current.UmbracoSettings.Content.ImageFileTypes.InvariantContains(extension); //the config section used to auto-fill properties - IContentImagingAutoFillUploadField uploadFieldConfigNode = null; + IImagingAutoFillUploadField uploadFieldConfigNode = null; //Check for auto fill of additional properties if (UmbracoConfiguration.Current.UmbracoSettings.Content.ImageAutoFillProperties != null) diff --git a/src/Umbraco.Core/Persistence/RepositoryFactory.cs b/src/Umbraco.Core/Persistence/RepositoryFactory.cs index dec8b492c9..3e406de46a 100644 --- a/src/Umbraco.Core/Persistence/RepositoryFactory.cs +++ b/src/Umbraco.Core/Persistence/RepositoryFactory.cs @@ -11,9 +11,9 @@ namespace Umbraco.Core.Persistence /// public class RepositoryFactory { - private readonly IUmbracoSettings _settings; + private readonly IUmbracoSettingsSection _settings; - public RepositoryFactory(IUmbracoSettings settings) + public RepositoryFactory(IUmbracoSettingsSection settings) { _settings = settings; } diff --git a/src/Umbraco.Core/PluginManager.cs b/src/Umbraco.Core/PluginManager.cs index 5e74cf49b7..039605d935 100644 --- a/src/Umbraco.Core/PluginManager.cs +++ b/src/Umbraco.Core/PluginManager.cs @@ -8,6 +8,7 @@ using System.Text; using System.Threading; using System.Web.Compilation; using System.Xml.Linq; +using Umbraco.Core.Configuration; using Umbraco.Core.IO; using Umbraco.Core.Logging; using Umbraco.Core.Models; @@ -445,7 +446,18 @@ namespace Umbraco.Core } /// - /// Returns all classes attributed with XsltExtensionAttribute attribute + /// Returns all classes of type IUmbracoConfigurationSection + /// + /// + internal IEnumerable ResolveUmbracoConfigurationSections() + { + //don't cache the result since it's a one time lookup for a type anyways + //ONLY look in the CORE assembly for performance. + return ResolveTypes(false, new[] { typeof(IUmbracoConfigurationSection).Assembly }); + } + + /// + /// Returns all classes of type ICacheRefresher /// /// internal IEnumerable ResolveCacheRefreshers() @@ -729,10 +741,10 @@ namespace Umbraco.Core /// /// /// - internal IEnumerable ResolveTypes(bool cacheResult = true) + internal IEnumerable ResolveTypes(bool cacheResult = true, IEnumerable specificAssemblies = null) { return ResolveTypes( - () => TypeFinder.FindClassesOfType(AssembliesToScan), + () => TypeFinder.FindClassesOfType(specificAssemblies ?? AssembliesToScan), TypeResolutionKind.FindAllTypes, cacheResult); } diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj index ce26bada89..397b894e06 100644 --- a/src/Umbraco.Core/Umbraco.Core.csproj +++ b/src/Umbraco.Core/Umbraco.Core.csproj @@ -144,9 +144,9 @@ - + - + @@ -168,8 +168,8 @@ - - + + @@ -182,30 +182,30 @@ - - - + + + - + - + - + - + - + - - - + + + - - - - + + + + diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementDefaultTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementDefaultTests.cs index 0c3f0dc869..f03d3f7796 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementDefaultTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementDefaultTests.cs @@ -13,36 +13,36 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings public override void DisableHtmlEmail() { - Assert.IsTrue(Section.Content.DisableHtmlEmail == false); + Assert.IsTrue(SettingsSection.Content.DisableHtmlEmail == false); } [Test] public override void Can_Set_Multiple() { - Assert.IsTrue(Section.Content.Error404Collection.Count() == 1); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(0).Culture == null); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(0).ContentId == 1); + Assert.IsTrue(SettingsSection.Content.Error404Collection.Count() == 1); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(0).Culture == null); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(0).ContentId == 1); } [Test] public override void ImageAutoFillProperties() { - Assert.IsTrue(Section.Content.ImageAutoFillProperties.Count() == 1); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).Alias == "umbracoFile"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).WidthFieldAlias == "umbracoWidth"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).HeightFieldAlias == "umbracoHeight"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).LengthFieldAlias == "umbracoBytes"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).ExtensionFieldAlias == "umbracoExtension"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.Count() == 1); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).Alias == "umbracoFile"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).WidthFieldAlias == "umbracoWidth"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).HeightFieldAlias == "umbracoHeight"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).LengthFieldAlias == "umbracoBytes"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).ExtensionFieldAlias == "umbracoExtension"); } public override void TidyCharEncoding() { - Assert.IsTrue(Section.Content.TidyCharEncoding == "UTF8"); + Assert.IsTrue(SettingsSection.Content.TidyCharEncoding == "UTF8"); } public override void XmlContentCheckForDiskChanges() { - Assert.IsTrue(Section.Content.XmlContentCheckForDiskChanges == false); + Assert.IsTrue(SettingsSection.Content.XmlContentCheckForDiskChanges == false); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementTests.cs index ee724c3d84..866f9b1884 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ContentElementTests.cs @@ -1,10 +1,8 @@ -using System.Collections.Generic; -using System.Linq; -using System.Net.Configuration; -using System.Text; -using System.Threading.Tasks; +using System.Linq; using NUnit.Framework; using Umbraco.Core; +using Umbraco.Core.Configuration; +using Umbraco.Core.Configuration.UmbracoSettings; namespace Umbraco.Tests.Configurations.UmbracoSettings { @@ -14,172 +12,172 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void EmailAddress() { - Assert.IsTrue(Section.Content.NotificationEmailAddress == "robot@umbraco.dk"); + Assert.IsTrue(SettingsSection.Content.NotificationEmailAddress == "robot@umbraco.dk"); } [Test] public virtual void DisableHtmlEmail() { - Assert.IsTrue(Section.Content.DisableHtmlEmail == true); + Assert.IsTrue(SettingsSection.Content.DisableHtmlEmail == true); } [Test] public virtual void Can_Set_Multiple() { - Assert.IsTrue(Section.Content.Error404Collection.Count() == 3); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(0).Culture == "default"); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(0).ContentId == 1047); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(1).Culture == "en-US"); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(1).ContentId == 1048); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(2).Culture == "en-UK"); - Assert.IsTrue(Section.Content.Error404Collection.ElementAt(2).ContentId == 1049); + Assert.IsTrue(SettingsSection.Content.Error404Collection.Count() == 3); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(0).Culture == "default"); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(0).ContentId == 1047); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(1).Culture == "en-US"); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(1).ContentId == 1048); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(2).Culture == "en-UK"); + Assert.IsTrue(SettingsSection.Content.Error404Collection.ElementAt(2).ContentId == 1049); } [Test] public void ScriptFolderPath() { - Assert.IsTrue(Section.Content.ScriptFolderPath == "/scripts"); + Assert.IsTrue(SettingsSection.Content.ScriptFolderPath == "/scripts"); } [Test] public void ScriptFileTypes() { - Assert.IsTrue(Section.Content.ScriptFileTypes.All(x => "js,xml".Split(',').Contains(x))); + Assert.IsTrue(SettingsSection.Content.ScriptFileTypes.All(x => "js,xml".Split(',').Contains(x))); } [Test] public void DisableScriptEditor() { - Assert.IsTrue(Section.Content.ScriptEditorDisable == false); + Assert.IsTrue(SettingsSection.Content.ScriptEditorDisable == false); } [Test] public void ImageFileTypes() { - Assert.IsTrue(Section.Content.ImageFileTypes.All(x => "jpeg,jpg,gif,bmp,png,tiff,tif".Split(',').Contains(x))); + Assert.IsTrue(SettingsSection.Content.ImageFileTypes.All(x => "jpeg,jpg,gif,bmp,png,tiff,tif".Split(',').Contains(x))); } [Test] public void AllowedAttributes() { - Assert.IsTrue(Section.Content.ImageTagAllowedAttributes.All(x => "src,alt,border,class,style,align,id,name,onclick,usemap".Split(',').Contains(x))); + Assert.IsTrue(SettingsSection.Content.ImageTagAllowedAttributes.All(x => "src,alt,border,class,style,align,id,name,onclick,usemap".Split(',').Contains(x))); } [Test] public virtual void ImageAutoFillProperties() { - Assert.IsTrue(Section.Content.ImageAutoFillProperties.Count() == 2); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).Alias == "umbracoFile"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).WidthFieldAlias == "umbracoWidth"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).HeightFieldAlias == "umbracoHeight"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).LengthFieldAlias == "umbracoBytes"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(0).ExtensionFieldAlias == "umbracoExtension"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(1).Alias == "umbracoFile2"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(1).WidthFieldAlias == "umbracoWidth2"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(1).HeightFieldAlias == "umbracoHeight2"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(1).LengthFieldAlias == "umbracoBytes2"); - Assert.IsTrue(Section.Content.ImageAutoFillProperties.ElementAt(1).ExtensionFieldAlias == "umbracoExtension2"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.Count() == 2); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).Alias == "umbracoFile"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).WidthFieldAlias == "umbracoWidth"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).HeightFieldAlias == "umbracoHeight"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).LengthFieldAlias == "umbracoBytes"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(0).ExtensionFieldAlias == "umbracoExtension"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(1).Alias == "umbracoFile2"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(1).WidthFieldAlias == "umbracoWidth2"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(1).HeightFieldAlias == "umbracoHeight2"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(1).LengthFieldAlias == "umbracoBytes2"); + Assert.IsTrue(SettingsSection.Content.ImageAutoFillProperties.ElementAt(1).ExtensionFieldAlias == "umbracoExtension2"); } [Test] public void UploadAllowDirectories() { - Assert.IsTrue(Section.Content.UploadAllowDirectories == true); + Assert.IsTrue(SettingsSection.Content.UploadAllowDirectories == true); } [Test] public void DefaultDocumentTypeProperty() { - Assert.IsTrue(Section.Content.DefaultDocumentTypeProperty == "Textstring"); + Assert.IsTrue(SettingsSection.Content.DefaultDocumentTypeProperty == "Textstring"); } [Test] public void GlobalPreviewStorageEnabled() { - Assert.IsTrue(Section.Content.GlobalPreviewStorageEnabled == false); + Assert.IsTrue(SettingsSection.Content.GlobalPreviewStorageEnabled == false); } [Test] public void CloneXmlContent() { - Assert.IsTrue(Section.Content.CloneXmlContent == true); + Assert.IsTrue(SettingsSection.Content.CloneXmlContent == true); } [Test] public void EnsureUniqueNaming() { - Assert.IsTrue(Section.Content.EnsureUniqueNaming == true); + Assert.IsTrue(SettingsSection.Content.EnsureUniqueNaming == true); } [Test] public void TidyEditorContent() { - Assert.IsTrue(Section.Content.TidyEditorContent == false); + Assert.IsTrue(SettingsSection.Content.TidyEditorContent == false); } [Test] public virtual void TidyCharEncoding() { - Assert.IsTrue(Section.Content.TidyCharEncoding == "Raw"); + Assert.IsTrue(SettingsSection.Content.TidyCharEncoding == "Raw"); } [Test] public void UseLegacyXmlSchema() { - Assert.IsTrue(Section.Content.UseLegacyXmlSchema == false); + Assert.IsTrue(SettingsSection.Content.UseLegacyXmlSchema == false); } [Test] public void ForceSafeAliases() { - Assert.IsTrue(Section.Content.ForceSafeAliases == true); + Assert.IsTrue(SettingsSection.Content.ForceSafeAliases == true); } [Test] public void XmlCacheEnabled() { - Assert.IsTrue(Section.Content.XmlCacheEnabled == true); + Assert.IsTrue(SettingsSection.Content.XmlCacheEnabled == true); } [Test] public void ContinouslyUpdateXmlDiskCache() { - Assert.IsTrue(Section.Content.ContinouslyUpdateXmlDiskCache == true); + Assert.IsTrue(SettingsSection.Content.ContinouslyUpdateXmlDiskCache == true); } [Test] public virtual void XmlContentCheckForDiskChanges() { - Assert.IsTrue(Section.Content.XmlContentCheckForDiskChanges == true); + Assert.IsTrue(SettingsSection.Content.XmlContentCheckForDiskChanges == true); } [Test] public void EnableSplashWhileLoading() { - Assert.IsTrue(Section.Content.EnableSplashWhileLoading == false); + Assert.IsTrue(SettingsSection.Content.EnableSplashWhileLoading == false); } [Test] public void PropertyContextHelpOption() { - Assert.IsTrue(Section.Content.PropertyContextHelpOption == "text"); + Assert.IsTrue(SettingsSection.Content.PropertyContextHelpOption == "text"); } [Test] public void EnableCanvasEditing() { - Assert.IsTrue(Section.Content.EnableCanvasEditing == false); + Assert.IsTrue(SettingsSection.Content.EnableCanvasEditing == false); } [Test] public void PreviewBadge() { - Assert.IsTrue(Section.Content.PreviewBadge == @"In Preview Mode - click to end"); + Assert.IsTrue(SettingsSection.Content.PreviewBadge == @"In Preview Mode - click to end"); } [Test] public void UmbracoLibraryCacheDuration() { - Assert.IsTrue(Section.Content.UmbracoLibraryCacheDuration == 1800); + Assert.IsTrue(SettingsSection.Content.UmbracoLibraryCacheDuration == 1800); } [Test] public void ResolveUrlsFromTextString() { - Assert.IsTrue(Section.Content.ResolveUrlsFromTextString); + Assert.IsTrue(SettingsSection.Content.ResolveUrlsFromTextString); } [Test] public void MacroErrors() { - Assert.IsTrue(Section.Content.MacroErrorBehaviour == MacroErrorBehaviour.Inline); + Assert.IsTrue(SettingsSection.Content.MacroErrorBehaviour == MacroErrorBehaviour.Inline); } [Test] public void DocumentTypeIconList() { - Assert.IsTrue(Section.Content.IconPickerBehaviour == IconPickerBehaviour.HideFileDuplicates); + Assert.IsTrue(SettingsSection.Content.IconPickerBehaviour == IconPickerBehaviour.HideFileDuplicates); } [Test] public void DisallowedUploadFiles() { - Assert.IsTrue(Section.Content.DisallowedUploadFiles.All(x => "ashx,aspx,ascx,config,cshtml,vbhtml,asmx,air,axd".Split(',').Contains(x))); + Assert.IsTrue(SettingsSection.Content.DisallowedUploadFiles.All(x => "ashx,aspx,ascx,config,cshtml,vbhtml,asmx,air,axd".Split(',').Contains(x))); } } } diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/DeveloperElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/DeveloperElementTests.cs index b4cc0e84ab..13e9f6fb45 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/DeveloperElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/DeveloperElementTests.cs @@ -9,8 +9,8 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void AppCodeFileExtensions() { - Assert.IsTrue(Section.Developer.AppCodeFileExtensions.Count() == 2); - Assert.IsTrue(Section.Developer.AppCodeFileExtensions.All( + Assert.IsTrue(SettingsSection.Developer.AppCodeFileExtensions.Count() == 2); + Assert.IsTrue(SettingsSection.Developer.AppCodeFileExtensions.All( x => "cs,vb".Split(',').Contains(x.Extension))); } } diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementDefaultTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementDefaultTests.cs index 90b32fdbd5..8961ad5662 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementDefaultTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementDefaultTests.cs @@ -14,14 +14,14 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public override void Enabled() { - Assert.IsTrue(Section.DistributedCall.Enabled == false); + Assert.IsTrue(SettingsSection.DistributedCall.Enabled == false); } [Test] public override void Servers() { - Assert.IsTrue(Section.DistributedCall.Servers.Count() == 0); + Assert.IsTrue(SettingsSection.DistributedCall.Servers.Count() == 0); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementTests.cs index c49010e121..61165b077b 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/DistributedCallElementTests.cs @@ -9,23 +9,23 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public virtual void Enabled() { - Assert.IsTrue(Section.DistributedCall.Enabled == true); + Assert.IsTrue(SettingsSection.DistributedCall.Enabled == true); } [Test] public void UserId() { - Assert.IsTrue(Section.DistributedCall.UserId == 0); + Assert.IsTrue(SettingsSection.DistributedCall.UserId == 0); } [Test] public virtual void Servers() { - Assert.IsTrue(Section.DistributedCall.Servers.Count() == 2); - Assert.IsTrue(Section.DistributedCall.Servers.ElementAt(0).ServerAddress == "127.0.0.1"); - Assert.IsTrue(Section.DistributedCall.Servers.ElementAt(1).ServerAddress == "127.0.0.2"); - Assert.IsTrue(Section.DistributedCall.Servers.ElementAt(1).ForceProtocol == "https"); - Assert.IsTrue(Section.DistributedCall.Servers.ElementAt(1).ForcePortnumber == "443"); + Assert.IsTrue(SettingsSection.DistributedCall.Servers.Count() == 2); + Assert.IsTrue(SettingsSection.DistributedCall.Servers.ElementAt(0).ServerAddress == "127.0.0.1"); + Assert.IsTrue(SettingsSection.DistributedCall.Servers.ElementAt(1).ServerAddress == "127.0.0.2"); + Assert.IsTrue(SettingsSection.DistributedCall.Servers.ElementAt(1).ForceProtocol == "https"); + Assert.IsTrue(SettingsSection.DistributedCall.Servers.ElementAt(1).ForcePortnumber == "443"); } } diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementDefaultTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementDefaultTests.cs index 558f5edd58..c105cbd941 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementDefaultTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementDefaultTests.cs @@ -14,7 +14,7 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public override void Links() { - Assert.IsTrue(Section.Help.Links.Count() == 0); + Assert.IsTrue(SettingsSection.Help.Links.Count() == 0); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementTests.cs index 48a0166f42..ba43db8cf0 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/HelpElementTests.cs @@ -9,23 +9,23 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void DefaultUrl() { - Assert.IsTrue(Section.Help.DefaultUrl == "http://our.umbraco.org/wiki/umbraco-help/{0}/{1}"); + Assert.IsTrue(SettingsSection.Help.DefaultUrl == "http://our.umbraco.org/wiki/umbraco-help/{0}/{1}"); } [Test] public virtual void Links() { - Assert.IsTrue(Section.Help.Links.Count() == 2); - Assert.IsTrue(Section.Help.Links.ElementAt(0).Application == "content"); - Assert.IsTrue(Section.Help.Links.ElementAt(0).ApplicationUrl == "dashboard.aspx"); - Assert.IsTrue(Section.Help.Links.ElementAt(0).Language == "en"); - Assert.IsTrue(Section.Help.Links.ElementAt(0).UserType == "Administrators"); - Assert.IsTrue(Section.Help.Links.ElementAt(0).HelpUrl == "http://www.xyz.no?{0}/{1}/{2}/{3}"); - Assert.IsTrue(Section.Help.Links.ElementAt(1).Application == "media"); - Assert.IsTrue(Section.Help.Links.ElementAt(1).ApplicationUrl == "dashboard2.aspx"); - Assert.IsTrue(Section.Help.Links.ElementAt(1).Language == "ch"); - Assert.IsTrue(Section.Help.Links.ElementAt(1).UserType == "Writers"); - Assert.IsTrue(Section.Help.Links.ElementAt(1).HelpUrl == "http://www.abc.no?{0}/{1}/{2}/{3}"); + Assert.IsTrue(SettingsSection.Help.Links.Count() == 2); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(0).Application == "content"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(0).ApplicationUrl == "dashboard.aspx"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(0).Language == "en"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(0).UserType == "Administrators"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(0).HelpUrl == "http://www.xyz.no?{0}/{1}/{2}/{3}"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(1).Application == "media"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(1).ApplicationUrl == "dashboard2.aspx"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(1).Language == "ch"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(1).UserType == "Writers"); + Assert.IsTrue(SettingsSection.Help.Links.ElementAt(1).HelpUrl == "http://www.abc.no?{0}/{1}/{2}/{3}"); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementDefaultTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementDefaultTests.cs index a1ab3bedb1..d6003d61d8 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementDefaultTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementDefaultTests.cs @@ -14,37 +14,37 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public override void ExternalLoggerConfigured() { - Assert.IsTrue(Section.Logging.ExternalLoggerIsConfigured == false); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerIsConfigured == false); } [Test] public override void ExternalLogger_Assembly() { - Assert.IsTrue(Section.Logging.ExternalLoggerIsConfigured == false); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerIsConfigured == false); } [Test] public override void ExternalLogger_LogAuditTrail() { - Assert.IsTrue(Section.Logging.ExternalLoggerIsConfigured == false); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerIsConfigured == false); } [Test] public override void ExternalLogger_Type() { - Assert.IsTrue(Section.Logging.ExternalLoggerIsConfigured == false); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerIsConfigured == false); } [Test] public override void DisabledLogTypes() { - Assert.IsTrue(Section.Logging.DisabledLogTypes.Count() == 0); + Assert.IsTrue(SettingsSection.Logging.DisabledLogTypes.Count() == 0); } [Test] public override void CleaningMiliseconds() { - Assert.IsTrue(Section.Logging.CleaningMiliseconds == -1); + Assert.IsTrue(SettingsSection.Logging.CleaningMiliseconds == -1); } [Test] public override void MaxLogAge() { - Assert.IsTrue(Section.Logging.MaxLogAge == -1); + Assert.IsTrue(SettingsSection.Logging.MaxLogAge == -1); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementTests.cs index d7fc49054b..e48436aeec 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/LoggingElementTests.cs @@ -9,57 +9,57 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public virtual void ExternalLoggerConfigured() { - Assert.IsTrue(Section.Logging.ExternalLoggerIsConfigured == true); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerIsConfigured == true); } [Test] public void EnableLogging() { - Assert.IsTrue(Section.Logging.EnableLogging == true); + Assert.IsTrue(SettingsSection.Logging.EnableLogging == true); } [Test] public void EnableAsyncLogging() { - Assert.IsTrue(Section.Logging.EnableAsyncLogging == true); + Assert.IsTrue(SettingsSection.Logging.EnableAsyncLogging == true); } [Test] public virtual void DisabledLogTypes() { - Assert.IsTrue(Section.Logging.DisabledLogTypes.Count() == 2); - Assert.IsTrue(Section.Logging.DisabledLogTypes.ElementAt(0).LogTypeAlias == "[alias-of-log-type-in-lowercase]"); - Assert.IsTrue(Section.Logging.DisabledLogTypes.ElementAt(1).LogTypeAlias == "anotherlogalias"); + Assert.IsTrue(SettingsSection.Logging.DisabledLogTypes.Count() == 2); + Assert.IsTrue(SettingsSection.Logging.DisabledLogTypes.ElementAt(0).LogTypeAlias == "[alias-of-log-type-in-lowercase]"); + Assert.IsTrue(SettingsSection.Logging.DisabledLogTypes.ElementAt(1).LogTypeAlias == "anotherlogalias"); } [Test] public virtual void ExternalLogger_Assembly() { - Assert.IsTrue(Section.Logging.ExternalLoggerAssembly == "~/bin/assemblyFileName.dll"); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerAssembly == "~/bin/assemblyFileName.dll"); } [Test] public virtual void ExternalLogger_Type() { - Assert.IsTrue(Section.Logging.ExternalLoggerType == "fully.qualified.namespace.and.type"); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerType == "fully.qualified.namespace.and.type"); } [Test] public virtual void ExternalLogger_LogAuditTrail() { - Assert.IsTrue(Section.Logging.ExternalLoggerEnableAuditTrail == false); + Assert.IsTrue(SettingsSection.Logging.ExternalLoggerEnableAuditTrail == false); } [Test] public void AutoCleanLogs() { - Assert.IsTrue(Section.Logging.AutoCleanLogs == false); + Assert.IsTrue(SettingsSection.Logging.AutoCleanLogs == false); } [Test] public virtual void CleaningMiliseconds() { - Assert.IsTrue(Section.Logging.CleaningMiliseconds == 86400); + Assert.IsTrue(SettingsSection.Logging.CleaningMiliseconds == 86400); } [Test] public virtual void MaxLogAge() { - Assert.IsTrue(Section.Logging.MaxLogAge == 1440); + Assert.IsTrue(SettingsSection.Logging.MaxLogAge == 1440); } diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementDefaultTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementDefaultTests.cs index fad8b25cb2..a2ec3fc3b1 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementDefaultTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementDefaultTests.cs @@ -15,9 +15,9 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public override void Repositories() { - Assert.IsTrue(Section.PackageRepositories.Repositories.Count() == 1); - Assert.IsTrue(Section.PackageRepositories.Repositories.ElementAt(0).Id == Guid.Parse("65194810-1f85-11dd-bd0b-0800200c9a66")); - Assert.IsTrue(Section.PackageRepositories.Repositories.ElementAt(0).Name == "Umbraco package Repository"); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.Count() == 1); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.ElementAt(0).Id == Guid.Parse("65194810-1f85-11dd-bd0b-0800200c9a66")); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.ElementAt(0).Name == "Umbraco package Repository"); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementTests.cs index 55d528fa38..93c387094b 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/PackageRepositoriesElementTests.cs @@ -10,11 +10,11 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public virtual void Repositories() { - Assert.IsTrue(Section.PackageRepositories.Repositories.Count() == 2); - Assert.IsTrue(Section.PackageRepositories.Repositories.ElementAt(0).Id == Guid.Parse("65194810-1f85-11dd-bd0b-0800200c9a66")); - Assert.IsTrue(Section.PackageRepositories.Repositories.ElementAt(0).Name == "Umbraco package Repository"); - Assert.IsTrue(Section.PackageRepositories.Repositories.ElementAt(1).Id == Guid.Parse("163245E0-CD22-44B6-841A-1B9B9D2E955F")); - Assert.IsTrue(Section.PackageRepositories.Repositories.ElementAt(1).Name == "Test Repo"); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.Count() == 2); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.ElementAt(0).Id == Guid.Parse("65194810-1f85-11dd-bd0b-0800200c9a66")); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.ElementAt(0).Name == "Umbraco package Repository"); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.ElementAt(1).Id == Guid.Parse("163245E0-CD22-44B6-841A-1B9B9D2E955F")); + Assert.IsTrue(SettingsSection.PackageRepositories.Repositories.ElementAt(1).Name == "Test Repo"); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ProvidersElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ProvidersElementTests.cs index 2e61f92563..4d9f56a2ef 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ProvidersElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ProvidersElementTests.cs @@ -8,7 +8,7 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void Users() { - Assert.IsTrue(Section.Providers.DefaultBackOfficeUserProvider == "UsersMembershipProvider"); + Assert.IsTrue(SettingsSection.Providers.DefaultBackOfficeUserProvider == "UsersMembershipProvider"); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/RequestHandlerElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/RequestHandlerElementTests.cs index a4c740b5d6..f3a52e7cf3 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/RequestHandlerElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/RequestHandlerElementTests.cs @@ -10,18 +10,18 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void UseDomainPrefixes() { - Assert.IsTrue(Section.RequestHandler.UseDomainPrefixes == false); + Assert.IsTrue(SettingsSection.RequestHandler.UseDomainPrefixes == false); } [Test] public void AddTrailingSlash() { - Assert.IsTrue(Section.RequestHandler.AddTrailingSlash == true); + Assert.IsTrue(SettingsSection.RequestHandler.AddTrailingSlash == true); } [Test] public void RemoveDoubleDashes() { - Assert.IsTrue(Section.RequestHandler.RemoveDoubleDashes == true); + Assert.IsTrue(SettingsSection.RequestHandler.RemoveDoubleDashes == true); } [Test] @@ -29,14 +29,14 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings { var chars = @" ,"",',%,.,;,/,\,:,#,+,*,&,?,æ,ø,å,ä,ö,ü,ß,Ä,Ö,|,<,>"; var items = chars.Split(','); - Assert.AreEqual(items.Length, Section.RequestHandler.CharCollection.Count()); - Assert.IsTrue(Section.RequestHandler.CharCollection + Assert.AreEqual(items.Length, SettingsSection.RequestHandler.CharCollection.Count()); + Assert.IsTrue(SettingsSection.RequestHandler.CharCollection .All(x => items.Contains(x.Char))); var vals = @"-,plus,star,ae,oe,aa,ae,oe,ue,ss,ae,oe,-"; var splitVals = vals.Split(','); - Assert.AreEqual(splitVals.Length, Section.RequestHandler.CharCollection.Count(x => x.Replacement.IsNullOrWhiteSpace() == false)); - Assert.IsTrue(Section.RequestHandler.CharCollection + Assert.AreEqual(splitVals.Length, SettingsSection.RequestHandler.CharCollection.Count(x => x.Replacement.IsNullOrWhiteSpace() == false)); + Assert.IsTrue(SettingsSection.RequestHandler.CharCollection .All(x => string.IsNullOrEmpty(x.Replacement) || vals.Split(',').Contains(x.Replacement))); } diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementDefaultTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementDefaultTests.cs index a6259d9fda..b123fe4f7e 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementDefaultTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementDefaultTests.cs @@ -14,7 +14,7 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public override void Tasks() { - Assert.IsTrue(Section.ScheduledTasks.Tasks.Count() == 0); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.Count() == 0); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementTests.cs index 4c66d26519..a44485fdcf 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScheduledTasksElementTests.cs @@ -9,15 +9,15 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public virtual void Tasks() { - Assert.IsTrue(Section.ScheduledTasks.Tasks.Count() == 2); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(0).Alias == "test60"); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(0).Log == true); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(0).Interval == 60); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(0).Url == "http://localhost/umbraco/test.aspx"); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(1).Alias == "testtest"); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(1).Log == false); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(1).Interval == 61); - Assert.IsTrue(Section.ScheduledTasks.Tasks.ElementAt(1).Url == "http://localhost/umbraco/test1.aspx"); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.Count() == 2); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(0).Alias == "test60"); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(0).Log == true); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(0).Interval == 60); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(0).Url == "http://localhost/umbraco/test.aspx"); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(1).Alias == "testtest"); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(1).Log == false); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(1).Interval == 61); + Assert.IsTrue(SettingsSection.ScheduledTasks.Tasks.ElementAt(1).Url == "http://localhost/umbraco/test1.aspx"); } } diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementDefaultTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementDefaultTests.cs index b3c62115f0..e51ab0b5a4 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementDefaultTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementDefaultTests.cs @@ -14,7 +14,7 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public override void DataTypeModelStaticMappings() { - Assert.AreEqual(0, Section.Scripting.DataTypeModelStaticMappings.Count()); + Assert.AreEqual(0, SettingsSection.Scripting.DataTypeModelStaticMappings.Count()); } } diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementTests.cs index b1c127ec32..21835b9a59 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ScriptingElementTests.cs @@ -10,14 +10,14 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void NotDynamicXmlDocumentElements() { - Assert.IsTrue(Section.Scripting.NotDynamicXmlDocumentElements + Assert.IsTrue(SettingsSection.Scripting.NotDynamicXmlDocumentElements .All(x => "p,div,ul,span".Split(',').Contains(x.Element))); } [Test] public virtual void DataTypeModelStaticMappings() { - var mappings = Section.Scripting.DataTypeModelStaticMappings.ToArray(); + var mappings = SettingsSection.Scripting.DataTypeModelStaticMappings.ToArray(); Assert.IsTrue(mappings[0].DataTypeGuid == Guid.Parse("A3DB4034-BCB0-4E69-B3EE-DD4E6ECA74C2")); Assert.IsTrue(mappings[0].MappingName == "MyName.1"); diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/SecurityElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/SecurityElementTests.cs index 55a2981842..219721c767 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/SecurityElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/SecurityElementTests.cs @@ -8,22 +8,22 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void KeepUserLoggedIn() { - Assert.IsTrue(Section.Security.KeepUserLoggedIn == true); + Assert.IsTrue(SettingsSection.Security.KeepUserLoggedIn == true); } [Test] public void HideDisabledUsersInBackoffice() { - Assert.IsTrue(Section.Security.HideDisabledUsersInBackoffice == false); + Assert.IsTrue(SettingsSection.Security.HideDisabledUsersInBackoffice == false); } [Test] public void AuthCookieDomain() { - Assert.IsTrue(Section.Security.AuthCookieDomain == null); + Assert.IsTrue(SettingsSection.Security.AuthCookieDomain == null); } [Test] public void AuthCookieName() { - Assert.IsTrue(Section.Security.AuthCookieName == "UMB_UCONTEXT"); + Assert.IsTrue(SettingsSection.Security.AuthCookieName == "UMB_UCONTEXT"); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/TemplateElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/TemplateElementTests.cs index 711b5769a9..09c6d85fd3 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/TemplateElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/TemplateElementTests.cs @@ -9,22 +9,22 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void UseAspNetMasterPages() { - Assert.IsTrue(Section.Templates.UseAspNetMasterPages == true); + Assert.IsTrue(SettingsSection.Templates.UseAspNetMasterPages == true); } [Test] public void EnableSkinSupport() { - Assert.IsTrue(Section.Templates.EnableSkinSupport); + Assert.IsTrue(SettingsSection.Templates.EnableSkinSupport); } [Test] public void DefaultRenderingEngine() { - Assert.IsTrue(Section.Templates.DefaultRenderingEngine == RenderingEngine.Mvc); + Assert.IsTrue(SettingsSection.Templates.DefaultRenderingEngine == RenderingEngine.Mvc); } [Test] public void EnableTemplateFolders() { - Assert.IsTrue(Section.Templates.EnableTemplateFolders == false); + Assert.IsTrue(SettingsSection.Templates.EnableTemplateFolders == false); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/UmbracoSettingsTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/UmbracoSettingsTests.cs index 8a651569c3..cadc01746d 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/UmbracoSettingsTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/UmbracoSettingsTests.cs @@ -1,6 +1,7 @@ using System.Configuration; using System.IO; using NUnit.Framework; +using Umbraco.Core.Configuration; using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Tests.TestHelpers; @@ -24,18 +25,19 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings if (TestingDefaults) { - Section = configuration.GetSection("umbracoConfiguration/defaultSettings") as UmbracoSettingsSection; + SettingsSection = configuration.GetSection("umbracoConfiguration/defaultSettings") as UmbracoSettingsSection; } else { - Section = configuration.GetSection("umbracoConfiguration/settings") as UmbracoSettingsSection; + //Section = configuration.GetSection("umbracoConfiguration/settings") as UmbracoSettingsSection; + SettingsSection = UmbracoConfiguration.For(configuration); } - Assert.IsNotNull(Section); + Assert.IsNotNull(SettingsSection); } - protected IUmbracoSettings Section { get; private set; } + protected IUmbracoSettingsSection SettingsSection { get; private set; } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/ViewstateMoverModuleElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/ViewstateMoverModuleElementTests.cs index f420097a31..55fe87950f 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/ViewstateMoverModuleElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/ViewstateMoverModuleElementTests.cs @@ -8,7 +8,7 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void Enable() { - Assert.IsTrue(Section.ViewstateMoverModule.Enable == false); + Assert.IsTrue(SettingsSection.ViewStateMoverModule.Enable == false); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/Configurations/UmbracoSettings/WebRoutingElementTests.cs b/src/Umbraco.Tests/Configurations/UmbracoSettings/WebRoutingElementTests.cs index 1382682981..07fa80152a 100644 --- a/src/Umbraco.Tests/Configurations/UmbracoSettings/WebRoutingElementTests.cs +++ b/src/Umbraco.Tests/Configurations/UmbracoSettings/WebRoutingElementTests.cs @@ -8,19 +8,19 @@ namespace Umbraco.Tests.Configurations.UmbracoSettings [Test] public void TrySkipIisCustomErrors() { - Assert.IsTrue(Section.WebRouting.TrySkipIisCustomErrors == false); + Assert.IsTrue(SettingsSection.WebRouting.TrySkipIisCustomErrors == false); } [Test] public void InternalRedirectPreservesTemplate() { - Assert.IsTrue(Section.WebRouting.TrySkipIisCustomErrors == false); + Assert.IsTrue(SettingsSection.WebRouting.TrySkipIisCustomErrors == false); } [Test] public void UrlProviderMode() { - Assert.IsTrue(Section.WebRouting.UrlProviderMode == "Auto"); + Assert.IsTrue(SettingsSection.WebRouting.UrlProviderMode == "Auto"); } } } \ No newline at end of file diff --git a/src/Umbraco.Tests/PublishedCache/PublishedContentCacheTests.cs b/src/Umbraco.Tests/PublishedCache/PublishedContentCacheTests.cs index 0750684a02..94e32de997 100644 --- a/src/Umbraco.Tests/PublishedCache/PublishedContentCacheTests.cs +++ b/src/Umbraco.Tests/PublishedCache/PublishedContentCacheTests.cs @@ -81,7 +81,7 @@ namespace Umbraco.Tests.PublishedCache //ensure the StateHelper is using our custom context StateHelper.HttpContext = _httpContextFactory.HttpContext; - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.Content.UseLegacyXmlSchema).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -106,7 +106,7 @@ namespace Umbraco.Tests.PublishedCache private void SetupForLegacy() { - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.Content.UseLegacyXmlSchema).Return(true); SettingsForTests.ConfigureSettings(settings); diff --git a/src/Umbraco.Tests/PublishedContent/LegacyExamineBackedMediaTests.cs b/src/Umbraco.Tests/PublishedContent/LegacyExamineBackedMediaTests.cs index d7fcb95767..f90a5c5cb4 100644 --- a/src/Umbraco.Tests/PublishedContent/LegacyExamineBackedMediaTests.cs +++ b/src/Umbraco.Tests/PublishedContent/LegacyExamineBackedMediaTests.cs @@ -19,7 +19,7 @@ namespace Umbraco.Tests.PublishedContent { base.TestSetup(); - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.Content.ForceSafeAliases).Return(true); settings.Stub(x => x.Content.UmbracoLibraryCacheDuration).Return(1800); SettingsForTests.ConfigureSettings(settings); diff --git a/src/Umbraco.Tests/Routing/NiceUrlProviderTests.cs b/src/Umbraco.Tests/Routing/NiceUrlProviderTests.cs index 2dc63db188..42d901d4ca 100644 --- a/src/Umbraco.Tests/Routing/NiceUrlProviderTests.cs +++ b/src/Umbraco.Tests/Routing/NiceUrlProviderTests.cs @@ -33,7 +33,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.AddTrailingSlash).Return(false);// (cached routes have none) SettingsForTests.ConfigureSettings(settings); @@ -99,7 +99,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -125,7 +125,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = true; //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -142,7 +142,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.HideTopLevelNodeFromPath = false; //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -167,7 +167,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.HideTopLevelNodeFromPath = false; //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); diff --git a/src/Umbraco.Tests/Routing/NiceUrlsProviderWithDomainsTests.cs b/src/Umbraco.Tests/Routing/NiceUrlsProviderWithDomainsTests.cs index 7595a2dcf3..b9ad82e26b 100644 --- a/src/Umbraco.Tests/Routing/NiceUrlsProviderWithDomainsTests.cs +++ b/src/Umbraco.Tests/Routing/NiceUrlsProviderWithDomainsTests.cs @@ -206,7 +206,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -238,7 +238,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -262,7 +262,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -292,7 +292,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -312,7 +312,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -380,7 +380,7 @@ namespace Umbraco.Tests.Routing SetDomains4(); //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); diff --git a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs index 77f49ae435..890d551754 100644 --- a/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs +++ b/src/Umbraco.Tests/Routing/UrlsWithNestedDomains.cs @@ -28,7 +28,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; // ignored w/domains //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(true); SettingsForTests.ConfigureSettings(settings); diff --git a/src/Umbraco.Tests/Routing/uQueryGetNodeIdByUrlTests.cs b/src/Umbraco.Tests/Routing/uQueryGetNodeIdByUrlTests.cs index dd53d0773e..9364edc399 100644 --- a/src/Umbraco.Tests/Routing/uQueryGetNodeIdByUrlTests.cs +++ b/src/Umbraco.Tests/Routing/uQueryGetNodeIdByUrlTests.cs @@ -66,7 +66,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); @@ -87,7 +87,7 @@ namespace Umbraco.Tests.Routing SettingsForTests.UseDirectoryUrls = true; SettingsForTests.HideTopLevelNodeFromPath = false; //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.UseDomainPrefixes).Return(false); SettingsForTests.ConfigureSettings(settings); diff --git a/src/Umbraco.Tests/TestHelpers/BaseUmbracoApplicationTest.cs b/src/Umbraco.Tests/TestHelpers/BaseUmbracoApplicationTest.cs index b3ba8b8f35..f42175c403 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseUmbracoApplicationTest.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseUmbracoApplicationTest.cs @@ -30,12 +30,15 @@ namespace Umbraco.Tests.TestHelpers TestHelper.SetupLog4NetForTests(); TestHelper.InitializeContentDirectories(); TestHelper.EnsureUmbracoSettingsConfig(); + //mock the Umbraco settings that we need - var settings = MockRepository.GenerateStub(); + //var settings = MockRepository.GenerateStub(); + var settings = SettingsForTests.GetDefault(); settings.Stub(x => x.Content.UseLegacyXmlSchema).Return(false); settings.Stub(x => x.Content.ForceSafeAliases).Return(true); settings.Stub(x => x.Content.UmbracoLibraryCacheDuration).Return(1800); SettingsForTests.ConfigureSettings(settings); + //Create the legacy prop-eds mapping LegacyPropertyEditorIdToAliasConverter.CreateMappingsForCoreEditors(); diff --git a/src/Umbraco.Tests/TestHelpers/SettingsForTests.cs b/src/Umbraco.Tests/TestHelpers/SettingsForTests.cs index ba0ac64332..6f81b4a606 100644 --- a/src/Umbraco.Tests/TestHelpers/SettingsForTests.cs +++ b/src/Umbraco.Tests/TestHelpers/SettingsForTests.cs @@ -19,7 +19,7 @@ namespace Umbraco.Tests.TestHelpers /// Sets the umbraco settings singleton to the object specified /// /// - public static void ConfigureSettings(IUmbracoSettings settings) + public static void ConfigureSettings(IUmbracoSettingsSection settings) { UmbracoConfiguration.Current.UmbracoSettings = settings; } @@ -185,7 +185,7 @@ namespace Umbraco.Tests.TestHelpers ConfigureSettings(GetDefault()); } - internal static IUmbracoSettings GetDefault() + internal static IUmbracoSettingsSection GetDefault() { var config = new FileInfo(TestHelper.MapPathForTest("~/Configurations/UmbracoSettings/web.config")); diff --git a/src/Umbraco.Tests/TestHelpers/TestHelper.cs b/src/Umbraco.Tests/TestHelpers/TestHelper.cs index 29c096a4c9..ae28f50b6b 100644 --- a/src/Umbraco.Tests/TestHelpers/TestHelper.cs +++ b/src/Umbraco.Tests/TestHelpers/TestHelper.cs @@ -113,6 +113,7 @@ namespace Umbraco.Tests.TestHelpers } } + //TODO: With the new config updates, I'm pretty sure this isn't needed? public static void EnsureUmbracoSettingsConfig() { var currDir = new DirectoryInfo(CurrentAssemblyDirectory); diff --git a/src/Umbraco.Tests/UriUtilityTests.cs b/src/Umbraco.Tests/UriUtilityTests.cs index 0a20fcacf5..148f014715 100644 --- a/src/Umbraco.Tests/UriUtilityTests.cs +++ b/src/Umbraco.Tests/UriUtilityTests.cs @@ -87,7 +87,7 @@ namespace Umbraco.Tests { ConfigurationManager.AppSettings.Set("umbracoUseDirectoryUrls", directoryUrls ? "true" : "false"); - var settings = MockRepository.GenerateStub(); + var settings = MockRepository.GenerateStub(); settings.Stub(x => x.RequestHandler.AddTrailingSlash).Return(trailingSlash); SettingsForTests.ConfigureSettings(settings); diff --git a/src/Umbraco.Web/PropertyEditors/FileUploadPropertyEditor.cs b/src/Umbraco.Web/PropertyEditors/FileUploadPropertyEditor.cs index 623d2b5df4..c52894e97a 100644 --- a/src/Umbraco.Web/PropertyEditors/FileUploadPropertyEditor.cs +++ b/src/Umbraco.Web/PropertyEditors/FileUploadPropertyEditor.cs @@ -95,7 +95,7 @@ namespace Umbraco.Web.PropertyEditors } } - private static void ResetProperties(IContentImagingAutoFillUploadField uploadFieldConfigNode, IContentBase content) + private static void ResetProperties(IImagingAutoFillUploadField uploadFieldConfigNode, IContentBase content) { if (content.Properties[uploadFieldConfigNode.WidthFieldAlias] != null) content.Properties[uploadFieldConfigNode.WidthFieldAlias].Value = string.Empty; @@ -110,7 +110,7 @@ namespace Umbraco.Web.PropertyEditors content.Properties[uploadFieldConfigNode.ExtensionFieldAlias].Value = string.Empty; } - private static void FillProperties(IContentImagingAutoFillUploadField uploadFieldConfigNode, IContentBase content, UmbracoMediaFile um) + private static void FillProperties(IImagingAutoFillUploadField uploadFieldConfigNode, IContentBase content, UmbracoMediaFile um) { var size = um.SupportsResizing ? (Size?)um.GetDimensions() : null; diff --git a/src/Umbraco.Web/umbraco.presentation/viewstateMoverModule.cs b/src/Umbraco.Web/umbraco.presentation/viewstateMoverModule.cs index 50cbc34fbb..0e110d9759 100644 --- a/src/Umbraco.Web/umbraco.presentation/viewstateMoverModule.cs +++ b/src/Umbraco.Web/umbraco.presentation/viewstateMoverModule.cs @@ -27,7 +27,7 @@ namespace umbraco.presentation void IHttpModule.Init(HttpApplication context) { - if (UmbracoConfiguration.Current.UmbracoSettings.ViewstateMoverModule.Enable) + if (UmbracoConfiguration.Current.UmbracoSettings.ViewStateMoverModule.Enable) { context.BeginRequest += new EventHandler(context_BeginRequest); } diff --git a/src/umbraco.businesslogic/UmbracoSettings.cs b/src/umbraco.businesslogic/UmbracoSettings.cs index e80d1d27ea..11803dc1d8 100644 --- a/src/umbraco.businesslogic/UmbracoSettings.cs +++ b/src/umbraco.businesslogic/UmbracoSettings.cs @@ -489,7 +489,7 @@ namespace umbraco /// public static bool UseViewstateMoverModule { - get { return UmbracoConfiguration.Current.UmbracoSettings.ViewstateMoverModule.Enable; } + get { return UmbracoConfiguration.Current.UmbracoSettings.ViewStateMoverModule.Enable; } } diff --git a/src/umbraco.cms/businesslogic/datatype/FileHandlerData.cs b/src/umbraco.cms/businesslogic/datatype/FileHandlerData.cs index 555d9efe34..3949441dfc 100644 --- a/src/umbraco.cms/businesslogic/datatype/FileHandlerData.cs +++ b/src/umbraco.cms/businesslogic/datatype/FileHandlerData.cs @@ -168,7 +168,7 @@ namespace umbraco.cms.businesslogic.datatype } } - private void FillProperties(IContentImagingAutoFillUploadField uploadFieldConfigNode, Content content, UmbracoFile um) + private void FillProperties(IImagingAutoFillUploadField uploadFieldConfigNode, Content content, UmbracoFile um) { var prop = content.getProperty(uploadFieldConfigNode.WidthFieldAlias); if (prop != null)