diff --git a/Remotion/Core/Core/Configuration/ServiceLocation/IServiceLocationConfiguration.cs b/Remotion/Core/Core/Configuration/ServiceLocation/IServiceLocationConfiguration.obsolete.cs
similarity index 70%
rename from Remotion/Core/Core/Configuration/ServiceLocation/IServiceLocationConfiguration.cs
rename to Remotion/Core/Core/Configuration/ServiceLocation/IServiceLocationConfiguration.obsolete.cs
index 3ba56e0288..ec023e6c28 100644
--- a/Remotion/Core/Core/Configuration/ServiceLocation/IServiceLocationConfiguration.cs
+++ b/Remotion/Core/Core/Configuration/ServiceLocation/IServiceLocationConfiguration.obsolete.cs
@@ -19,13 +19,10 @@
namespace Remotion.Configuration.ServiceLocation
{
+ [Obsolete("Use IoC bootstrapping to resolve the IServiceLocatorProvider (Version 6.0.0)", true)]
public interface IServiceLocationConfiguration
{
- ///
- /// Creates an instance as indicated by . If no
- /// is set, an instance of is returned.
- ///
- /// An new instance.
+ [Obsolete("Use IoC bootstrapping to resolve the IServiceLocatorProvider (Version 6.0.0)", true)]
IServiceLocatorProvider CreateServiceLocatorProvider ();
}
}
diff --git a/Remotion/Core/Core/Configuration/ServiceLocation/ServiceLocationConfiguration.cs b/Remotion/Core/Core/Configuration/ServiceLocation/ServiceLocationConfiguration.cs
deleted file mode 100644
index d961f06975..0000000000
--- a/Remotion/Core/Core/Configuration/ServiceLocation/ServiceLocationConfiguration.cs
+++ /dev/null
@@ -1,89 +0,0 @@
-// This file is part of the re-motion Core Framework (www.re-motion.org)
-// Copyright (c) rubicon IT GmbH, www.rubicon.eu
-//
-// The re-motion Core Framework is free software; you can redistribute it
-// and/or modify it under the terms of the GNU Lesser General Public License
-// as published by the Free Software Foundation; either version 2.1 of the
-// License, or (at your option) any later version.
-//
-// re-motion is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with re-motion; if not, see http://www.gnu.org/licenses.
-//
-using System;
-using System.Configuration;
-using Remotion.ServiceLocation;
-
-namespace Remotion.Configuration.ServiceLocation
-{
- ///
- /// Configures the service location performed by .
- ///
- public sealed class ServiceLocationConfiguration : ConfigurationSection, IServiceLocationConfiguration
- {
- private static readonly DoubleCheckedLockingContainer s_current =
- new DoubleCheckedLockingContainer(GetServiceLocationConfiguration);
-
- ///
- /// Gets the current instance. This is used by
- /// to retrieve an instance if no specific
- /// was configured via .
- ///
- /// The current .
- public static IServiceLocationConfiguration Current
- {
- get { return s_current.Value; }
- }
-
- ///
- /// Sets the instance.
- ///
- /// The new configuration to set as the configuration.
- public static void SetCurrent (IServiceLocationConfiguration? configuration)
- {
- s_current.Value = configuration!;
- }
-
- private static ServiceLocationConfiguration GetServiceLocationConfiguration ()
- {
- return (ServiceLocationConfiguration)(ConfigurationWrapper.Current.GetSection("remotion.serviceLocation", false) ?? new ServiceLocationConfiguration());
- }
-
- ///
- /// Initializes a new default instance of the class. To load the configuration from a config file,
- /// use instead.
- ///
- public ServiceLocationConfiguration ()
- {
- var xmlnsProperty = new ConfigurationProperty("xmlns", typeof(string), null, ConfigurationPropertyOptions.None);
- Properties.Add(xmlnsProperty);
- }
-
- ///
- /// Gets a describing the custom to be used. This provider defines
- /// the to be used by if no custom was
- /// configured using .
- ///
- /// A describing the custom type to be used.
- [ConfigurationProperty("serviceLocatorProvider", IsRequired = false)]
- public TypeElement ServiceLocatorProvider
- {
- get { return (TypeElement)this["serviceLocatorProvider"]; }
- }
-
- ///
- /// Creates an instance as indicated by . If no
- /// is set, an instance of is returned.
- ///
- /// An new instance.
- public IServiceLocatorProvider CreateServiceLocatorProvider ()
- {
- // TODO RM-7432: CreateInstance should not be nullable
- return ServiceLocatorProvider.CreateInstance()!;
- }
- }
-}
diff --git a/Remotion/Core/UnitTests/Configuration/ServiceLocation/FakeServiceLocatorProvider.cs b/Remotion/Core/Core/Configuration/ServiceLocation/ServiceLocationConfiguration.obsolete.cs
similarity index 58%
rename from Remotion/Core/UnitTests/Configuration/ServiceLocation/FakeServiceLocatorProvider.cs
rename to Remotion/Core/Core/Configuration/ServiceLocation/ServiceLocationConfiguration.obsolete.cs
index 20db0a8b66..2c4ace21ab 100644
--- a/Remotion/Core/UnitTests/Configuration/ServiceLocation/FakeServiceLocatorProvider.cs
+++ b/Remotion/Core/Core/Configuration/ServiceLocation/ServiceLocationConfiguration.obsolete.cs
@@ -1,4 +1,4 @@
-// This file is part of the re-motion Core Framework (www.re-motion.org)
+// This file is part of the re-motion Core Framework (www.re-motion.org)
// Copyright (c) rubicon IT GmbH, www.rubicon.eu
//
// The re-motion Core Framework is free software; you can redistribute it
@@ -15,16 +15,18 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
-using System.Collections.ObjectModel;
-using Remotion.ServiceLocation;
-namespace Remotion.UnitTests.Configuration.ServiceLocation
+namespace Remotion.Configuration.ServiceLocation
{
- public class FakeServiceLocatorProvider : IServiceLocatorProvider
+ [Obsolete("Use IoC bootstrapping to resolve the IServiceLocatorProvider (Version 6.0.0)", true)]
+
+ public static class ServiceLocationConfiguration
{
- public IServiceLocator GetServiceLocator (ReadOnlyCollection bootstrapConfiguration)
+ [Obsolete("Use IoC bootstrapping to resolve the IServiceLocatorProvider (Version 6.0.0)", true)]
+
+ public static IServiceLocationConfiguration Current
{
- throw new NotImplementedException();
+ get => throw new NotSupportedException("Use IoC bootstrapping to resolve the IServiceLocatorProvider (Version 6.0.0)");
}
}
}
diff --git a/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryConfiguration.cs b/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryConfiguration.cs
index 28c994b28a..939b0a232b 100644
--- a/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryConfiguration.cs
+++ b/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryConfiguration.cs
@@ -70,35 +70,7 @@ public TypeDiscoveryConfiguration ()
}
///
- /// Gets or sets the to be used for type discovery.
- ///
- /// The to be used for type discovery.
- [ConfigurationProperty("mode", DefaultValue = TypeDiscoveryMode.Automatic, IsRequired = false)]
- public TypeDiscoveryMode Mode
- {
- get { return (TypeDiscoveryMode)this["mode"]; }
- set { this["mode"] = value; }
- }
-
- ///
- /// Gets a describing the custom to be used. This is only relevant
- /// if is set to . In this mode, an
- /// is created, and an instance of the specified type is
- /// employed for finding the root assemblies used for type discovery. The given type must have a default constructor.
- ///
- /// A describing the custom type to be used.
- [ConfigurationProperty("customRootAssemblyFinder", IsRequired = false)]
- public TypeElement CustomRootAssemblyFinder
- {
- get { return (TypeElement)this["customRootAssemblyFinder"]; }
- }
-
- ///
- /// Gets a describing specific root assemblies to be used. This is only relevant
- /// if is set to . In this mode, an
- /// is created, and the given root assemblies are employed for type discovery.
- /// Note that even if an assembly is specified as a root assembly, the default filtering rules ()
- /// still apply even for that assembly.
+ /// Gets a describing specific root assemblies to be used.
///
/// A describing specific root assemblies to be used.
[ConfigurationProperty("specificRootAssemblies", IsRequired = false)]
@@ -106,117 +78,5 @@ public RootAssembliesElement SpecificRootAssemblies
{
get { return (RootAssembliesElement)this["specificRootAssemblies"]; }
}
-
- ///
- /// Gets a describing the custom to be used. This is only relevant
- /// if is set to . In this mode, an
- /// instance of the specified type is
- /// employed for type discovery. The given type must have a default constructor.
- ///
- /// A describing the custom type to be used.
- [ConfigurationProperty("customTypeDiscoveryService", IsRequired = false)]
- public TypeElement CustomTypeDiscoveryService
- {
- get { return (TypeElement)this["customTypeDiscoveryService"]; }
- }
-
- ///
- /// Creates an instance as indicated by .
- ///
- /// A new that discovers types as indicated by .
- public ITypeDiscoveryService CreateTypeDiscoveryService ()
- {
- switch (Mode)
- {
- case TypeDiscoveryMode.CustomRootAssemblyFinder:
- return CreateServiceWithCustomRootAssemblyFinder();
- case TypeDiscoveryMode.SpecificRootAssemblies:
- return CreateServiceWithSpecificRootAssemblies();
- case TypeDiscoveryMode.CustomTypeDiscoveryService:
- return CreateCustomService();
- default:
- return CreateServiceWithAutomaticDiscovery();
- }
- }
-
- private ITypeDiscoveryService CreateServiceWithCustomRootAssemblyFinder ()
- {
- if (CustomRootAssemblyFinder.Type == null)
- {
- string message = string.Format(
- "In CustomRootAssemblyFinder mode, a custom root assembly finder must be specified in the type discovery configuration. {0}",
- GetConfigurationBodyErrorMessage(
- "CustomRootAssemblyFinder",
- ""));
- throw new ConfigurationErrorsException(message);
- }
-
- // TODO RM-7788: The return value of Activator.CreateInstance should be checked for null.
- var customRootAssemblyFinder = (IRootAssemblyFinder)Activator.CreateInstance(CustomRootAssemblyFinder.Type)!;
- return CreateServiceWithAssemblyFinder(customRootAssemblyFinder);
- }
-
- private ITypeDiscoveryService CreateServiceWithSpecificRootAssemblies ()
- {
- var assemblyLoader = CreateAllAssemblyLoader();
- var rootAssemblyFinder = SpecificRootAssemblies.CreateRootAssemblyFinder(assemblyLoader);
- return CreateServiceWithAssemblyFinder(rootAssemblyFinder);
- }
-
- private ITypeDiscoveryService CreateCustomService ()
- {
- if (CustomTypeDiscoveryService.Type == null)
- {
- string message = string.Format(
- "In CustomTypeDiscoveryService mode, a custom type discovery service must be specified in the type discovery configuration. {0}",
- GetConfigurationBodyErrorMessage(
- "CustomTypeDiscoveryService",
- ""));
- throw new ConfigurationErrorsException(message);
- }
-
- // TODO RM-7788: The return value of Activator.CreateInstance should be checked for null.
- return (ITypeDiscoveryService)Activator.CreateInstance(CustomTypeDiscoveryService.Type)!;
- }
-
- private ITypeDiscoveryService CreateServiceWithAutomaticDiscovery ()
- {
- var assemblyLoader = CreateApplicationAssemblyLoader();
- var searchPathRootAssemblyFinder = SearchPathRootAssemblyFinder.CreateForCurrentAppDomain(false, assemblyLoader);
- return CreateServiceWithAssemblyFinder(searchPathRootAssemblyFinder);
- }
-
- private ITypeDiscoveryService CreateServiceWithAssemblyFinder (IRootAssemblyFinder customRootAssemblyFinder)
- {
- var filteringAssemblyLoader = CreateApplicationAssemblyLoader();
- var assemblyFinder = new CachingAssemblyFinderDecorator(new AssemblyFinder(customRootAssemblyFinder, filteringAssemblyLoader));
- return new AssemblyFinderTypeDiscoveryService(assemblyFinder);
- }
-
- private string GetConfigurationBodyErrorMessage (string modeValue, string modeSpecificBodyElement)
- {
- var message = Environment.NewLine + Environment.NewLine
- + "Example configuration: " + Environment.NewLine
- + "" + Environment.NewLine
- + "" + Environment.NewLine
- + " " + Environment.NewLine
- + " " + Environment.NewLine
- + " " + Environment.NewLine
- + " " + Environment.NewLine
- + " " + modeSpecificBodyElement + Environment.NewLine
- + " " + Environment.NewLine
- + "";
- return message;
- }
-
- private IAssemblyLoader CreateApplicationAssemblyLoader ()
- {
- return new FilteringAssemblyLoader(ApplicationAssemblyLoaderFilter.Instance);
- }
-
- private IAssemblyLoader CreateAllAssemblyLoader ()
- {
- return new FilteringAssemblyLoader(new LoadAllAssemblyLoaderFilter());
- }
}
}
diff --git a/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryMode.cs b/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryMode.cs
index 3fd0ad5ccb..73285eb0cb 100644
--- a/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryMode.cs
+++ b/Remotion/Core/Core/Configuration/TypeDiscovery/TypeDiscoveryMode.cs
@@ -15,8 +15,6 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
-using System.ComponentModel.Design;
-using Remotion.Reflection.TypeDiscovery.AssemblyFinding;
namespace Remotion.Configuration.TypeDiscovery
{
@@ -30,22 +28,18 @@ public enum TypeDiscoveryMode
/// and their referenced assemblies.
///
Automatic,
- ///
- /// Chooses a custom which searches for root assemblies. The types are discovered from those assemblies.
- /// Whether types from referenced assemblies are also included is defined by the .
- /// See .
- ///
+
+ [Obsolete("Register the custom implementation of IRootAssemblyFinder via the SafeServiceLocator.BootstrapConfiguration. (Version 6.0.0)", true)]
CustomRootAssemblyFinder,
+
///
/// Chooses a number of specific root assemblies. The types are discovered from those assemblies. Whether types from referenced assemblies are
/// also included is defined by the user.
/// See .
///
SpecificRootAssemblies,
- ///
- /// Chooses a custom implementation. The types are discovered by that service.
- /// See .
- ///
+
+ [Obsolete("Register the custom implementation of ITypeDiscoveryService via the SafeServiceLocator.BootstrapConfiguration. (Version 6.0.0)", true)]
CustomTypeDiscoveryService
}
}
diff --git a/Remotion/Core/Core/Configuration/TypeResolution/TypeResolutionConfiguration.cs b/Remotion/Core/Core/Configuration/TypeResolution/TypeResolutionConfiguration.cs
deleted file mode 100644
index 0b47a6bf82..0000000000
--- a/Remotion/Core/Core/Configuration/TypeResolution/TypeResolutionConfiguration.cs
+++ /dev/null
@@ -1,76 +0,0 @@
-// This file is part of the re-motion Core Framework (www.re-motion.org)
-// Copyright (c) rubicon IT GmbH, www.rubicon.eu
-//
-// The re-motion Core Framework is free software; you can redistribute it
-// and/or modify it under the terms of the GNU Lesser General Public License
-// as published by the Free Software Foundation; either version 2.1 of the
-// License, or (at your option) any later version.
-//
-// re-motion is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with re-motion; if not, see http://www.gnu.org/licenses.
-//
-using System;
-using System.ComponentModel.Design;
-using System.Configuration;
-using Remotion.Configuration.TypeDiscovery;
-using Remotion.Reflection;
-using Remotion.Reflection.TypeResolution;
-using Remotion.Utilities;
-
-namespace Remotion.Configuration.TypeResolution
-{
- ///
- /// Configures the type discovery performed by .
- ///
- /// This configuration should be aligned with . See https://www.re-motion.org/jira/browse/RM-6413
- public sealed class TypeResolutionConfiguration : ConfigurationSection
- {
- private static readonly DoubleCheckedLockingContainer s_current =
- new DoubleCheckedLockingContainer(GetTypeResolutionConfiguration);
-
- ///
- /// Gets the current instance. This is used by
- /// to retrieve a instance
- /// if no is available.
- ///
- /// The current .
- public static TypeResolutionConfiguration Current
- {
- get { return s_current.Value; }
- }
-
- ///
- /// Sets the instance.
- ///
- /// The new configuration to set as the configuration.
- public static void SetCurrent (TypeResolutionConfiguration configuration)
- {
- s_current.Value = configuration;
- }
-
- private static TypeResolutionConfiguration GetTypeResolutionConfiguration ()
- {
- // return (TypeResolutionConfiguration) ConfigurationWrapper.Current.GetSection ("remotion.typeResolution", false) ?? new TypeResolutionConfiguration();
- return new TypeResolutionConfiguration(new DefaultTypeResolutionService());
- }
-
- private readonly ITypeResolutionService _typeResolutionService;
-
- public TypeResolutionConfiguration (ITypeResolutionService typeResolutionService)
- {
- ArgumentUtility.CheckNotNull("typeResolutionService", typeResolutionService);
-
- _typeResolutionService = typeResolutionService;
- }
-
- public ITypeResolutionService CreateTypeResolutionService ()
- {
- return _typeResolutionService;
- }
- }
-}
diff --git a/Remotion/Core/Core/Reflection/ContextAwareTypeUtility.cs b/Remotion/Core/Core/Reflection/ContextAwareTypeUtility.cs
index 6243256218..9117bb9807 100644
--- a/Remotion/Core/Core/Reflection/ContextAwareTypeUtility.cs
+++ b/Remotion/Core/Core/Reflection/ContextAwareTypeUtility.cs
@@ -16,9 +16,7 @@
//
using System;
using System.ComponentModel.Design;
-using System.Threading;
-using Remotion.Configuration.TypeDiscovery;
-using Remotion.Configuration.TypeResolution;
+using Remotion.ServiceLocation;
namespace Remotion.Reflection
{
@@ -29,46 +27,26 @@ namespace Remotion.Reflection
///
public static class ContextAwareTypeUtility
{
- /// Workaround to allow reflection to reset the fields since setting a static readonly field is not supported in .NET 3.0 and later.
- private class Fields
- {
- public readonly Lazy DefaultTypeDiscoveryService =
- new Lazy(
- () => TypeDiscoveryConfiguration.Current.CreateTypeDiscoveryService(),
- LazyThreadSafetyMode.ExecutionAndPublication);
-
- public readonly Lazy DefaultTypeResolutionService =
- new Lazy(
- () => TypeResolutionConfiguration.Current.CreateTypeResolutionService(),
- LazyThreadSafetyMode.ExecutionAndPublication);
- }
-
- private static readonly Fields s_fields = new Fields();
-
///
- /// Gets the current context-specific . If an is available,
- /// the designer's is returned. Otherwise, the
- /// is used to create a new when the property is first retrieved. That instance is stored for later uses.
+ /// Gets the current context-specific .
///
- /// The current context-specific .
+ [Obsolete("Retrieve via the application's IoC container, e.g. SafeServiceLocator.Current.GetInstance(). (Version 6.0.0)")]
public static ITypeDiscoveryService GetTypeDiscoveryService ()
{
// Here you could choose to get the ITypeDiscoveryService from IDesignerHost.GetService (typeof (ITypeDiscoveryService)) instead of the resolved one.
- return s_fields.DefaultTypeDiscoveryService.Value;
+ return SafeServiceLocator.Current.GetInstance();
}
///
- /// Gets the current context-specific . If an is available,
- /// the designer's is returned. Otherwise, the
- /// is used to create a new when the property is first retrieved. That instance is stored for later uses.
+ /// Gets the from the .
///
- /// The current context-specific .
+ [Obsolete("Retrieve via the application's IoC container, e.g. SafeServiceLocator.Current.GetInstance(). (Version 6.0.0)")]
public static ITypeResolutionService GetTypeResolutionService ()
{
// Here you could choose to get the ITypeResolutionService from IDesignerHost.GetService (typeof (ITypeResolutionService)) instead of the resolved one.
- return s_fields.DefaultTypeResolutionService.Value;
+ return SafeServiceLocator.Current.GetInstance();
}
}
}
diff --git a/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinderTypeDiscoveryService.cs b/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinderTypeDiscoveryService.cs
index f03c1a7b8e..3c373fc4c9 100644
--- a/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinderTypeDiscoveryService.cs
+++ b/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinderTypeDiscoveryService.cs
@@ -22,7 +22,6 @@
using System.ComponentModel.Design;
using System.Linq;
using System.Reflection;
-using Remotion.Configuration.TypeDiscovery;
using Remotion.Logging;
using Remotion.Reflection.TypeDiscovery.AssemblyFinding;
using Remotion.Utilities;
@@ -31,8 +30,7 @@ namespace Remotion.Reflection.TypeDiscovery
{
///
/// Provides an implementation of the interface that uses an to
- /// retrieve types. This class is created by in the default configuration and
- /// is therefore the default provided by
+ /// retrieve types. This class is the default provided by
/// in the standard context.
///
public sealed class AssemblyFinderTypeDiscoveryService : ITypeDiscoveryService
diff --git a/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinding/AppContextBasedRootAssemblyFinder.cs b/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinding/AppContextBasedRootAssemblyFinder.cs
new file mode 100644
index 0000000000..7340fe649f
--- /dev/null
+++ b/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinding/AppContextBasedRootAssemblyFinder.cs
@@ -0,0 +1,52 @@
+// This file is part of the re-motion Core Framework (www.re-motion.org)
+// Copyright (c) rubicon IT GmbH, www.rubicon.eu
+//
+// The re-motion Core Framework is free software; you can redistribute it
+// and/or modify it under the terms of the GNU Lesser General Public License
+// as published by the Free Software Foundation; either version 2.1 of the
+// License, or (at your option) any later version.
+//
+// re-motion is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with re-motion; if not, see http://www.gnu.org/licenses.
+//
+using System.Collections.Generic;
+using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.Utilities;
+
+namespace Remotion.Reflection.TypeDiscovery.AssemblyFinding
+{
+ ///
+ /// Wraps based on the ..
+ ///
+ public class AppContextBasedRootAssemblyFinder : IRootAssemblyFinder
+ {
+ public IAssemblyLoader AssemblyLoader { get; }
+ public IAppContextProvider AppContextProvider { get; }
+
+ public AppContextBasedRootAssemblyFinder (IAssemblyLoader assemblyLoader, IAppContextProvider appContextProvider)
+ {
+ ArgumentUtility.CheckNotNull("assemblyLoader", assemblyLoader);
+ ArgumentUtility.CheckNotNull("appContextProvider", appContextProvider);
+
+ AssemblyLoader = assemblyLoader;
+ AppContextProvider = appContextProvider;
+ }
+
+ public IEnumerable FindRootAssemblies ()
+ {
+ var rootAssemblyFinder = new SearchPathRootAssemblyFinder(
+ baseDirectory: AppContextProvider.BaseDirectory,
+ relativeSearchPath: null,
+ considerDynamicDirectory: false,
+ dynamicDirectory: null,
+ AssemblyLoader);
+
+ return rootAssemblyFinder.FindRootAssemblies();
+ }
+ }
+}
diff --git a/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinding/CurrentAppDomainBasedRootAssemblyFinder.cs b/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinding/CurrentAppDomainBasedRootAssemblyFinder.cs
new file mode 100644
index 0000000000..bb51060caf
--- /dev/null
+++ b/Remotion/Core/Core/Reflection/TypeDiscovery/AssemblyFinding/CurrentAppDomainBasedRootAssemblyFinder.cs
@@ -0,0 +1,47 @@
+// This file is part of the re-motion Core Framework (www.re-motion.org)
+// Copyright (c) rubicon IT GmbH, www.rubicon.eu
+//
+// The re-motion Core Framework is free software; you can redistribute it
+// and/or modify it under the terms of the GNU Lesser General Public License
+// as published by the Free Software Foundation; either version 2.1 of the
+// License, or (at your option) any later version.
+//
+// re-motion is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with re-motion; if not, see http://www.gnu.org/licenses.
+//
+#if NETFRAMEWORK
+
+using System;
+using System.Collections.Generic;
+using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.Utilities;
+
+namespace Remotion.Reflection.TypeDiscovery.AssemblyFinding
+{
+ ///
+ /// Wraps the initialization of based on ..
+ ///
+ public class CurrentAppDomainBasedRootAssemblyFinder : IRootAssemblyFinder
+ {
+ public IAssemblyLoader AssemblyLoader { get; }
+
+ public CurrentAppDomainBasedRootAssemblyFinder (IAssemblyLoader assemblyLoader)
+ {
+ ArgumentUtility.CheckNotNull("assemblyLoader", assemblyLoader);
+ AssemblyLoader = assemblyLoader;
+ }
+
+ public IEnumerable FindRootAssemblies ()
+ {
+ var rootAssemblyFinder = SearchPathRootAssemblyFinder.CreateForCurrentAppDomain(false, AssemblyLoader);
+ return rootAssemblyFinder.FindRootAssemblies();
+ }
+ }
+}
+
+#endif
diff --git a/Remotion/Core/Core/Schemas/ServiceLocationConfiguration.xsd b/Remotion/Core/Core/Schemas/ServiceLocationConfiguration.xsd
deleted file mode 100644
index 1d936bbbce..0000000000
--- a/Remotion/Core/Core/Schemas/ServiceLocationConfiguration.xsd
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Remotion/Core/Core/Schemas/TypeDiscoveryConfiguration.xsd b/Remotion/Core/Core/Schemas/TypeDiscoveryConfiguration.xsd
index a5b6140496..4bc7d8f111 100644
--- a/Remotion/Core/Core/Schemas/TypeDiscoveryConfiguration.xsd
+++ b/Remotion/Core/Core/Schemas/TypeDiscoveryConfiguration.xsd
@@ -43,28 +43,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -74,29 +53,4 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfiguration.cs b/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfiguration.cs
index cb37c257a1..b3f9c8b87e 100644
--- a/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfiguration.cs
+++ b/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfiguration.cs
@@ -16,6 +16,12 @@
//
using System;
using System.Collections.Generic;
+using System.ComponentModel.Design;
+using Remotion.Logging;
+using Remotion.Reflection.TypeDiscovery;
+using Remotion.Reflection.TypeDiscovery.AssemblyFinding;
+using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.Reflection.TypeResolution;
using Remotion.Utilities;
namespace Remotion.ServiceLocation
@@ -27,28 +33,38 @@ namespace Remotion.ServiceLocation
public class BootstrapServiceConfiguration : IBootstrapServiceConfiguration
{
private readonly object _lock = new object();
- private readonly List _registrations = new List();
-
- private DefaultServiceLocator _bootstrapServiceLocator = DefaultServiceLocator.Create();
+ private readonly Dictionary _registrations = new();
public BootstrapServiceConfiguration ()
{
+ // Logging
+ RegisterInstanceAsSingleton(() => new Log4NetLogManager());
- }
+ // Type resolution
+ RegisterImplementationAsSingleton();
- public IServiceLocator BootstrapServiceLocator
- {
- get { return _bootstrapServiceLocator; }
+ // Type discovery
+ RegisterInstanceAsSingleton(() => ApplicationAssemblyLoaderFilter.Instance);
+ RegisterImplementationAsSingleton();
+ RegisterImplementationAsSingleton();
+#if NETFRAMEWORK
+ RegisterImplementationAsSingleton();
+#else
+ RegisterImplementationAsSingleton();
+#endif
+ RegisterDecoratedImplementationAsSingleton();
+ RegisterImplementationAsSingleton();
+
+ // Service Location
+ RegisterImplementationAsSingleton();
+ RegisterImplementationAsSingleton();
}
- public ServiceConfigurationEntry[] Registrations
+ public IReadOnlyCollection GetRegistrations ()
{
- get
+ lock (_lock)
{
- lock (_lock)
- {
- return _registrations.ToArray();
- }
+ return _registrations.Values;
}
}
@@ -58,26 +74,48 @@ public void Register (ServiceConfigurationEntry entry)
lock (_lock)
{
- _bootstrapServiceLocator.Register(entry);
- _registrations.Add(entry);
+ _registrations[entry.ServiceType] = entry;
}
}
- public void Register (Type serviceType, Type implementationType, LifetimeKind lifetime)
+ private void RegisterImplementationAsSingleton ()
+ where TService : class
+ where TImplementation : class, TService
{
- ArgumentUtility.CheckNotNull("serviceType", serviceType);
- ArgumentUtility.CheckNotNull("implementationType", implementationType);
+ lock (_lock)
+ {
+ _registrations.Add(
+ typeof(TService),
+ new ServiceConfigurationEntry(typeof(TService), new ServiceImplementationInfo(typeof(TImplementation), LifetimeKind.Singleton, RegistrationType.Single)));
+ }
+ }
- var entry = new ServiceConfigurationEntry(serviceType, new ServiceImplementationInfo(implementationType, lifetime));
- Register(entry);
+ private void RegisterDecoratedImplementationAsSingleton ()
+ where TService : class
+ where TImplementation : class, TService
+ where TDecorator : class, TService
+ {
+ lock (_lock)
+ {
+ _registrations.Add(
+ typeof(TService),
+ new ServiceConfigurationEntry(
+ typeof(TService),
+ new ServiceImplementationInfo(typeof(TImplementation), LifetimeKind.Singleton, RegistrationType.Single),
+ new ServiceImplementationInfo(typeof(TDecorator), LifetimeKind.InstancePerDependency, RegistrationType.Decorator)));
+ }
}
- public void Reset ()
+ private void RegisterInstanceAsSingleton (Func factory)
+ where TService : class
+ where TImplementation : class, TService
{
lock (_lock)
{
- _bootstrapServiceLocator = DefaultServiceLocator.Create();
- _registrations.Clear();
+ var singleton = new Lazy(factory);
+ _registrations.Add(
+ typeof(TService),
+ new ServiceConfigurationEntry(typeof(TService), ServiceImplementationInfo.CreateSingle(() => singleton.Value, LifetimeKind.Singleton)));
}
}
}
diff --git a/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfigurationDiscoveryService.cs b/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfigurationDiscoveryService.cs
new file mode 100644
index 0000000000..117278e928
--- /dev/null
+++ b/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfigurationDiscoveryService.cs
@@ -0,0 +1,57 @@
+// This file is part of the re-motion Core Framework (www.re-motion.org)
+// Copyright (c) rubicon IT GmbH, www.rubicon.eu
+//
+// The re-motion Core Framework is free software; you can redistribute it
+// and/or modify it under the terms of the GNU Lesser General Public License
+// as published by the Free Software Foundation; either version 2.1 of the
+// License, or (at your option) any later version.
+//
+// re-motion is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with re-motion; if not, see http://www.gnu.org/licenses.
+//
+using System;
+using System.Collections.Generic;
+using System.Reflection;
+using Remotion.Reflection;
+
+namespace Remotion.ServiceLocation
+{
+ ///
+ /// Implementation of the used only to satisfy a mandatory parameter requirement
+ /// when instantiating the in a bootstrapping context.
+ ///
+ public class BootstrapServiceConfigurationDiscoveryService : IServiceConfigurationDiscoveryService
+ {
+ public BootstrapServiceConfigurationDiscoveryService ()
+ {
+ }
+
+ public IEnumerable GetDefaultConfiguration ()
+ {
+ throw new NotSupportedException($"The {nameof(BootstrapServiceConfigurationDiscoveryService)} does not support the automatic composition of the service configuration.");
+ }
+
+ public IEnumerable GetDefaultConfiguration (IEnumerable serviceTypes)
+ {
+ throw new NotSupportedException($"The {nameof(BootstrapServiceConfigurationDiscoveryService)} does not support the automatic composition of the service configuration.");
+ }
+
+ public IEnumerable GetDefaultConfiguration (IEnumerable assemblies)
+ {
+ throw new NotSupportedException($"The {nameof(BootstrapServiceConfigurationDiscoveryService)} does not support the automatic composition of the service configuration.");
+ }
+
+ public ServiceConfigurationEntry GetDefaultConfiguration (Type serviceType)
+ {
+ throw new NotSupportedException(
+ $"The {nameof(BootstrapServiceConfigurationDiscoveryService)} does not support the automatic composition of the service configuration for a type. "
+ + $"Register the requested type '{serviceType.GetFullNameSafe()}' via {nameof(SafeServiceLocator)}.{nameof(SafeServiceLocator.BootstrapConfiguration)} "
+ + $"before resolving an instance of the type.");
+ }
+ }
+}
diff --git a/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfigurationExtensions.cs b/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfigurationExtensions.cs
new file mode 100644
index 0000000000..2c6e63b595
--- /dev/null
+++ b/Remotion/Core/Core/ServiceLocation/BootstrapServiceConfigurationExtensions.cs
@@ -0,0 +1,87 @@
+// This file is part of the re-motion Core Framework (www.re-motion.org)
+// Copyright (c) rubicon IT GmbH, www.rubicon.eu
+//
+// The re-motion Core Framework is free software; you can redistribute it
+// and/or modify it under the terms of the GNU Lesser General Public License
+// as published by the Free Software Foundation; either version 2.1 of the
+// License, or (at your option) any later version.
+//
+// re-motion is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with re-motion; if not, see http://www.gnu.org/licenses.
+//
+using System;
+using Remotion.Configuration.TypeDiscovery;
+using Remotion.Reflection.TypeDiscovery.AssemblyFinding;
+using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.Utilities;
+
+namespace Remotion.ServiceLocation
+{
+ ///
+ /// Extension methods for .
+ ///
+ public static class BootstrapServiceConfigurationExtensions
+ {
+ ///
+ /// Registers an entry with the given instances and a ..
+ ///
+ /// The for which the registration is performed.
+ /// The service type. This is a type for which instances are requested from a service locator.
+ /// The concrete implementation of the service type.
+ public static void Register (this IBootstrapServiceConfiguration bootstrapServiceConfiguration, Type serviceType, Type implementationType)
+ {
+ ArgumentUtility.CheckNotNull("bootstrapServiceConfiguration", bootstrapServiceConfiguration);
+ ArgumentUtility.CheckNotNull("serviceType", serviceType);
+ ArgumentUtility.CheckNotNull("implementationType", implementationType);
+ ArgumentUtility.CheckNotNullAndTypeIsAssignableFrom("implementationType", implementationType, serviceType);
+
+ bootstrapServiceConfiguration.Register(
+ new ServiceConfigurationEntry(
+ serviceType,
+ new ServiceImplementationInfo(
+ implementationType,
+ LifetimeKind.Singleton,
+ RegistrationType.Single)));
+ }
+
+ ///
+ /// Registers an entry with the given instances and a ..
+ ///
+ /// The service type to register the factories for.
+ /// The for which the registration is performed.
+ /// The instance to return when resolving for the .
+ public static void Register (this IBootstrapServiceConfiguration bootstrapServiceConfiguration, TService instance)
+ where TService : class
+ {
+ ArgumentUtility.CheckNotNull("bootstrapServiceConfiguration", bootstrapServiceConfiguration);
+ ArgumentUtility.CheckNotNull("instance", instance);
+
+ bootstrapServiceConfiguration.Register(
+ new ServiceConfigurationEntry(
+ typeof(TService),
+ ServiceImplementationInfo.CreateSingle(() => instance, LifetimeKind.Singleton)));
+ }
+
+ ///
+ /// The given root assemblies are employed for type discovery.
+ ///
+ ///
+ public static void RegisterSpecificRootAssemblies (this IBootstrapServiceConfiguration bootstrapServiceConfiguration)
+ {
+ ArgumentUtility.CheckNotNull("bootstrapServiceConfiguration", bootstrapServiceConfiguration);
+
+ var assemblyLoader = new FilteringAssemblyLoader(new LoadAllAssemblyLoaderFilter());
+ var specificRootAssemblies = TypeDiscoveryConfiguration.Current.SpecificRootAssemblies;
+ var namedFinder = specificRootAssemblies.ByName.CreateRootAssemblyFinder(assemblyLoader);
+ var filePatternFinder = specificRootAssemblies.ByFile.CreateRootAssemblyFinder(assemblyLoader);
+ var rootAssemblyFinder = new CompositeRootAssemblyFinder(new IRootAssemblyFinder[] { namedFinder, filePatternFinder });
+
+ bootstrapServiceConfiguration.Register(rootAssemblyFinder);
+ }
+ }
+}
diff --git a/Remotion/Core/Core/ServiceLocation/DefaultServiceConfigurationDiscoveryService.cs b/Remotion/Core/Core/ServiceLocation/DefaultServiceConfigurationDiscoveryService.cs
index eb3f8fb1a1..a739d9808a 100644
--- a/Remotion/Core/Core/ServiceLocation/DefaultServiceConfigurationDiscoveryService.cs
+++ b/Remotion/Core/Core/ServiceLocation/DefaultServiceConfigurationDiscoveryService.cs
@@ -50,9 +50,10 @@ public class DefaultServiceConfigurationDiscoveryService : IServiceConfiguration
private readonly bool _excludeGlobalTypesForDefaultConfiguration = !AssemblyTypeCache.IsGacAssembly(typeof(ImplementationForAttribute).Assembly);
+ [Obsolete("Use the constructor instead, and pass ContextAwareTypeUtility.GetTypeDiscoveryService() as parameter. (Version 6.0.0)", true)]
public static DefaultServiceConfigurationDiscoveryService Create ()
{
- return new DefaultServiceConfigurationDiscoveryService(ContextAwareTypeUtility.GetTypeDiscoveryService());
+ throw new NotSupportedException("Use the constructor instead, and pass ContextAwareTypeUtility.GetTypeDiscoveryService() as parameter. (Version 6.0.0)");
}
public DefaultServiceConfigurationDiscoveryService (ITypeDiscoveryService typeDiscoveryService)
diff --git a/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.Registration.cs b/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.Registration.cs
index 611cd6b3ba..c98bc1a1da 100644
--- a/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.Registration.cs
+++ b/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.Registration.cs
@@ -85,7 +85,7 @@ private Registration GetOrCreateRegistrationWithActivationException (Type servic
private Registration CreateRegistrationFromType (Type serviceType)
{
- var serviceConfigurationEntry = _serviceConfigurationDiscoveryService.GetDefaultConfiguration(serviceType);
+ var serviceConfigurationEntry = ServiceConfigurationDiscoveryService.GetDefaultConfiguration(serviceType);
return CreateRegistration(serviceConfigurationEntry);
}
diff --git a/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.cs b/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.cs
index cf407bb430..000168c34a 100644
--- a/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.cs
+++ b/Remotion/Core/Core/ServiceLocation/DefaultServiceLocator.cs
@@ -16,8 +16,9 @@
//
using System;
using System.Collections.Generic;
+using System.ComponentModel.Design;
using System.Linq;
-using Remotion.Logging;
+using Remotion.Reflection;
using Remotion.Utilities;
namespace Remotion.ServiceLocation
@@ -61,23 +62,34 @@ namespace Remotion.ServiceLocation
///
public sealed partial class DefaultServiceLocator : IServiceLocator
{
- private readonly IServiceConfigurationDiscoveryService _serviceConfigurationDiscoveryService;
+ [Obsolete("Use DefaultServiceLocator.CreateWithBootstrappedServices() instead. (Version 6.0.0)")]
+ public static DefaultServiceLocator Create () => CreateWithBootstrappedServices();
- public static DefaultServiceLocator Create ()
+ public static DefaultServiceLocator CreateWithBootstrappedServices ()
{
- return new DefaultServiceLocator(DefaultServiceConfigurationDiscoveryService.Create());
+ var bootstrapServiceLocatorEntries = SafeServiceLocator.BootstrapConfiguration.GetRegistrations();
+
+ var provider = new DefaultServiceLocatorProvider(new BootstrapServiceConfigurationDiscoveryService());
+ var bootstrapServiceLocator = provider.GetServiceLocator(bootstrapServiceLocatorEntries);
+ var typeDiscoveryService = bootstrapServiceLocator.GetInstance();
+
+ var defaultServiceLocator = new DefaultServiceLocator(new DefaultServiceConfigurationDiscoveryService(typeDiscoveryService));
+ foreach (var serviceConfigurationEntry in bootstrapServiceLocatorEntries)
+ defaultServiceLocator.Register(serviceConfigurationEntry);
+
+ return defaultServiceLocator;
}
+ public IServiceConfigurationDiscoveryService ServiceConfigurationDiscoveryService { get; }
+
public DefaultServiceLocator (IServiceConfigurationDiscoveryService serviceConfigurationDiscoveryService)
{
ArgumentUtility.CheckNotNull("serviceConfigurationDiscoveryService", serviceConfigurationDiscoveryService);
- _serviceConfigurationDiscoveryService = serviceConfigurationDiscoveryService;
+ ServiceConfigurationDiscoveryService = serviceConfigurationDiscoveryService;
// Optimized for memory allocations
_createRegistrationFromTypeFunc = CreateRegistrationFromType;
-
- Register(new ServiceConfigurationEntry(typeof(ILogManager), new ServiceImplementationInfo(typeof(Log4NetLogManager), LifetimeKind.Singleton)));
}
///
@@ -203,7 +215,10 @@ public IEnumerable GetAllInstances ()
if (registration.CompoundFactory != null)
return InvokeInstanceFactoryWithActivationException(registration.CompoundFactory, serviceType);
- if (registration.SingleFactory == null && registration.MultipleFactories.Any())
+ if (registration.SingleFactory != null)
+ return InvokeInstanceFactoryWithActivationException(registration.SingleFactory, serviceType);
+
+ if (registration.SingleFactory == null && registration.MultipleFactories.Count > 0)
{
throw new ActivationException(
string.Format(
@@ -211,9 +226,6 @@ public IEnumerable GetAllInstances ()
serviceType));
}
- if (registration.SingleFactory != null)
- return InvokeInstanceFactoryWithActivationException(registration.SingleFactory, serviceType);
-
return null;
}
diff --git a/Remotion/Core/Core/ServiceLocation/DefaultServiceLocatorProvider.cs b/Remotion/Core/Core/ServiceLocation/DefaultServiceLocatorProvider.cs
index e28f7c2fb8..2f8447681e 100644
--- a/Remotion/Core/Core/ServiceLocation/DefaultServiceLocatorProvider.cs
+++ b/Remotion/Core/Core/ServiceLocation/DefaultServiceLocatorProvider.cs
@@ -15,7 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
-using System.Collections.ObjectModel;
+using System.Collections.Generic;
using Remotion.Utilities;
namespace Remotion.ServiceLocation
@@ -23,17 +23,25 @@ namespace Remotion.ServiceLocation
///
/// Implements by providing instances of .
///
+ ///
public class DefaultServiceLocatorProvider : IServiceLocatorProvider
{
- public DefaultServiceLocatorProvider ()
+ public const int Position = 0;
+
+ public IServiceConfigurationDiscoveryService ServiceConfigurationDiscoveryService { get; }
+
+ public DefaultServiceLocatorProvider (IServiceConfigurationDiscoveryService serviceConfigurationDiscoveryService)
{
+ ArgumentUtility.CheckNotNull("serviceConfigurationDiscoveryService", serviceConfigurationDiscoveryService);
+
+ ServiceConfigurationDiscoveryService = serviceConfigurationDiscoveryService;
}
- public IServiceLocator GetServiceLocator (ReadOnlyCollection serviceConfigurationEntries)
+ public IServiceLocator GetServiceLocator (IReadOnlyCollection serviceConfigurationEntries)
{
ArgumentUtility.CheckNotNull("serviceConfigurationEntries", serviceConfigurationEntries);
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = new DefaultServiceLocator(ServiceConfigurationDiscoveryService);
foreach (var serviceConfigurationEntry in serviceConfigurationEntries)
defaultServiceLocator.Register(serviceConfigurationEntry);
diff --git a/Remotion/Core/Core/ServiceLocation/IBootstrapServiceConfiguration.cs b/Remotion/Core/Core/ServiceLocation/IBootstrapServiceConfiguration.cs
index 18c1338aa5..72288d85a4 100644
--- a/Remotion/Core/Core/ServiceLocation/IBootstrapServiceConfiguration.cs
+++ b/Remotion/Core/Core/ServiceLocation/IBootstrapServiceConfiguration.cs
@@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.Collections.Generic;
namespace Remotion.ServiceLocation
{
@@ -27,25 +28,12 @@ public interface IBootstrapServiceConfiguration
///
/// Returns the instances registered so far.
///
- ServiceConfigurationEntry[] Registrations { get; }
+ IReadOnlyCollection GetRegistrations ();
///
/// Registers the given with this .
///
/// The to be registered.
void Register (ServiceConfigurationEntry entry);
-
- ///
- /// Registers an entry with the given instances and .
- ///
- /// The service type. This is a type for which instances are requested from a service locator.
- /// The concrete implementation of the service type.
- /// The lifetime of the instances of .
- void Register (Type serviceType, Type implementationType, LifetimeKind lifetime);
-
- ///
- /// Removes all registered data.
- ///
- void Reset ();
}
}
diff --git a/Remotion/Core/Core/ServiceLocation/IServiceLocatorProvider.cs b/Remotion/Core/Core/ServiceLocation/IServiceLocatorProvider.cs
index ce2b1f6bf6..d967cd458d 100644
--- a/Remotion/Core/Core/ServiceLocation/IServiceLocatorProvider.cs
+++ b/Remotion/Core/Core/ServiceLocation/IServiceLocatorProvider.cs
@@ -15,7 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
-using System.Collections.ObjectModel;
+using System.Collections.Generic;
namespace Remotion.ServiceLocation
{
@@ -34,6 +34,6 @@ public interface IServiceLocatorProvider
/// for the boostrapping service locator.
///
/// An instance of .
- IServiceLocator GetServiceLocator (ReadOnlyCollection bootstrapConfiguration);
+ IServiceLocator GetServiceLocator (IReadOnlyCollection bootstrapConfiguration);
}
}
diff --git a/Remotion/Core/Core/ServiceLocation/SafeServiceLocator.cs b/Remotion/Core/Core/ServiceLocation/SafeServiceLocator.cs
index b0c5f75a42..420552f4b4 100644
--- a/Remotion/Core/Core/ServiceLocation/SafeServiceLocator.cs
+++ b/Remotion/Core/Core/ServiceLocation/SafeServiceLocator.cs
@@ -51,13 +51,14 @@ namespace Remotion.ServiceLocation
///
public static class SafeServiceLocator
{
- private static readonly BootstrapServiceConfiguration s_bootstrapServiceConfiguration = new BootstrapServiceConfiguration();
+ /// Workaround to allow reflection to reset the fields since setting a static readonly field is not supported in .NET 3.0 and later.
+ private class Fields
+ {
+ public readonly BootstrapServiceConfiguration BootstrapConfiguration = new();
+ public readonly DoubleCheckedLockingContainer DefaultServiceLocator = new(GetDefaultServiceLocator);
+ }
- // This is a DoubleCheckedLockingContainer rather than a static field (maybe wrapped in a nested class to improve laziness) because we want
- // any exceptions thrown by GetDefaultServiceLocator to bubble up to the caller normally. (Exceptions during static field initialization get
- // wrapped in a TypeInitializationException.)
- private static readonly DoubleCheckedLockingContainer s_defaultServiceLocator =
- new DoubleCheckedLockingContainer(GetDefaultServiceLocator);
+ private static readonly Fields s_fields = new();
///
/// Gets the currently configured .
@@ -75,10 +76,10 @@ public static IServiceLocator Current
get
{
if (ServiceLocator.IsLocationProviderSet)
- return ServiceLocator.Current ?? s_defaultServiceLocator.Value;
+ return ServiceLocator.Current ?? s_fields.DefaultServiceLocator.Value;
- ServiceLocator.SetLocatorProvider(() => s_defaultServiceLocator.Value);
- return s_defaultServiceLocator.Value;
+ ServiceLocator.SetLocatorProvider(() => s_fields.DefaultServiceLocator.Value);
+ return s_fields.DefaultServiceLocator.Value;
}
}
@@ -100,17 +101,21 @@ public static IServiceLocator Current
///
public static IBootstrapServiceConfiguration BootstrapConfiguration
{
- get { return s_bootstrapServiceConfiguration; }
+ get { return s_fields.BootstrapConfiguration; }
}
private static IServiceLocator GetDefaultServiceLocator ()
{
+ var bootstrapServiceLocatorEntries = s_fields.BootstrapConfiguration.GetRegistrations();
+
// Temporarily set the bootstrapper to allow for reentrancy to SafeServiceLocator.Current.
// Since we're called from s_defaultServiceLocator.Value's getter, we can be sure that our return value will overwrite the bootstrapper.
- s_defaultServiceLocator.Value = s_bootstrapServiceConfiguration.BootstrapServiceLocator;
+ var bootstrapServiceLocatorProvider = new DefaultServiceLocatorProvider(new BootstrapServiceConfigurationDiscoveryService());
+ var bootstrapServiceLocator = bootstrapServiceLocatorProvider.GetServiceLocator(bootstrapServiceLocatorEntries);
+ s_fields.DefaultServiceLocator.Value = bootstrapServiceLocator;
- var serviceLocatorProvider = ServiceLocationConfiguration.Current.CreateServiceLocatorProvider();
- return serviceLocatorProvider.GetServiceLocator(Array.AsReadOnly(s_bootstrapServiceConfiguration.Registrations));
+ var serviceLocatorProvider = bootstrapServiceLocator.GetInstance();
+ return serviceLocatorProvider.GetServiceLocator(bootstrapServiceLocatorEntries);
}
}
}
diff --git a/Remotion/Core/Core/Utilities/TypeUtility.cs b/Remotion/Core/Core/Utilities/TypeUtility.cs
index 16323202a0..a1c32f68ee 100644
--- a/Remotion/Core/Core/Utilities/TypeUtility.cs
+++ b/Remotion/Core/Core/Utilities/TypeUtility.cs
@@ -20,6 +20,7 @@
using System.Diagnostics.CodeAnalysis;
using JetBrains.Annotations;
using Remotion.Reflection;
+using Remotion.ServiceLocation;
namespace Remotion.Utilities
{
@@ -132,7 +133,7 @@ public static string GetAbbreviatedTypeName ([JetBrains.Annotations.NotNull]Type
private static ITypeResolutionService TypeResolutionService
{
- get { return ContextAwareTypeUtility.GetTypeResolutionService(); }
+ get { return SafeServiceLocator.Current.GetInstance(); }
}
}
}
diff --git a/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ExtensibleEnumDefinitionCacheTest.cs b/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ExtensibleEnumDefinitionCacheTest.cs
index d8b56978f1..b493d5bebe 100644
--- a/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ExtensibleEnumDefinitionCacheTest.cs
+++ b/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ExtensibleEnumDefinitionCacheTest.cs
@@ -15,12 +15,12 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.ComponentModel.Design;
using NUnit.Framework;
using Remotion.Development.NUnit.UnitTesting;
using Remotion.Development.UnitTesting;
using Remotion.ExtensibleEnums.Infrastructure;
using Remotion.ExtensibleEnums.UnitTests.TestDomain;
-using Remotion.Reflection;
using Remotion.ServiceLocation;
namespace Remotion.ExtensibleEnums.UnitTests.Infrastructure
@@ -30,12 +30,15 @@ public class ExtensibleEnumDefinitionCacheTest
{
private ExtensibleEnumDefinitionCache _cache;
private DefaultServiceLocator _serviceLocator;
+ private ITypeDiscoveryService _typeDiscoveryService;
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
- _cache = new ExtensibleEnumDefinitionCache(new ExtensibleEnumValueDiscoveryService());
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
+ _typeDiscoveryService = _serviceLocator.GetInstance();
+
+ _cache = new ExtensibleEnumDefinitionCache(new ExtensibleEnumValueDiscoveryService(_typeDiscoveryService));
}
[Test]
@@ -44,7 +47,7 @@ public void Initialization ()
Assert.That(_cache.ValueDiscoveryService, Is.InstanceOf(typeof(ExtensibleEnumValueDiscoveryService)));
Assert.That(
((ExtensibleEnumValueDiscoveryService)_cache.ValueDiscoveryService).TypeDiscoveryService,
- Is.SameAs(ContextAwareTypeUtility.GetTypeDiscoveryService()));
+ Is.SameAs(_typeDiscoveryService));
}
[Test]
diff --git a/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/IExtensibleEnumValueDiscoveryServiceTest.cs b/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/IExtensibleEnumValueDiscoveryServiceTest.cs
index c24fc645bd..f8ad35b4be 100644
--- a/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/IExtensibleEnumValueDiscoveryServiceTest.cs
+++ b/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/IExtensibleEnumValueDiscoveryServiceTest.cs
@@ -29,7 +29,7 @@ public class IExtensibleEnumValueDiscoveryServiceTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ITypeConverterFactoryTest.cs b/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ITypeConverterFactoryTest.cs
index c8fd0b640f..e6e2a0a1d6 100644
--- a/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ITypeConverterFactoryTest.cs
+++ b/Remotion/Core/ExtensibleEnums.UnitTests/Infrastructure/ITypeConverterFactoryTest.cs
@@ -31,7 +31,7 @@ public class ITypeConverterFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/ExtensibleEnums/Infrastructure/ExtensibleEnumValueDiscoveryService.cs b/Remotion/Core/ExtensibleEnums/Infrastructure/ExtensibleEnumValueDiscoveryService.cs
index 77b2459dbf..2ac62a0d80 100644
--- a/Remotion/Core/ExtensibleEnums/Infrastructure/ExtensibleEnumValueDiscoveryService.cs
+++ b/Remotion/Core/ExtensibleEnums/Infrastructure/ExtensibleEnumValueDiscoveryService.cs
@@ -38,12 +38,7 @@ public class ExtensibleEnumValueDiscoveryService : IExtensibleEnumValueDiscovery
private readonly bool _excludeGlobalTypes = !AssemblyTypeCache.IsGacAssembly(typeof(ExtensibleEnum<>).Assembly);
- public ExtensibleEnumValueDiscoveryService ()
- {
- _typeDiscoveryService = ContextAwareTypeUtility.GetTypeDiscoveryService();
- }
-
- protected ExtensibleEnumValueDiscoveryService (ITypeDiscoveryService typeDiscoveryService)
+ public ExtensibleEnumValueDiscoveryService (ITypeDiscoveryService typeDiscoveryService)
{
ArgumentUtility.CheckNotNull("typeDiscoveryService", typeDiscoveryService);
diff --git a/Remotion/Core/Extensions.UnitTests/Reflection/IDelegateFactoryTest.cs b/Remotion/Core/Extensions.UnitTests/Reflection/IDelegateFactoryTest.cs
index a9e6c0e96b..c88df5d0a3 100644
--- a/Remotion/Core/Extensions.UnitTests/Reflection/IDelegateFactoryTest.cs
+++ b/Remotion/Core/Extensions.UnitTests/Reflection/IDelegateFactoryTest.cs
@@ -29,7 +29,7 @@ public class IDelegateFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/Reflection.CodeGeneration.TypePipe.PerformanceTests/CachePerformanceTest.cs b/Remotion/Core/Reflection.CodeGeneration.TypePipe.PerformanceTests/CachePerformanceTest.cs
index 57014f6b92..ffa24e354a 100644
--- a/Remotion/Core/Reflection.CodeGeneration.TypePipe.PerformanceTests/CachePerformanceTest.cs
+++ b/Remotion/Core/Reflection.CodeGeneration.TypePipe.PerformanceTests/CachePerformanceTest.cs
@@ -41,7 +41,7 @@ public class CachePerformanceTest
[SetUp]
public void SetUp ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer("Integrated Security=SSPI;Initial Catalog=TestDatabase;Data Source=localhost");
serviceLocator.RegisterSingle(() => storageSettingsFactory);
diff --git a/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineFactoryTest.cs b/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineFactoryTest.cs
index 8bfb3ca8b4..22bfd893f6 100644
--- a/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineFactoryTest.cs
+++ b/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineFactoryTest.cs
@@ -29,7 +29,7 @@ public class IPipelineFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineRegistryTest.cs b/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineRegistryTest.cs
index 5b4eaa52a0..ed2ca2c589 100644
--- a/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineRegistryTest.cs
+++ b/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineRegistryTest.cs
@@ -29,7 +29,7 @@ public class IPipelineRegistryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineSettingsProviderTest.cs b/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineSettingsProviderTest.cs
index f9087ca7f5..8fada081fa 100644
--- a/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineSettingsProviderTest.cs
+++ b/Remotion/Core/Reflection.CodeGeneration.TypePipe.UnitTests/IPipelineSettingsProviderTest.cs
@@ -28,7 +28,7 @@ public class IPipelineSettingsProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/Reflection.UnitTests/IMemberInfoNameResolverTest.cs b/Remotion/Core/Reflection.UnitTests/IMemberInfoNameResolverTest.cs
index 304fbaa1de..709ffc6523 100644
--- a/Remotion/Core/Reflection.UnitTests/IMemberInfoNameResolverTest.cs
+++ b/Remotion/Core/Reflection.UnitTests/IMemberInfoNameResolverTest.cs
@@ -28,7 +28,7 @@ public class IMemberInfoNameResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/ServiceLocation.PerformanceTestConsole/Program.cs b/Remotion/Core/ServiceLocation.PerformanceTestConsole/Program.cs
index 66f7b3811f..6f29a78ce5 100644
--- a/Remotion/Core/ServiceLocation.PerformanceTestConsole/Program.cs
+++ b/Remotion/Core/ServiceLocation.PerformanceTestConsole/Program.cs
@@ -15,13 +15,12 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.ComponentModel.Design;
using System.Linq;
using log4net.Config;
-using Remotion.Reflection;
-using Remotion.ServiceLocation;
using Remotion.Utilities;
-namespace Core.ServiceLocation.PerformanceTestConsole
+namespace Remotion.ServiceLocation.PerformanceTestConsole
{
internal static class Program
{
@@ -29,7 +28,12 @@ private static void Main (string[] args)
{
Console.WriteLine("{0} - Application started", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss,fff"));
XmlConfigurator.Configure();
- var typeDiscoveryService = ContextAwareTypeUtility.GetTypeDiscoveryService();
+
+ var bootstrapServiceLocatorEntries = SafeServiceLocator.BootstrapConfiguration.GetRegistrations();
+ var provider = new DefaultServiceLocatorProvider(new BootstrapServiceConfigurationDiscoveryService());
+ var bootstrapServiceLocator = provider.GetServiceLocator(bootstrapServiceLocatorEntries);
+ var typeDiscoveryService = bootstrapServiceLocator.GetInstance();
+
var domainObjectType = Type.GetType("Remotion.Data.DomainObjects.DomainObject, Remotion.Data.DomainObjects", true, false);
typeDiscoveryService.GetTypes(domainObjectType, false);
typeDiscoveryService.GetTypes(domainObjectType, false);
diff --git a/Remotion/Core/UnitTests/Configuration/ServiceLocation/ServiceLocationConfigurationTest.cs b/Remotion/Core/UnitTests/Configuration/ServiceLocation/ServiceLocationConfigurationTest.cs
deleted file mode 100644
index ca9840e2a6..0000000000
--- a/Remotion/Core/UnitTests/Configuration/ServiceLocation/ServiceLocationConfigurationTest.cs
+++ /dev/null
@@ -1,68 +0,0 @@
-// This file is part of the re-motion Core Framework (www.re-motion.org)
-// Copyright (c) rubicon IT GmbH, www.rubicon.eu
-//
-// The re-motion Core Framework is free software; you can redistribute it
-// and/or modify it under the terms of the GNU Lesser General Public License
-// as published by the Free Software Foundation; either version 2.1 of the
-// License, or (at your option) any later version.
-//
-// re-motion is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with re-motion; if not, see http://www.gnu.org/licenses.
-//
-using System;
-using NUnit.Framework;
-using Remotion.Configuration.ServiceLocation;
-using Remotion.Development.UnitTesting.Configuration;
-using Remotion.ServiceLocation;
-
-namespace Remotion.UnitTests.Configuration.ServiceLocation
-{
- [TestFixture]
- public class ServiceLocationConfigurationTest
- {
- private const string _xmlFragmentDefault = @"";
- private const string _xmlFragmentWithServiceLocatorProvider = @"
-
- ";
-
- [Test]
- public void Deserialization_Default ()
- {
- var section = Deserialize(_xmlFragmentDefault);
- Assert.That(section.ServiceLocatorProvider.Type, Is.SameAs(typeof(DefaultServiceLocatorProvider)));
- }
-
- [Test]
- public void Deserialization_SpecificProvider ()
- {
- var section = Deserialize(_xmlFragmentWithServiceLocatorProvider);
- Assert.That(section.ServiceLocatorProvider.Type, Is.SameAs(typeof(FakeServiceLocatorProvider)));
- }
-
- [Test]
- public void CreateServiceLocatorProvider_Default ()
- {
- var section = Deserialize(_xmlFragmentDefault);
- Assert.That(section.CreateServiceLocatorProvider(), Is.TypeOf());
- }
-
- [Test]
- public void CreateServiceLocatorProvider_SpecificProvider ()
- {
- var section = Deserialize(_xmlFragmentWithServiceLocatorProvider);
- Assert.That(section.CreateServiceLocatorProvider(), Is.TypeOf());
- }
-
- private ServiceLocationConfiguration Deserialize (string xmlFragment)
- {
- var section = new ServiceLocationConfiguration();
- ConfigurationHelper.DeserializeSection(section, xmlFragment);
- return section;
- }
- }
-}
diff --git a/Remotion/Core/UnitTests/Configuration/TypeDiscovery/IntegrationTests/SpecificRootAssemblies/SpecificRootAssembliesAreNotSubjectToApplicationFilterTest.cs b/Remotion/Core/UnitTests/Configuration/TypeDiscovery/IntegrationTests/SpecificRootAssemblies/SpecificRootAssembliesAreNotSubjectToApplicationFilterTest.cs
deleted file mode 100644
index 005aba3143..0000000000
--- a/Remotion/Core/UnitTests/Configuration/TypeDiscovery/IntegrationTests/SpecificRootAssemblies/SpecificRootAssembliesAreNotSubjectToApplicationFilterTest.cs
+++ /dev/null
@@ -1,87 +0,0 @@
-// This file is part of the re-motion Core Framework (www.re-motion.org)
-// Copyright (c) rubicon IT GmbH, www.rubicon.eu
-//
-// The re-motion Core Framework is free software; you can redistribute it
-// and/or modify it under the terms of the GNU Lesser General Public License
-// as published by the Free Software Foundation; either version 2.1 of the
-// License, or (at your option) any later version.
-//
-// re-motion is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public License
-// along with re-motion; if not, see http://www.gnu.org/licenses.
-//
-using System;
-using NUnit.Framework;
-using Remotion.Configuration.TypeDiscovery;
-using Remotion.Development.UnitTesting.Configuration;
-using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
-
-namespace Remotion.UnitTests.Configuration.TypeDiscovery.IntegrationTests.SpecificRootAssemblies
-{
- [TestFixture]
- public class SpecificRootAssembliesAreNotSubjectToApplicationFilterTest
- {
- private const string c_xmlFragmentWithMscorlibByName = @"
-
-
-
-
-
- ";
-
- private static readonly string s_xmlFragmentWithAssemblyByFilePattern =
- @"
-
-
-
-
-
- ";
-
- [Test]
- public void Deserialization_SpecificRootAssemblies_ByName ()
- {
- var section = Deserialize(c_xmlFragmentWithMscorlibByName);
-
- var service = section.CreateTypeDiscoveryService();
-
- var types = service.GetTypes(null, false);
- Assert.That(types, Has.Member(typeof(Moq.Capture)));
- }
-
- [Test]
- public void Deserialization_SpecificRootAssemblies_ByFilePattern ()
- {
- ApplicationAssemblyLoaderFilter.Instance.AddIgnoredAssembly(GetTestAssemblyName());
- try
- {
- var section = Deserialize(s_xmlFragmentWithAssemblyByFilePattern);
-
- var service = section.CreateTypeDiscoveryService();
-
- var types = service.GetTypes(null, false);
- Assert.That(types, Has.Member(typeof(SpecificRootAssembliesAreNotSubjectToApplicationFilterTest)));
- }
- finally
- {
- ApplicationAssemblyLoaderFilter.Instance.Reset();
- }
- }
-
- private TypeDiscoveryConfiguration Deserialize (string xmlFragment)
- {
- var section = new TypeDiscoveryConfiguration();
- ConfigurationHelper.DeserializeSection(section, xmlFragment);
- return section;
- }
-
- private static string GetTestAssemblyName ()
- {
- return typeof(SpecificRootAssembliesAreNotSubjectToApplicationFilterTest).Assembly.GetName().Name;
- }
- }
-}
diff --git a/Remotion/Core/UnitTests/Configuration/TypeDiscovery/TypeDiscoveryConfigurationTest.cs b/Remotion/Core/UnitTests/Configuration/TypeDiscovery/TypeDiscoveryConfigurationTest.cs
index 8dd281644b..a0518b49df 100644
--- a/Remotion/Core/UnitTests/Configuration/TypeDiscovery/TypeDiscoveryConfigurationTest.cs
+++ b/Remotion/Core/UnitTests/Configuration/TypeDiscovery/TypeDiscoveryConfigurationTest.cs
@@ -30,167 +30,33 @@ namespace Remotion.UnitTests.Configuration.TypeDiscovery
public class TypeDiscoveryConfigurationTest
{
private const string _xmlFragmentDefault = @"";
- private const string _xmlFragmentWithAutoRootAssemblyFinder = @"
- ";
- private const string _xmlFragmentWithCustomRootAssemblyFinder = @"
-
- ";
- private const string _xmlFragmentWithMissingCustomRootAssemblyFinder = @"";
- private const string _xmlFragmentWithSpecificRootAssemblies = @"
+ private const string _xmlFragmentWithSpecificRootAssemblies = @"
";
- private const string _xmlFragmentWithSpecificEmptyRootAssemblies = @"
+ private const string _xmlFragmentWithSpecificEmptyRootAssemblies = @"
";
- private const string _xmlFragmentWithCustomTypeDiscoveryService = @"
-
- ";
- private const string _xmlFragmentWithMissingCustomTypeDiscoveryService = @"";
[Test]
public void Deserialization_Default ()
{
var section = Deserialize(_xmlFragmentDefault);
- Assert.That(section.Mode, Is.EqualTo(TypeDiscoveryMode.Automatic));
- }
-
- [Test]
- public void Deserialization_Auto ()
- {
- var section = Deserialize(_xmlFragmentWithAutoRootAssemblyFinder);
- Assert.That(section.Mode, Is.EqualTo(TypeDiscoveryMode.Automatic));
- }
-
- [Test]
- public void Deserialization_CustomSpecificRootAssemblyFinder ()
- {
- var section = Deserialize(_xmlFragmentWithCustomRootAssemblyFinder);
- Assert.That(section.Mode, Is.EqualTo(TypeDiscoveryMode.CustomRootAssemblyFinder));
- Assert.That(section.CustomRootAssemblyFinder.Type, Is.SameAs(typeof(FakeRootAssemblyFinder)));
+ Assert.That(section.SpecificRootAssemblies, Is.Not.Null);
+ Assert.That(section.SpecificRootAssemblies.ByName, Is.Empty);
+ Assert.That(section.SpecificRootAssemblies.ByFile, Is.Empty);
}
[Test]
public void Deserialization_SpecificRootAssemblies ()
{
var section = Deserialize(_xmlFragmentWithSpecificRootAssemblies);
- Assert.That(section.Mode, Is.EqualTo(TypeDiscoveryMode.SpecificRootAssemblies));
Assert.That(section.SpecificRootAssemblies.ByName.Single().Name, Is.EqualTo("mscorlib"));
}
- [Test]
- public void Deserialization_SpecificEmptyRootAssemblies ()
- {
- var section = Deserialize(_xmlFragmentWithSpecificEmptyRootAssemblies);
- Assert.That(section.Mode, Is.EqualTo(TypeDiscoveryMode.SpecificRootAssemblies));
- Assert.That(section.SpecificRootAssemblies.ByName.Count, Is.EqualTo(0));
- Assert.That(section.SpecificRootAssemblies.ByFile.Count, Is.EqualTo(0));
- }
-
- [Test]
- public void Deserialization_CustomTypeDiscoveryService ()
- {
- var section = Deserialize(_xmlFragmentWithCustomTypeDiscoveryService);
- Assert.That(section.Mode, Is.EqualTo(TypeDiscoveryMode.CustomTypeDiscoveryService));
- Assert.That(section.CustomTypeDiscoveryService.Type, Is.EqualTo(typeof(FakeTypeDiscoveryService)));
- }
-
- [Test]
- public void CreateTypeDiscoveryService_Auto ()
- {
- var section = Deserialize(_xmlFragmentWithAutoRootAssemblyFinder);
-
- var service = section.CreateTypeDiscoveryService();
-
- Assert.That(service, Is.InstanceOf(typeof(AssemblyFinderTypeDiscoveryService)));
- Assert.That(((AssemblyFinderTypeDiscoveryService)service).AssemblyFinder, Is.TypeOf());
- var assemblyFinder = (AssemblyFinder)((CachingAssemblyFinderDecorator)((AssemblyFinderTypeDiscoveryService)service).AssemblyFinder).InnerFinder;
- Assert.That(assemblyFinder.RootAssemblyFinder, Is.InstanceOf(typeof(SearchPathRootAssemblyFinder)));
-
- var searchPathRootAssemblyFinder = (SearchPathRootAssemblyFinder)assemblyFinder.RootAssemblyFinder;
- Assert.That(searchPathRootAssemblyFinder.BaseDirectory, Is.EqualTo(AppContext.BaseDirectory));
- Assert.That(searchPathRootAssemblyFinder.AssemblyLoader, Is.TypeOf());
- Assert.That(((FilteringAssemblyLoader)searchPathRootAssemblyFinder.AssemblyLoader).Filter, Is.SameAs(ApplicationAssemblyLoaderFilter.Instance));
-
- Assert.That(assemblyFinder.AssemblyLoader, Is.TypeOf());
- Assert.That(((FilteringAssemblyLoader)assemblyFinder.AssemblyLoader).Filter, Is.SameAs(ApplicationAssemblyLoaderFilter.Instance));
- }
-
- [Test]
- public void CreateTypeDiscoveryService_CustomRootAssemblyFinder ()
- {
- var section = Deserialize(_xmlFragmentWithCustomRootAssemblyFinder);
-
- var service = section.CreateTypeDiscoveryService();
-
- Assert.That(service, Is.InstanceOf(typeof(AssemblyFinderTypeDiscoveryService)));
- Assert.That(((AssemblyFinderTypeDiscoveryService)service).AssemblyFinder, Is.TypeOf());
- var assemblyFinder = (AssemblyFinder)((CachingAssemblyFinderDecorator)((AssemblyFinderTypeDiscoveryService)service).AssemblyFinder).InnerFinder;
- Assert.That(assemblyFinder.RootAssemblyFinder, Is.InstanceOf(typeof(FakeRootAssemblyFinder)));
- }
-
- [Test]
- public void CreateTypeDiscoveryService_CustomRootAssemblyFinder_MissingType ()
- {
- var section = Deserialize(_xmlFragmentWithMissingCustomRootAssemblyFinder);
- Assert.That(
- () => section.CreateTypeDiscoveryService(),
- Throws.InstanceOf()
- .With.Message.Contains(
- "In CustomRootAssemblyFinder mode, a custom root assembly finder must be specified in the type discovery configuration."));
- }
-
- [Test]
- public void CreateTypeDiscoveryService_SpecificRootAssemblies ()
- {
- var section = Deserialize(_xmlFragmentWithSpecificRootAssemblies);
-
- var service = section.CreateTypeDiscoveryService();
-
- Assert.That(service, Is.InstanceOf(typeof(AssemblyFinderTypeDiscoveryService)));
- Assert.That(((AssemblyFinderTypeDiscoveryService)service).AssemblyFinder, Is.TypeOf());
- var assemblyFinder = (AssemblyFinder)((CachingAssemblyFinderDecorator)((AssemblyFinderTypeDiscoveryService)service).AssemblyFinder).InnerFinder;
- Assert.That(assemblyFinder.RootAssemblyFinder, Is.InstanceOf(typeof(CompositeRootAssemblyFinder)));
-
- var rootAssemblyFinder = (CompositeRootAssemblyFinder)assemblyFinder.RootAssemblyFinder;
- Assert.That(rootAssemblyFinder.InnerFinders.Count, Is.EqualTo(2));
- Assert.That(rootAssemblyFinder.InnerFinders[0], Is.InstanceOf(typeof(NamedRootAssemblyFinder)));
-
- var namedFinder = ((NamedRootAssemblyFinder)rootAssemblyFinder.InnerFinders[0]);
- Assert.That(namedFinder.Specifications.First().AssemblyName.ToString(), Is.EqualTo("mscorlib"));
- Assert.That(namedFinder.AssemblyLoader, Is.TypeOf());
- Assert.That(((FilteringAssemblyLoader)namedFinder.AssemblyLoader).Filter, Is.TypeOf());
-
- var filePatternFinder = ((FilePatternRootAssemblyFinder)rootAssemblyFinder.InnerFinders[1]);
- Assert.That(filePatternFinder.Specifications.ToArray(), Is.Empty);
- Assert.That(filePatternFinder.AssemblyLoader, Is.TypeOf());
- Assert.That(((FilteringAssemblyLoader)filePatternFinder.AssemblyLoader).Filter, Is.TypeOf());
- }
-
- [Test]
- public void CreateTypeDiscoveryService_CustomTypeDiscoveryService ()
- {
- var section = Deserialize(_xmlFragmentWithCustomTypeDiscoveryService);
-
- var service = section.CreateTypeDiscoveryService();
-
- Assert.That(service, Is.InstanceOf(typeof(FakeTypeDiscoveryService)));
- }
-
- [Test]
- public void CreateTypeDiscoveryService_CustomTypeDiscoveryService_MissingType ()
- {
- var section = Deserialize(_xmlFragmentWithMissingCustomTypeDiscoveryService);
- Assert.That(
- () => section.CreateTypeDiscoveryService(),
- Throws.InstanceOf()
- .With.Message.Contains(
- "In CustomTypeDiscoveryService mode, a custom type discovery service must be specified in the type discovery configuration."));
- }
-
private TypeDiscoveryConfiguration Deserialize (string xmlFragment)
{
var section = new TypeDiscoveryConfiguration();
diff --git a/Remotion/Core/UnitTests/Context/ISafeContextStorageProviderTest.cs b/Remotion/Core/UnitTests/Context/ISafeContextStorageProviderTest.cs
index 3c403e1015..0f38b91293 100644
--- a/Remotion/Core/UnitTests/Context/ISafeContextStorageProviderTest.cs
+++ b/Remotion/Core/UnitTests/Context/ISafeContextStorageProviderTest.cs
@@ -28,7 +28,7 @@ public class ISafeContextStorageProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/UnitTests/Context/SafeContextTests/SafeContextTestBase.cs b/Remotion/Core/UnitTests/Context/SafeContextTests/SafeContextTestBase.cs
index f91ed1412c..c559910e75 100644
--- a/Remotion/Core/UnitTests/Context/SafeContextTests/SafeContextTestBase.cs
+++ b/Remotion/Core/UnitTests/Context/SafeContextTests/SafeContextTestBase.cs
@@ -46,7 +46,7 @@ public void TearDown ()
protected static IDisposable SetupImplicitSafeContextStorageProvider (ISafeContextStorageProvider safeContextStorageProvider)
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => safeContextStorageProvider);
return new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Core/UnitTests/Core.UnitTests.csproj b/Remotion/Core/UnitTests/Core.UnitTests.csproj
index c64afd0681..6f4619f48d 100644
--- a/Remotion/Core/UnitTests/Core.UnitTests.csproj
+++ b/Remotion/Core/UnitTests/Core.UnitTests.csproj
@@ -46,6 +46,9 @@
+
+
+
diff --git a/Remotion/Core/UnitTests/Logging/ILogManagerTest.cs b/Remotion/Core/UnitTests/Logging/ILogManagerTest.cs
index 03be44ce5e..baca892901 100644
--- a/Remotion/Core/UnitTests/Logging/ILogManagerTest.cs
+++ b/Remotion/Core/UnitTests/Logging/ILogManagerTest.cs
@@ -29,7 +29,7 @@ public class ILogManagerTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/UnitTests/Reflection/ContextAwareTypeUtilityTest.cs b/Remotion/Core/UnitTests/Reflection/ContextAwareTypeUtilityTest.cs
index 3664986c50..1c8d107e04 100644
--- a/Remotion/Core/UnitTests/Reflection/ContextAwareTypeUtilityTest.cs
+++ b/Remotion/Core/UnitTests/Reflection/ContextAwareTypeUtilityTest.cs
@@ -16,143 +16,29 @@
//
using System;
using System.ComponentModel.Design;
-using System.IO;
-using Moq;
using NUnit.Framework;
-using Remotion.Configuration.TypeDiscovery;
-using Remotion.Configuration.TypeResolution;
-using Remotion.Development.UnitTesting;
using Remotion.Reflection;
-using Remotion.Reflection.TypeResolution;
-using Remotion.UnitTests.Configuration.TypeDiscovery;
-using Remotion.Utilities;
-#if !NETFRAMEWORK
-using Remotion.Development.UnitTesting.IsolatedCodeRunner;
-#endif
+using Remotion.ServiceLocation;
namespace Remotion.UnitTests.Reflection
{
[TestFixture]
public class ContextAwareTypeUtilityTest
{
- private ITypeDiscoveryService _oldTypeDiscoveryService;
- private TypeDiscoveryConfiguration _oldTypeDiscoveryConfiguration;
- private ITypeResolutionService _oldTypeResolutionService;
- private TypeResolutionConfiguration _oldTypeResolutionConfiguration;
-
- [SetUp]
- public void SetUp ()
- {
- _oldTypeDiscoveryService = ContextAwareTypeUtility.GetTypeDiscoveryService();
- _oldTypeDiscoveryConfiguration = TypeDiscoveryConfiguration.Current;
- _oldTypeResolutionService = ContextAwareTypeUtility.GetTypeResolutionService();
- _oldTypeResolutionConfiguration = TypeResolutionConfiguration.Current;
-
- var fields = PrivateInvoke.GetNonPublicStaticField(typeof(ContextAwareTypeUtility), "s_fields");
- Assertion.IsNotNull(fields);
- PrivateInvoke.SetPublicField(
- fields,
- "DefaultTypeDiscoveryService",
- new Lazy(() => TypeDiscoveryConfiguration.Current.CreateTypeDiscoveryService()));
- PrivateInvoke.SetPublicField(
- fields,
- "DefaultTypeResolutionService",
- new Lazy(() => TypeResolutionConfiguration.Current.CreateTypeResolutionService()));
- TypeDiscoveryConfiguration.SetCurrent(new TypeDiscoveryConfiguration());
- TypeResolutionConfiguration.SetCurrent(new TypeResolutionConfiguration(new DefaultTypeResolutionService()));
- }
-
- [TearDown]
- public void TearDown ()
- {
- var fields = PrivateInvoke.GetNonPublicStaticField(typeof(ContextAwareTypeUtility), "s_fields");
- Assertion.IsNotNull(fields);
- PrivateInvoke.SetPublicField(
- fields,
- "DefaultTypeDiscoveryService",
- new Lazy(() => _oldTypeDiscoveryService));
- PrivateInvoke.SetPublicField(
- fields,
- "DefaultTypeResolutionService",
- new Lazy(() => _oldTypeResolutionService));
-
- TypeDiscoveryConfiguration.SetCurrent(_oldTypeDiscoveryConfiguration);
- TypeResolutionConfiguration.SetCurrent(_oldTypeResolutionConfiguration);
- }
-
[Test]
- public void GetTypeDiscoveryService_ComesFromConfiguration ()
+ [Obsolete]
+ public void GetTypeDiscoveryService_LoadsFromSafeServiceLocator ()
{
- TypeDiscoveryConfiguration.Current.Mode = TypeDiscoveryMode.CustomTypeDiscoveryService;
- TypeDiscoveryConfiguration.Current.CustomTypeDiscoveryService.Type = typeof(FakeTypeDiscoveryService);
-
- var defaultService = ContextAwareTypeUtility.GetTypeDiscoveryService();
- Assert.That(defaultService, Is.InstanceOf(typeof(FakeTypeDiscoveryService)));
- }
-
- [Test]
- public void GetTypeDiscoveryService_Cached ()
- {
- TypeDiscoveryConfiguration.Current.Mode = TypeDiscoveryMode.CustomTypeDiscoveryService;
- TypeDiscoveryConfiguration.Current.CustomTypeDiscoveryService.Type = typeof(FakeTypeDiscoveryService);
-
var defaultService = ContextAwareTypeUtility.GetTypeDiscoveryService();
- var defaultService2 = ContextAwareTypeUtility.GetTypeDiscoveryService();
-
- Assert.That(defaultService, Is.SameAs(defaultService2));
+ Assert.That(defaultService, Is.SameAs(SafeServiceLocator.Current.GetInstance()));
}
[Test]
- public void GetTypeResolutionService_ComesFromConfiguration ()
+ [Obsolete]
+ public void GetTypeResolutionService_LoadsFromSafeServiceLocator ()
{
- var typeResolutionServiceStub = new Mock();
- TypeResolutionConfiguration.SetCurrent(new TypeResolutionConfiguration(typeResolutionServiceStub.Object));
-
- var defaultService = ContextAwareTypeUtility.GetTypeResolutionService();
- Assert.That(defaultService, Is.SameAs(typeResolutionServiceStub.Object));
- }
-
- [Test]
- public void GetTypeResolutionService_Cached ()
- {
- TypeResolutionConfiguration.SetCurrent(new TypeResolutionConfiguration(new DefaultTypeResolutionService()));
var defaultService = ContextAwareTypeUtility.GetTypeResolutionService();
-
- TypeResolutionConfiguration.SetCurrent(new TypeResolutionConfiguration(new DefaultTypeResolutionService()));
- var defaultService2 = ContextAwareTypeUtility.GetTypeResolutionService();
-
- Assert.That(defaultService, Is.SameAs(defaultService2));
- }
-
- [Test]
- public void GetTypeDiscoveryService_WithCustomImplementationFromConfigFile_DoesNotThrowOnInitialization ()
- {
- var relativePath = @"Reflection\TestDomain\ContextAwareTypeUtilityTest\app.config";
- var fullPath = Path.Combine(TestContext.CurrentContext.TestDirectory, relativePath);
- Assert.That(File.Exists(fullPath));
-
- // We run this in a new appdomain/process to ensure that the config can be loaded
- // without any initialization problems causing recursive initialization (see RM-8064)
-#if NETFRAMEWORK
- var appDomainSetup = AppDomain.CurrentDomain.SetupInformation;
- appDomainSetup.ConfigurationFile = fullPath;
-
- var appDomainRunner = new AppDomainRunner(
- appDomainSetup,
- args => TestAction(Array.Empty()));
-
- Assert.That(() => appDomainRunner.Run(), Throws.Nothing);
-#else
- var isolatedCodeRunner = new IsolatedCodeRunner(TestAction);
- isolatedCodeRunner.ConfigFile = fullPath;
- Assert.That(() => isolatedCodeRunner.Run(), Throws.Nothing);
-#endif
-
- static void TestAction (string[] args)
- {
- var typeDiscoveryService = ContextAwareTypeUtility.GetTypeDiscoveryService();
- Assert.That(typeDiscoveryService, Is.TypeOf());
- }
+ Assert.That(defaultService, Is.SameAs(SafeServiceLocator.Current.GetInstance()));
}
}
}
diff --git a/Remotion/Core/UnitTests/Reflection/TestDomain/ContextAwareTypeUtilityTest/app.config b/Remotion/Core/UnitTests/Reflection/TestDomain/ContextAwareTypeUtilityTest/app.config
deleted file mode 100644
index 275837c852..0000000000
--- a/Remotion/Core/UnitTests/Reflection/TestDomain/ContextAwareTypeUtilityTest/app.config
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Remotion/Core/UnitTests/ServiceLocation/BootstrapServiceConfigurationExtensionsTest.cs b/Remotion/Core/UnitTests/ServiceLocation/BootstrapServiceConfigurationExtensionsTest.cs
new file mode 100644
index 0000000000..d745df2df6
--- /dev/null
+++ b/Remotion/Core/UnitTests/ServiceLocation/BootstrapServiceConfigurationExtensionsTest.cs
@@ -0,0 +1,86 @@
+// This file is part of the re-motion Core Framework (www.re-motion.org)
+// Copyright (c) rubicon IT GmbH, www.rubicon.eu
+//
+// The re-motion Core Framework is free software; you can redistribute it
+// and/or modify it under the terms of the GNU Lesser General Public License
+// as published by the Free Software Foundation; either version 2.1 of the
+// License, or (at your option) any later version.
+//
+// re-motion is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with re-motion; if not, see http://www.gnu.org/licenses.
+using System.ComponentModel.Design;
+using NUnit.Framework;
+using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.ServiceLocation;
+
+namespace Remotion.UnitTests.ServiceLocation;
+
+[TestFixture]
+public class BootstrapServiceConfigurationExtensionsTest
+{
+ [Test]
+ [Ignore("RM-5193")]
+ public void Deserialization_SpecificRootAssemblies_ByName ()
+ {
+ /*
+
+
+
+
+
+ */
+
+ IBootstrapServiceConfiguration bootstrapServiceConfiguration = new BootstrapServiceConfiguration();
+ BootstrapServiceConfigurationExtensions.RegisterSpecificRootAssemblies(bootstrapServiceConfiguration);
+
+ var de = new DefaultServiceLocatorProvider(new BootstrapServiceConfigurationDiscoveryService());
+ var serviceLocator = de.GetServiceLocator(bootstrapServiceConfiguration.GetRegistrations());
+ var typeDiscoveryServices = serviceLocator.GetInstance();
+
+ var types = typeDiscoveryServices.GetTypes(null, false);
+
+ Assert.That(types, Has.Member(typeof(Moq.Capture)));
+ }
+
+ [Test]
+ [Ignore("RM-5193")]
+ public void Deserialization_SpecificRootAssemblies_ByFilePattern ()
+ {
+ /*
+
+
+
+
+
+ */
+
+ ApplicationAssemblyLoaderFilter.Instance.AddIgnoredAssembly(GetTestAssemblyName());
+ try
+ {
+ IBootstrapServiceConfiguration bootstrapServiceConfiguration = new BootstrapServiceConfiguration();
+ BootstrapServiceConfigurationExtensions.RegisterSpecificRootAssemblies(bootstrapServiceConfiguration);
+
+ var de = new DefaultServiceLocatorProvider(new BootstrapServiceConfigurationDiscoveryService());
+ var serviceLocator = de.GetServiceLocator(bootstrapServiceConfiguration.GetRegistrations());
+ var typeDiscoveryServices = serviceLocator.GetInstance();
+
+ var types = typeDiscoveryServices.GetTypes(null, false);
+
+ Assert.That(types, Has.Member(typeof(BootstrapServiceConfigurationExtensionsTest)));
+ }
+ finally
+ {
+ ApplicationAssemblyLoaderFilter.Instance.Reset();
+ }
+ }
+
+ private static string GetTestAssemblyName ()
+ {
+ return typeof(BootstrapServiceConfigurationExtensionsTest).Assembly.GetName().Name;
+ }
+}
diff --git a/Remotion/Core/UnitTests/ServiceLocation/BootstrapServiceConfigurationTest.cs b/Remotion/Core/UnitTests/ServiceLocation/BootstrapServiceConfigurationTest.cs
index 4729378374..123c5f6c7e 100644
--- a/Remotion/Core/UnitTests/ServiceLocation/BootstrapServiceConfigurationTest.cs
+++ b/Remotion/Core/UnitTests/ServiceLocation/BootstrapServiceConfigurationTest.cs
@@ -15,8 +15,16 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.ComponentModel.Design;
+using System.Linq;
using NUnit.Framework;
+using Remotion.Logging;
+using Remotion.Reflection.TypeDiscovery;
+using Remotion.Reflection.TypeDiscovery.AssemblyFinding;
+using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.Reflection.TypeResolution;
using Remotion.ServiceLocation;
+using Remotion.Utilities;
namespace Remotion.UnitTests.ServiceLocation
{
@@ -32,58 +40,73 @@ public void SetUp ()
}
[Test]
- public void Register_ServiceConfigurationEntry_AddsEntryToRegistrations_AndToBootstrapLocator ()
+ public void Register_ServiceConfigurationEntry_AddsEntryToRegistrations ()
{
var entry = new ServiceConfigurationEntry(typeof(IService), new ServiceImplementationInfo(typeof(Service), LifetimeKind.Singleton));
_configuration.Register(entry);
- Assert.That(_configuration.Registrations, Is.EqualTo(new[] { entry }));
- Assert.That(_configuration.BootstrapServiceLocator.GetInstance(), Is.Not.Null.And.TypeOf());
+ Assert.That(_configuration.GetRegistrations(), Has.Member(entry));
}
[Test]
- public void Register_ServiceConfigurationEntry_IfLocatorThrows_NoRegistrationIsAdded ()
+ public void Register_ServiceConfigurationEntry_OverridesExistingEntry ()
{
- // This causes the association between IServiceWithAttribute and ServiceWithAttribute1 to be stored in the BootstrapServiceLocator, so it will
- // later throw on Register.
- _configuration.BootstrapServiceLocator.GetInstance();
+ var entry1 = new ServiceConfigurationEntry(typeof(IService), new ServiceImplementationInfo(typeof(Service), LifetimeKind.Singleton));
+ _configuration.Register(entry1);
- var entry = new ServiceConfigurationEntry(
- typeof(IServiceWithAttribute),
- new ServiceImplementationInfo(typeof(ServiceWithAttribute2), LifetimeKind.Singleton));
- Assert.That(() => _configuration.Register(entry), Throws.InvalidOperationException);
+ var entry2 = new ServiceConfigurationEntry(typeof(IService), new ServiceImplementationInfo(typeof(Service), LifetimeKind.Singleton));
+ _configuration.Register(entry2);
- Assert.That(_configuration.Registrations, Is.Empty);
- Assert.That(_configuration.BootstrapServiceLocator.GetInstance(), Is.Not.Null.And.TypeOf());
+ Assert.That(_configuration.GetRegistrations(), Has.Member(entry2).And.Not.Member(entry1));
}
[Test]
- public void Register_Types_AddsEntry ()
+ public void GetRegistrations_HasDefaultRegistrations ()
{
- _configuration.Register(typeof(IService), typeof(Service), LifetimeKind.InstancePerDependency);
-
- Assert.That(_configuration.Registrations, Has.Length.EqualTo(1));
- Assert.That(_configuration.Registrations[0].ServiceType, Is.SameAs(typeof(IService)));
-
- Assert.That(_configuration.Registrations[0].ImplementationInfos.Count, Is.EqualTo(1));
- Assert.That(_configuration.Registrations[0].ImplementationInfos[0].ImplementationType, Is.EqualTo(typeof(Service)));
- Assert.That(_configuration.Registrations[0].ImplementationInfos[0].Lifetime, Is.EqualTo(LifetimeKind.InstancePerDependency));
-
- Assert.That(_configuration.BootstrapServiceLocator.GetInstance(), Is.Not.Null.And.TypeOf());
+ var serviceConfigurationEntries = _configuration.GetRegistrations();
+ Assert.That(
+ serviceConfigurationEntries.Select(e => e.ServiceType),
+ Is.EquivalentTo(
+ new[]
+ {
+ typeof(ILogManager),
+ typeof(IServiceLocatorProvider), typeof(IServiceConfigurationDiscoveryService),
+ typeof(ITypeResolutionService),
+ typeof(IAppContextProvider), typeof(IAssemblyLoader), typeof(IAssemblyLoaderFilter), typeof(IRootAssemblyFinder), typeof(IAssemblyFinder),
+ typeof(ITypeDiscoveryService)
+ }));
+ Assert.That(
+ serviceConfigurationEntries.SelectMany(e => e.ImplementationInfos.Select(i => i.ImplementationType)),
+ Is.EquivalentTo(
+ new[]
+ {
+ typeof(Log4NetLogManager),
+ typeof(DefaultServiceLocatorProvider), typeof(DefaultServiceConfigurationDiscoveryService),
+ typeof(DefaultTypeResolutionService),
+ typeof(AppContextProvider), typeof(FilteringAssemblyLoader), typeof(ApplicationAssemblyLoaderFilter),
+#if NETFRAMEWORK
+ typeof(CurrentAppDomainBasedRootAssemblyFinder),
+#else
+ typeof(AppContextBasedRootAssemblyFinder),
+#endif
+ typeof(AssemblyFinder), typeof(CachingAssemblyFinderDecorator),
+ typeof(AssemblyFinderTypeDiscoveryService)
+ }));
+ Assert.That(
+ serviceConfigurationEntries.SelectMany(e => e.ImplementationInfos.Where(i => i.RegistrationType == RegistrationType.Single).Select(i => i.Lifetime)),
+ Has.All.EqualTo(LifetimeKind.Singleton));
+ Assert.That(serviceConfigurationEntries.SelectMany(e => e.ImplementationInfos.Where(i => i.RegistrationType == RegistrationType.Compound)), Is.Empty);
+ Assert.That(serviceConfigurationEntries.SelectMany(e => e.ImplementationInfos.Where(i => i.RegistrationType == RegistrationType.Multiple)), Is.Empty);
}
[Test]
- public void Reset ()
+ public void GetRegistrations_AllowsOverridingDefaultRegistrations ()
{
- _configuration.Register(typeof(IService), typeof(Service), LifetimeKind.InstancePerDependency);
-
- Assert.That(_configuration.Registrations, Is.Not.Empty);
- Assert.That(_configuration.BootstrapServiceLocator.GetInstance(), Is.Not.Null.And.TypeOf());
-
- _configuration.Reset();
+ var entry = new ServiceConfigurationEntry(typeof(ILogManager), new ServiceImplementationInfo(typeof(FakeLogManager), LifetimeKind.Singleton));
+ _configuration.Register(entry);
- Assert.That(_configuration.Registrations, Is.Empty);
- Assert.That(() => _configuration.BootstrapServiceLocator.GetInstance(), Throws.TypeOf());
+ var serviceConfigurationEntries = _configuration.GetRegistrations();
+ Assert.That(serviceConfigurationEntries.SingleOrDefault(e => e.ServiceType == typeof(ILogManager)), Is.EqualTo(entry));
}
public interface IService { }
@@ -101,5 +124,18 @@ public class ServiceWithAttribute1 : IServiceWithAttribute
public class ServiceWithAttribute2 : IServiceWithAttribute
{
}
+
+ public class FakeLogManager : ILogManager
+ {
+ ILog ILogManager.GetLogger (string name) => throw new NotImplementedException();
+
+ ILog ILogManager.GetLogger (Type type) => throw new NotImplementedException();
+
+ void ILogManager.Initialize () => throw new NotImplementedException();
+
+ void ILogManager.InitializeConsole () => throw new NotImplementedException();
+
+ void ILogManager.InitializeConsole (LogLevel defaultThreshold, params LogThreshold[] logThresholds) => throw new NotImplementedException();
+ }
}
}
diff --git a/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceConfigurationDiscoveryServiceTest.cs b/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceConfigurationDiscoveryServiceTest.cs
index 1ad69189ed..d636700c83 100644
--- a/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceConfigurationDiscoveryServiceTest.cs
+++ b/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceConfigurationDiscoveryServiceTest.cs
@@ -21,6 +21,7 @@
using System.Reflection;
using Moq;
using NUnit.Framework;
+using Remotion.Reflection;
using Remotion.ServiceLocation;
using Remotion.UnitTests.ServiceLocation.TestDomain;
@@ -389,7 +390,7 @@ public void GetDefaultConfiguration_WithMultipleRegistrationsWithRegistrationTyp
[Test]
public void GetDefaultConfiguration_Assembly ()
{
- var defaultServiceConfigurationDiscoveryService = DefaultServiceConfigurationDiscoveryService.Create();
+ var defaultServiceConfigurationDiscoveryService = new DefaultServiceConfigurationDiscoveryService(_typeDiscoveryServiceStub.Object);
// Because the TestDomain contains test classes with ambiguous attributes, we expect an exception here.
Assert.That(
diff --git a/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorProviderTest.cs b/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorProviderTest.cs
index d57b3e33d2..e2af94d817 100644
--- a/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorProviderTest.cs
+++ b/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorProviderTest.cs
@@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using Moq;
using NUnit.Framework;
using Remotion.ServiceLocation;
@@ -23,20 +24,15 @@ namespace Remotion.UnitTests.ServiceLocation
[TestFixture]
public class DefaultServiceLocatorProviderTest
{
- private DefaultServiceLocatorProvider _provider;
-
- [SetUp]
- public void SetUp ()
- {
- _provider = new DefaultServiceLocatorProvider();
- }
-
[Test]
public void GetServiceLocator ()
{
- var sloc = _provider.GetServiceLocator(Array.AsReadOnly(new ServiceConfigurationEntry[0]));
+ var serviceConfigurationDiscoveryServiceStub = Mock.Of(MockBehavior.Strict);
+ var provider = new DefaultServiceLocatorProvider(serviceConfigurationDiscoveryServiceStub);
+ var sloc = provider.GetServiceLocator(Array.AsReadOnly(new ServiceConfigurationEntry[0]));
Assert.That(sloc, Is.TypeOf());
+ Assert.That(((DefaultServiceLocator)sloc).ServiceConfigurationDiscoveryService, Is.SameAs(serviceConfigurationDiscoveryServiceStub));
}
[Test]
@@ -44,7 +40,9 @@ public void GetServiceLocator_IncludesBootstrapConfiguration ()
{
var entry = new ServiceConfigurationEntry(typeof(IService), new ServiceImplementationInfo(typeof(Service), LifetimeKind.InstancePerDependency));
- var sloc = _provider.GetServiceLocator(Array.AsReadOnly(new[] { entry }));
+ var serviceConfigurationDiscoveryServiceStub = Mock.Of(MockBehavior.Strict);
+ var provider = new DefaultServiceLocatorProvider(serviceConfigurationDiscoveryServiceStub);
+ var sloc = provider.GetServiceLocator(Array.AsReadOnly(new[] { entry }));
Assert.That(sloc, Is.TypeOf());
Assert.That(sloc.GetInstance(), Is.Not.Null.And.TypeOf());
diff --git a/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorTests/DefaultServiceLocatorTest.cs b/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorTests/DefaultServiceLocatorTest.cs
index 204d3cee08..a88d9518ea 100644
--- a/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorTests/DefaultServiceLocatorTest.cs
+++ b/Remotion/Core/UnitTests/ServiceLocation/DefaultServiceLocatorTests/DefaultServiceLocatorTest.cs
@@ -28,7 +28,7 @@ public class DefaultServiceLocatorTest
public void GetInstance_TypeWithGenericServiceInterface ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
Assert.That(serviceLocator.GetInstance(typeof(ITestOpenGenericService)), Is.TypeOf(typeof(TestOpenGenericIntImplementation)));
Assert.That(serviceLocator.GetInstance(typeof(ITestOpenGenericService)), Is.TypeOf(typeof(TestOpenGenericStringImplementation)));
diff --git a/Remotion/Core/UnitTests/ServiceLocation/IMemberInformationNameResolverTest.cs b/Remotion/Core/UnitTests/ServiceLocation/IMemberInformationNameResolverTest.cs
index 9a8b026f01..34bdb1ad8f 100644
--- a/Remotion/Core/UnitTests/ServiceLocation/IMemberInformationNameResolverTest.cs
+++ b/Remotion/Core/UnitTests/ServiceLocation/IMemberInformationNameResolverTest.cs
@@ -29,7 +29,7 @@ public class IMemberInformationNameResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/UnitTests/ServiceLocation/SafeServiceLocatorTest.cs b/Remotion/Core/UnitTests/ServiceLocation/SafeServiceLocatorTest.cs
index 9a9eb2e2d3..8b5ee5c72f 100644
--- a/Remotion/Core/UnitTests/ServiceLocation/SafeServiceLocatorTest.cs
+++ b/Remotion/Core/UnitTests/ServiceLocation/SafeServiceLocatorTest.cs
@@ -15,12 +15,18 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
-using System.Collections.ObjectModel;
+using System.Collections.Generic;
+using System.ComponentModel.Design;
using Moq;
using NUnit.Framework;
-using Remotion.Configuration.ServiceLocation;
using Remotion.Development.UnitTesting;
+using Remotion.Logging;
+using Remotion.Reflection.TypeDiscovery;
+using Remotion.Reflection.TypeDiscovery.AssemblyFinding;
+using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.Reflection.TypeResolution;
using Remotion.ServiceLocation;
+using Remotion.Utilities;
namespace Remotion.UnitTests.ServiceLocation
{
@@ -28,7 +34,6 @@ namespace Remotion.UnitTests.ServiceLocation
public class SafeServiceLocatorTest
{
private ServiceLocatorProvider _serviceLocatorProviderBackup;
- private IServiceLocationConfiguration _previousConfiguration;
[OneTimeSetUp]
public void OneTimeSetUp ()
@@ -46,18 +51,13 @@ public void TestFixtureTearDown ()
[SetUp]
public void SetUp ()
{
- _previousConfiguration = ServiceLocationConfiguration.Current;
- ServiceLocationConfiguration.SetCurrent(null);
- ResetDefaultServiceLocator();
- SafeServiceLocator.BootstrapConfiguration.Reset();
+ ResetSafeServiceLocator();
}
[TearDown]
public void TearDown ()
{
- ServiceLocationConfiguration.SetCurrent(_previousConfiguration);
- ResetDefaultServiceLocator();
- SafeServiceLocator.BootstrapConfiguration.Reset();
+ ResetSafeServiceLocator();
}
[Test]
@@ -75,7 +75,9 @@ public void GetCurrent_WithLocatorProvider_IgnoresServiceConfiguration ()
var serviceLocatorStub = new Mock();
ServiceLocator.SetLocatorProvider(() => serviceLocatorStub.Object);
- ConfigureServiceLocatorProvider(new Mock(MockBehavior.Strict).Object);
+ IServiceLocatorProvider serviceLocatorProvider = new Mock(MockBehavior.Strict).Object;
+ ResetSafeServiceLocator();
+ SafeServiceLocator.BootstrapConfiguration.Register(serviceLocatorProvider);
Assert.That(SafeServiceLocator.Current, Is.SameAs(serviceLocatorStub.Object));
}
@@ -96,10 +98,11 @@ public void GetCurrent_WithoutLocatorProvider_ReturnsConfiguredServiceLocator ()
var serviceLocatorProviderStub = new Mock();
var fakeServiceLocator = new Mock();
serviceLocatorProviderStub
- .Setup(stub => stub.GetServiceLocator(It.IsAny>()))
+ .Setup(stub => stub.GetServiceLocator(It.IsAny>()))
.Returns(fakeServiceLocator.Object);
- ConfigureServiceLocatorProvider(serviceLocatorProviderStub.Object);
+ ResetSafeServiceLocator();
+ SafeServiceLocator.BootstrapConfiguration.Register(serviceLocatorProviderStub.Object);
Assert.That(SafeServiceLocator.Current, Is.SameAs(fakeServiceLocator.Object));
}
@@ -116,22 +119,27 @@ public void GetCurrent_WithoutLocatorProvider_ReturnsConfiguredServiceLocator_Wi
typeof(IService2),
new ServiceImplementationInfo(typeof(Service2), LifetimeKind.InstancePerDependency));
- SafeServiceLocator.BootstrapConfiguration.Register(entry1);
- SafeServiceLocator.BootstrapConfiguration.Register(entry2);
-
- var serviceLocatorProviderMock = new Mock(MockBehavior.Strict);
+ var serviceLocatorProviderMock = new Mock(MockBehavior.Loose);
var fakeServiceLocator = new Mock();
+ IReadOnlyCollection bootstrapConfigurationParameter = null;
serviceLocatorProviderMock
- .Setup(mock => mock.GetServiceLocator(new ReadOnlyCollection(new[] { entry1, entry2 })))
+ .Setup(mock => mock.GetServiceLocator(It.IsNotNull>()))
.Returns(fakeServiceLocator.Object)
+ .Callback((IReadOnlyCollection bootstrapConfiguration) => bootstrapConfigurationParameter = bootstrapConfiguration)
.Verifiable();
- ConfigureServiceLocatorProvider(serviceLocatorProviderMock.Object);
+ ResetSafeServiceLocator();
+ SafeServiceLocator.BootstrapConfiguration.Register(serviceLocatorProviderMock.Object);
+
+ SafeServiceLocator.BootstrapConfiguration.Register(entry1);
+ SafeServiceLocator.BootstrapConfiguration.Register(entry2);
var result = SafeServiceLocator.Current;
serviceLocatorProviderMock.Verify();
Assert.That(result, Is.SameAs(fakeServiceLocator.Object));
+ Assert.That(bootstrapConfigurationParameter, Is.Not.Null);
+ Assert.That(bootstrapConfigurationParameter, Has.Member(entry1).And.Member(entry2));
}
[Test]
@@ -159,10 +167,11 @@ public void GetCurrent_WithLocatorProviderReturningNull_ReturnsConfiguredService
var serviceLocatorProviderStub = new Mock();
var fakeServiceLocator = new Mock();
serviceLocatorProviderStub
- .Setup(stub => stub.GetServiceLocator(It.IsAny>()))
+ .Setup(stub => stub.GetServiceLocator(It.IsAny>()))
.Returns(fakeServiceLocator.Object);
- ConfigureServiceLocatorProvider(serviceLocatorProviderStub.Object);
+ ResetSafeServiceLocator();
+ SafeServiceLocator.BootstrapConfiguration.Register(serviceLocatorProviderStub.Object);
Assert.That(SafeServiceLocator.Current, Is.SameAs(fakeServiceLocator.Object));
}
@@ -183,9 +192,13 @@ public void GetCurrent_WithInvalidServiceLocationConfiguration ()
var exception = new Exception();
var serviceLocatorProvider = new Mock();
- serviceLocatorProvider.Setup(mock => mock.GetServiceLocator(It.IsAny>())).Throws(exception).Verifiable();
+ serviceLocatorProvider
+ .Setup(mock => mock.GetServiceLocator(It.IsAny>()))
+ .Throws(exception)
+ .Verifiable();
- ConfigureServiceLocatorProvider(serviceLocatorProvider.Object);
+ ResetSafeServiceLocator();
+ SafeServiceLocator.BootstrapConfiguration.Register(serviceLocatorProvider.Object);
Assert.That(() => SafeServiceLocator.Current, Throws.Exception.SameAs(exception));
}
@@ -196,17 +209,12 @@ public void GetCurrent_ProvidesAccessToBootstrapLocator_WhileConfiguredLocatorIs
var serviceLocatorProvider = new Mock();
var fakeServiceLocator = new Mock();
serviceLocatorProvider
- .Setup(stub => stub.GetServiceLocator(It.IsAny>()))
+ .Setup(stub => stub.GetServiceLocator(It.IsAny>()))
.Returns(fakeServiceLocator.Object)
- .Callback(
- (ReadOnlyCollection bootstrapConfiguration) =>
- {
- Assert.That(
- SafeServiceLocator.Current,
- Is.Not.Null.And.SameAs(((BootstrapServiceConfiguration)SafeServiceLocator.BootstrapConfiguration).BootstrapServiceLocator));
- });
+ .Callback((IReadOnlyCollection bootstrapConfiguration) => Assert.That(SafeServiceLocator.Current, Is.Not.Null));
- ConfigureServiceLocatorProvider(serviceLocatorProvider.Object);
+ ResetSafeServiceLocator();
+ SafeServiceLocator.BootstrapConfiguration.Register(serviceLocatorProvider.Object);
var result = SafeServiceLocator.Current;
@@ -214,29 +222,121 @@ public void GetCurrent_ProvidesAccessToBootstrapLocator_WhileConfiguredLocatorIs
}
[Test]
- public void DefaultConfiguration_IntegrationTest ()
+ public void DefaultConfiguration_IntegrationTest_CreatesDefaultServiceLocator ()
{
- SafeServiceLocator.BootstrapConfiguration.Register(typeof(IService1), typeof(Service1), LifetimeKind.InstancePerDependency);
-
Assert.That(SafeServiceLocator.Current, Is.TypeOf());
- Assert.That(SafeServiceLocator.Current.GetInstance(), Is.Not.Null.And.TypeOf());
+ }
+
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_WithManualRegistration ()
+ {
+ SafeServiceLocator.BootstrapConfiguration.Register(typeof(IService1), typeof(Service1));
+
Assert.That(SafeServiceLocator.Current.GetInstance(), Is.Not.Null.And.TypeOf());
+ }
+
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_WithAttributeBasedRegistration ()
+ {
+ Assert.That(SafeServiceLocator.Current.GetInstance(), Is.Not.Null.And.TypeOf());
+ }
+
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_WithoutRegistrationRegistration ()
+ {
Assert.That(() => SafeServiceLocator.Current.GetInstance(), Throws.TypeOf());
}
- private void ConfigureServiceLocatorProvider (IServiceLocatorProvider serviceLocatorProvider)
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_WithDependency ()
+ {
+ SafeServiceLocator.BootstrapConfiguration.Register(typeof(IServiceWithDependency), typeof(ServiceWithDependency));
+
+ var serviceWithDependency = SafeServiceLocator.Current.GetInstance();
+ var logManager = SafeServiceLocator.Current.GetInstance();
+ Assert.That(serviceWithDependency, Is.Not.Null.And.TypeOf());
+ Assert.That(((ServiceWithDependency)serviceWithDependency).LogManager, Is.SameAs(logManager));
+ }
+
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_PreservesBootstrappedSingletons ()
+ {
+ var serviceLocator1 = SafeServiceLocator.Current;
+ var logManagerInServiceLocator1 = serviceLocator1.GetInstance();
+ Assert.That(serviceLocator1, Is.TypeOf());
+
+ ServiceLocator.SetLocatorProvider(null);
+ ResetSafeServiceLocator(resetBootstrapConfiguration: false, resetDefaultServiceLocator: true);
+
+ var serviceLocator2 = SafeServiceLocator.Current;
+ var logManagerInServiceLocator2 = serviceLocator2.GetInstance();
+ Assert.That(serviceLocator2, Is.Not.SameAs(serviceLocator1));
+ Assert.That(logManagerInServiceLocator2, Is.SameAs(logManagerInServiceLocator1));
+ }
+
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_ILogManager ()
{
- var serviceLocationConfiguration = new Mock();
- serviceLocationConfiguration.Setup(stub => stub.CreateServiceLocatorProvider()).Returns(serviceLocatorProvider);
- ServiceLocationConfiguration.SetCurrent(serviceLocationConfiguration.Object);
- ResetDefaultServiceLocator();
+ Assert.That(SafeServiceLocator.Current.GetInstance(), Is.InstanceOf());
}
- private void ResetDefaultServiceLocator ()
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_IServiceLocatorProvider ()
{
- var defaultServiceLocatorContainer =
- (DoubleCheckedLockingContainer)PrivateInvoke.GetNonPublicStaticField(typeof(SafeServiceLocator), "s_defaultServiceLocator");
- defaultServiceLocatorContainer.Value = null;
+ Assert.That(SafeServiceLocator.Current.GetInstance(), Is.InstanceOf());
+ }
+
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_ITypeResolutionService ()
+ {
+ Assert.That(SafeServiceLocator.Current.GetInstance(), Is.InstanceOf());
+ }
+
+ [Test]
+ public void DefaultConfiguration_IntegrationTest_ITypeDiscoveryService ()
+ {
+ var typeDiscoveryService = SafeServiceLocator.Current.GetInstance();
+ Assert.That(typeDiscoveryService, Is.InstanceOf());
+
+ var assemblyFindingTypeDiscoveryService = (AssemblyFinderTypeDiscoveryService)typeDiscoveryService;
+ Assert.That(assemblyFindingTypeDiscoveryService.AssemblyFinder, Is.InstanceOf());
+
+ var cachingAssemblyFinderDecorator = (CachingAssemblyFinderDecorator)assemblyFindingTypeDiscoveryService.AssemblyFinder;
+ Assert.That(cachingAssemblyFinderDecorator.InnerFinder, Is.InstanceOf());
+ var assemblyFinder = (AssemblyFinder)cachingAssemblyFinderDecorator.InnerFinder;
+ Assert.That(assemblyFinder.AssemblyLoader, Is.InstanceOf());
+
+ var filteringAssemblyLoader = (FilteringAssemblyLoader)assemblyFinder.AssemblyLoader;
+ Assert.That(filteringAssemblyLoader.Filter, Is.InstanceOf());
+
+#if NETFRAMEWORK
+ Assert.That(assemblyFinder.RootAssemblyFinder, Is.InstanceOf());
+ var rootAssemblyFinder = (CurrentAppDomainBasedRootAssemblyFinder)assemblyFinder.RootAssemblyFinder;
+ Assert.That(rootAssemblyFinder.AssemblyLoader, Is.SameAs(assemblyFinder.AssemblyLoader));
+#else
+ Assert.That(assemblyFinder.RootAssemblyFinder, Is.InstanceOf());
+ var rootAssemblyFinder = (AppContextBasedRootAssemblyFinder)assemblyFinder.RootAssemblyFinder;
+ Assert.That(rootAssemblyFinder.AssemblyLoader, Is.SameAs(assemblyFinder.AssemblyLoader));
+ Assert.That(rootAssemblyFinder.AppContextProvider, Is.InstanceOf());
+#endif
+ }
+
+ private void ResetSafeServiceLocator (bool resetBootstrapConfiguration = true, bool resetDefaultServiceLocator = true)
+ {
+ var fields = PrivateInvoke.GetNonPublicStaticField(typeof(SafeServiceLocator), "s_fields");
+ Assertion.IsNotNull(fields);
+
+ if (resetBootstrapConfiguration)
+ {
+ PrivateInvoke.SetPublicField(fields, "BootstrapConfiguration", new BootstrapServiceConfiguration());
+ }
+
+ if (resetDefaultServiceLocator)
+ {
+ var defaultServiceLocatorContainer = (DoubleCheckedLockingContainer)PrivateInvoke.GetPublicField(fields, "DefaultServiceLocator");
+ Assertion.IsNotNull(defaultServiceLocatorContainer);
+ defaultServiceLocatorContainer.Value = null;
+ }
}
interface IService1 { }
@@ -248,5 +348,17 @@ class Service2 : IService2 { }
interface IServiceWithAttribute { }
[ImplementationFor(typeof(IServiceWithAttribute))]
class ServiceWithAttribute : IServiceWithAttribute { }
+
+ interface IServiceWithDependency { }
+
+ class ServiceWithDependency : IServiceWithDependency
+ {
+ public ILogManager LogManager { get; }
+
+ public ServiceWithDependency (ILogManager logManager)
+ {
+ LogManager = logManager;
+ }
+ }
}
}
diff --git a/Remotion/Core/UnitTests/ServiceLocation/ServiceLocatorTests.cs b/Remotion/Core/UnitTests/ServiceLocation/ServiceLocatorTests.cs
index 81b1708d78..7d4ab1d65d 100644
--- a/Remotion/Core/UnitTests/ServiceLocation/ServiceLocatorTests.cs
+++ b/Remotion/Core/UnitTests/ServiceLocation/ServiceLocatorTests.cs
@@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using Moq;
using NUnit.Framework;
using Remotion.ServiceLocation;
@@ -29,10 +30,16 @@ public void SetUp ()
ServiceLocator.SetLocatorProvider(null);
}
+ [TearDown]
+ public void TearDown ()
+ {
+ ServiceLocator.SetLocatorProvider(null);
+ }
+
[Test]
public void IsLocationProviderSet_WithSetProvider_ReturnsTrue ()
{
- ServiceLocator.SetLocatorProvider(() => new DefaultServiceLocator(DefaultServiceConfigurationDiscoveryService.Create()));
+ ServiceLocator.SetLocatorProvider(() => Mock.Of());
Assert.That(ServiceLocator.IsLocationProviderSet, Is.True);
}
diff --git a/Remotion/Core/UnitTests/Utilities/IAppContextProviderTest.cs b/Remotion/Core/UnitTests/Utilities/IAppContextProviderTest.cs
index 3c0da299b4..3c0a4e92a3 100644
--- a/Remotion/Core/UnitTests/Utilities/IAppContextProviderTest.cs
+++ b/Remotion/Core/UnitTests/Utilities/IAppContextProviderTest.cs
@@ -29,7 +29,7 @@ public class IAppContextProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/UnitTests/Utilities/ITypeConversionProviderTest.cs b/Remotion/Core/UnitTests/Utilities/ITypeConversionProviderTest.cs
index cde3c6f684..4402c549f7 100644
--- a/Remotion/Core/UnitTests/Utilities/ITypeConversionProviderTest.cs
+++ b/Remotion/Core/UnitTests/Utilities/ITypeConversionProviderTest.cs
@@ -29,7 +29,7 @@ public class ITypeConversionProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Core/UnitTests/Utilities/ITypeConverterFactoryTest.cs b/Remotion/Core/UnitTests/Utilities/ITypeConverterFactoryTest.cs
index 7e85e95b1f..d3338435a6 100644
--- a/Remotion/Core/UnitTests/Utilities/ITypeConverterFactoryTest.cs
+++ b/Remotion/Core/UnitTests/Utilities/ITypeConverterFactoryTest.cs
@@ -30,7 +30,7 @@ public class ITypeConverterFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertReadAccessStrategyTest.cs b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertReadAccessStrategyTest.cs
index f98ed6e3ac..af99935fd5 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertReadAccessStrategyTest.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertReadAccessStrategyTest.cs
@@ -31,7 +31,7 @@ public class IBindablePropertReadAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertyWriteAccessStrategyTest.cs b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertyWriteAccessStrategyTest.cs
index d3b968e045..0086e38591 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertyWriteAccessStrategyTest.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/IBindablePropertyWriteAccessStrategyTest.cs
@@ -31,7 +31,7 @@ public class IBindablePropertyWriteAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SecurityIntegrationTest.cs b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SecurityIntegrationTest.cs
index 22492e565f..64b7ad839f 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SecurityIntegrationTest.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SecurityIntegrationTest.cs
@@ -56,7 +56,7 @@ public override void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _securityProviderStub.Object);
serviceLocator.RegisterSingle(() => _principalProviderStub.Object);
serviceLocator.RegisterSingle(() => storageSettings);
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SetUpFixture.cs b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SetUpFixture.cs
index 5c3fd266f5..0f29dac285 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SetUpFixture.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.IntegrationTests/SetUpFixture.cs
@@ -54,7 +54,7 @@ public void OneTimeSetUp ()
{
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(TestDomainConnectionString);
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettingsFactory);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/BindableDomainObjectMixinTests/GetDisplayNameTest.cs b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/BindableDomainObjectMixinTests/GetDisplayNameTest.cs
index 55976bf41c..54a9b98645 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/BindableDomainObjectMixinTests/GetDisplayNameTest.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/BindableDomainObjectMixinTests/GetDisplayNameTest.cs
@@ -41,7 +41,7 @@ public override void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _bindablePropertyReadAccessStrategyMock.Object);
serviceLocator.RegisterSingle(() => storageSettings);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertReadAccessStrategyTest.cs b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertReadAccessStrategyTest.cs
index c704d5f35a..68d0deed3c 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertReadAccessStrategyTest.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertReadAccessStrategyTest.cs
@@ -30,7 +30,7 @@ public class IBindablePropertReadAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertyWriteAccessStrategyTest.cs b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertyWriteAccessStrategyTest.cs
index f769f60d51..6889e2ae34 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertyWriteAccessStrategyTest.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/IBindablePropertyWriteAccessStrategyTest.cs
@@ -30,7 +30,7 @@ public class IBindablePropertyWriteAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/SetUpFixture.cs b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/SetUpFixture.cs
index 6059a4aa86..44f4e389fd 100644
--- a/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/SetUpFixture.cs
+++ b/Remotion/Data/DomainObjects.ObjectBinding.UnitTests/SetUpFixture.cs
@@ -41,7 +41,7 @@ public void OneTimeSetUp ()
var storageSettings = new SerializableStorageSettings(new StorageSettings(storageProviderDefinition, new[] { storageProviderDefinition }));
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettings);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithSecurityTest.cs b/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithSecurityTest.cs
index 0f55140a1d..0f5ab67758 100644
--- a/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithSecurityTest.cs
+++ b/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithSecurityTest.cs
@@ -39,7 +39,7 @@ public void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => stubSecurityProvider);
serviceLocator.RegisterSingle(() => threadPrincipalProvider);
serviceLocator.RegisterSingle(() => storageSettings);
diff --git a/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithoutSecurityTest.cs b/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithoutSecurityTest.cs
index 84d40e3572..80942190da 100644
--- a/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithoutSecurityTest.cs
+++ b/Remotion/Data/DomainObjects.PerformanceTests/BindableObjectWithoutSecurityTest.cs
@@ -44,7 +44,7 @@ public void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => bindablePropertyReadAccessStrategy);
serviceLocator.RegisterSingle(() => storageSettings);
serviceLocator.RegisterSingle(() => bindablePropertyWriteAccessStrategy);
diff --git a/Remotion/Data/DomainObjects.PerformanceTests/PropertyTest.cs b/Remotion/Data/DomainObjects.PerformanceTests/PropertyTest.cs
index e4a00d0d23..d09f064e37 100644
--- a/Remotion/Data/DomainObjects.PerformanceTests/PropertyTest.cs
+++ b/Remotion/Data/DomainObjects.PerformanceTests/PropertyTest.cs
@@ -48,7 +48,7 @@ public void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => bindablePropertyReadAccessStrategy);
serviceLocator.RegisterSingle(() => bindablePropertyWriteAccessStrategy);
serviceLocator.RegisterSingle(() => storageSettings);
diff --git a/Remotion/Data/DomainObjects.PerformanceTests/StandardConfiguration.cs b/Remotion/Data/DomainObjects.PerformanceTests/StandardConfiguration.cs
index ba386f93af..878fde4157 100644
--- a/Remotion/Data/DomainObjects.PerformanceTests/StandardConfiguration.cs
+++ b/Remotion/Data/DomainObjects.PerformanceTests/StandardConfiguration.cs
@@ -36,7 +36,7 @@ public static void Initialize ()
{
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(ConnectionString);
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettingsFactory);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
@@ -46,7 +46,7 @@ public static void Initialize ()
var assemblyFinder = new CachingAssemblyFinderDecorator(new AssemblyFinder(rootAssemblyFinder, assemblyLoader));
ITypeDiscoveryService typeDiscoveryService = new AssemblyFinderTypeDiscoveryService(assemblyFinder);
MappingConfiguration mappingConfiguration = MappingConfiguration.Create(
- MappingReflector.Create(
+ new MappingReflector(
typeDiscoveryService,
SafeServiceLocator.Current.GetInstance(),
SafeServiceLocator.Current.GetInstance(),
diff --git a/Remotion/Data/DomainObjects.RdbmsTools/RdbmsToolsRunner.cs b/Remotion/Data/DomainObjects.RdbmsTools/RdbmsToolsRunner.cs
index 928e6fe28b..cbf29855f3 100644
--- a/Remotion/Data/DomainObjects.RdbmsTools/RdbmsToolsRunner.cs
+++ b/Remotion/Data/DomainObjects.RdbmsTools/RdbmsToolsRunner.cs
@@ -87,7 +87,7 @@ protected virtual void InitializeConfiguration ()
if (ServiceLocator.IsLocationProviderSet == false)
{
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(_rdbmsToolsParameters.ConnectionString);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => storageSettingsFactory);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
}
diff --git a/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionIntegrationTest.cs b/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionIntegrationTest.cs
index 96f3f99cfe..02a32b6f6d 100644
--- a/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionIntegrationTest.cs
+++ b/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionIntegrationTest.cs
@@ -61,7 +61,7 @@ public override void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _securityProviderStub.Object);
serviceLocator.RegisterSingle(() => storageSettings);
serviceLocator.RegisterSingle(() => _principalProviderStub.Object);
diff --git a/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionTests/TestHelper.cs b/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionTests/TestHelper.cs
index 697b0a93c8..1e51b32dd5 100644
--- a/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionTests/TestHelper.cs
+++ b/Remotion/Data/DomainObjects.Security.UnitTests/SecurityClientTransactionExtensionTests/TestHelper.cs
@@ -100,7 +100,7 @@ public void SetupSecurityIoCConfiguration ()
{
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _mockSecurityProvider.Object);
serviceLocator.RegisterSingle(() => _stubPrincipalProvider.Object);
serviceLocator.RegisterSingle(() => _mockMemberResolver.Object);
diff --git a/Remotion/Data/DomainObjects.Security.UnitTests/SetupFixture.cs b/Remotion/Data/DomainObjects.Security.UnitTests/SetupFixture.cs
index f4d1161f37..731a9235f3 100644
--- a/Remotion/Data/DomainObjects.Security.UnitTests/SetupFixture.cs
+++ b/Remotion/Data/DomainObjects.Security.UnitTests/SetupFixture.cs
@@ -41,7 +41,7 @@ public void OneTimeSetUp ()
var storageSettings = new StorageSettings(storageProviderDefinition, new[] { storageProviderDefinition });
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettings);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/EntityFrameworkIntegrationTest.cs b/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/EntityFrameworkIntegrationTest.cs
index 7439dfd006..0f24fbdf47 100644
--- a/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/EntityFrameworkIntegrationTest.cs
+++ b/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/EntityFrameworkIntegrationTest.cs
@@ -44,7 +44,7 @@ public override void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var locator = DefaultServiceLocator.Create();
+ var locator = DefaultServiceLocator.CreateWithBootstrappedServices();
var factory = new EntityFrameworkExtensionFactory();
locator.RegisterSingle(() => factory);
locator.RegisterSingle(() => factory);
diff --git a/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/LinqToSqlIntegrationTest.cs b/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/LinqToSqlIntegrationTest.cs
index 2c45e1867d..bdf495fadc 100644
--- a/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/LinqToSqlIntegrationTest.cs
+++ b/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/LinqToSqlIntegrationTest.cs
@@ -44,7 +44,7 @@ public override void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var locator = DefaultServiceLocator.Create();
+ var locator = DefaultServiceLocator.CreateWithBootstrappedServices();
var factory = new LinqToSqlExtensionFactory();
locator.RegisterSingle(() => factory);
locator.RegisterSingle(() => factory);
diff --git a/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/SetUpFixture.cs b/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/SetUpFixture.cs
index d2c949014a..0985642be2 100644
--- a/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/SetUpFixture.cs
+++ b/Remotion/Data/DomainObjects.UberProfIntegration.UnitTests/SetUpFixture.cs
@@ -54,7 +54,7 @@ public void OneTimeSetUp ()
{
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(TestDomainConnectionString);
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettingsFactory);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.UnitTests/Factories/MappingReflectorObjectMother.cs b/Remotion/Data/DomainObjects.UnitTests/Factories/MappingReflectorObjectMother.cs
index f5e6f4b8d6..c5125c9606 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Factories/MappingReflectorObjectMother.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Factories/MappingReflectorObjectMother.cs
@@ -30,7 +30,7 @@ public static MappingReflector CreateMappingReflector (ITypeDiscoveryService typ
{
ArgumentUtility.CheckNotNull("typeDiscoveryService", typeDiscoveryService);
- return MappingReflector.Create(
+ return new MappingReflector(
typeDiscoveryService,
SafeServiceLocator.Current.GetInstance(),
SafeServiceLocator.Current.GetInstance(),
diff --git a/Remotion/Data/DomainObjects.UnitTests/IClientTransactionExtensionFactoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/IClientTransactionExtensionFactoryTest.cs
index d6d63831b5..b2f268752e 100644
--- a/Remotion/Data/DomainObjects.UnitTests/IClientTransactionExtensionFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/IClientTransactionExtensionFactoryTest.cs
@@ -29,7 +29,7 @@ public class IClientTransactionExtensionFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/IDomainModelConstraintProviderTest.cs b/Remotion/Data/DomainObjects.UnitTests/IDomainModelConstraintProviderTest.cs
index 86b274d4c3..d4d5ea356f 100644
--- a/Remotion/Data/DomainObjects.UnitTests/IDomainModelConstraintProviderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/IDomainModelConstraintProviderTest.cs
@@ -13,7 +13,7 @@ public class IDomainModelConstraintProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/IInterceptedPropertyFinderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/IInterceptedPropertyFinderTest.cs
index 561ac5ff73..f4f66cc73c 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/IInterceptedPropertyFinderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/IInterceptedPropertyFinderTest.cs
@@ -29,7 +29,7 @@ public class IInterceptedPropertyFinderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/ITypeDefinitionProviderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/ITypeDefinitionProviderTest.cs
index a82f3d03d7..dea458b27f 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/ITypeDefinitionProviderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Infrastructure/TypePipe/ITypeDefinitionProviderTest.cs
@@ -29,7 +29,7 @@ public class ITypeDefinitionProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/EagerFetching/EagerFetchingTest.cs b/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/EagerFetching/EagerFetchingTest.cs
index 37de11170b..6946c959ab 100644
--- a/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/EagerFetching/EagerFetchingTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/EagerFetching/EagerFetchingTest.cs
@@ -307,7 +307,7 @@ private ServiceLocatorScope ScopeWithPersistenceExtension (IPersistenceExtension
persistenceExtensionFactoryStub
.Setup(stub => stub.CreatePersistenceExtensions(It.IsAny()))
.Returns(new[] { persistenceExtensionMock });
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => persistenceExtensionFactoryStub.Object);
RegisterStandardConfiguration(serviceLocator);
return new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/Queries/CustomQueryDatabaseBehaviorTest.cs b/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/Queries/CustomQueryDatabaseBehaviorTest.cs
index c665648958..119efce8ed 100644
--- a/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/Queries/CustomQueryDatabaseBehaviorTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/Queries/CustomQueryDatabaseBehaviorTest.cs
@@ -41,7 +41,7 @@ public override void SetUp ()
.Setup(stub => stub.CreatePersistenceExtensions(It.Is(value => value == TestableClientTransaction.ID)))
.Returns(new[] { _persistenceExtensionMock.Object });
- var locator = DefaultServiceLocator.Create();
+ var locator = DefaultServiceLocator.CreateWithBootstrappedServices();
locator.RegisterSingle(() => persistenceExtensionFactoryStub.Object);
RegisterStandardConfiguration(locator);
_serviceLocatorScope = new ServiceLocatorScope(locator);
diff --git a/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs b/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs
index 0df896b4c0..b87642d141 100644
--- a/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs
@@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.ComponentModel.Design;
using System.Linq;
using NUnit.Framework;
using Remotion.Data.DomainObjects.Infrastructure.TypePipe;
@@ -27,27 +28,34 @@ namespace Remotion.Data.DomainObjects.UnitTests.IntegrationTests.ServiceLocation
[TestFixture]
public class ParticipantRegistrationTest
{
+ private DefaultServiceLocator _serviceLocator;
+
+ [SetUp]
+ public void SetUp ()
+ {
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
+ }
+
[Test]
public void DefaultServiceLocator_ReturnsDomainObjectParticipant ()
{
- var serviceLocator = DefaultServiceLocator.Create();
- var participants = serviceLocator.GetAllInstances().ToArray();
+ var participants = _serviceLocator.GetAllInstances().ToArray();
Assert.That(participants.Select(p => p.GetType()), Has.Member(typeof(DomainObjectParticipant)));
}
[Test]
public void DefaultServiceLocator_OrdersDomainObjectParticipantAfterMixinParticipant ()
{
- var serviceLocator = DefaultServiceLocator.Create();
- var participants = serviceLocator.GetAllInstances().ToArray();
+ var participants = _serviceLocator.GetAllInstances().ToArray();
Assert.That(participants.Select(p => p.GetType()), Is.EqualTo(new[] { typeof(MixinParticipant), typeof(DomainObjectParticipant) }));
}
[Test]
public void DefaultServiceConfigurationDiscoveryService_ReturnsDomainObjectParticipant ()
{
- var discoveryService = DefaultServiceConfigurationDiscoveryService.Create();
- var services = discoveryService.GetDefaultConfiguration();
+ var typeDiscoveryService = _serviceLocator.GetInstance();
+ var defaultServiceConfigurationDiscoveryService = new DefaultServiceConfigurationDiscoveryService(typeDiscoveryService);
+ var services = defaultServiceConfigurationDiscoveryService.GetDefaultConfiguration();
var participantService = services.SingleOrDefault(s => s.ServiceType == typeof(IParticipant));
Assert.That(participantService, Is.Not.Null);
@@ -55,10 +63,11 @@ public void DefaultServiceConfigurationDiscoveryService_ReturnsDomainObjectParti
}
[Test]
- public void DefaultServiceConfigurationDiscoveryService_ReturnsMixinParticpant ()
+ public void DefaultServiceConfigurationDiscoveryService_ReturnsMixinParticipant ()
{
- var discoveryService = DefaultServiceConfigurationDiscoveryService.Create();
- var services = discoveryService.GetDefaultConfiguration();
+ var typeDiscoveryService = _serviceLocator.GetInstance();
+ var defaultServiceConfigurationDiscoveryService = new DefaultServiceConfigurationDiscoveryService(typeDiscoveryService);
+ var services = defaultServiceConfigurationDiscoveryService.GetDefaultConfiguration();
var participantService = services.SingleOrDefault(s => s.ServiceType == typeof(IParticipant));
Assert.That(participantService, Is.Not.Null);
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/IClassIDProviderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/IClassIDProviderTest.cs
index 6f50ca26a2..35c9f5e17c 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/IClassIDProviderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/IClassIDProviderTest.cs
@@ -28,7 +28,7 @@ public class IClassIDProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingConfigurationTest.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingConfigurationTest.cs
index a44bfd595b..89348cf92e 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingConfigurationTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingConfigurationTest.cs
@@ -16,7 +16,7 @@ public class IMappingConfigurationTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
_serviceLocator.RegisterSingle(() => Mock.Of());
_serviceLocator.RegisterSingle(() => Mock.Of());
}
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingLoaderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingLoaderTest.cs
index dc24da6a22..065af22e95 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingLoaderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/IMappingLoaderTest.cs
@@ -13,7 +13,7 @@ public class IMappingLoaderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/IPersistenceModelLoader.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/IPersistenceModelLoader.cs
index d01f755b33..63c07160f6 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/IPersistenceModelLoader.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/IPersistenceModelLoader.cs
@@ -31,7 +31,7 @@ public class IPersistenceModelLoaderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
_serviceLocator.RegisterSingle(() => Mock.Of());
}
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyDefaultValueProviderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyDefaultValueProviderTest.cs
index fd0c97dcf4..38d024da28 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyDefaultValueProviderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyDefaultValueProviderTest.cs
@@ -12,7 +12,7 @@ public class IPropertyDefaultValueProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyMetadataProviderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyMetadataProviderTest.cs
index 3697682c17..15b2751268 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyMetadataProviderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/IPropertyMetadataProviderTest.cs
@@ -28,7 +28,7 @@ public class IPropertyMetadataProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/ISortExpressionProviderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/ISortExpressionProviderTest.cs
index 3174bad47f..f4b43febd5 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/ISortExpressionProviderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/ISortExpressionProviderTest.cs
@@ -13,7 +13,7 @@ public class ISortExpressionProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Mapping/MappingReflectorTest.cs b/Remotion/Data/DomainObjects.UnitTests/Mapping/MappingReflectorTest.cs
index 2216ae8643..fa01655b67 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Mapping/MappingReflectorTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Mapping/MappingReflectorTest.cs
@@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.ComponentModel.Design;
using System.Linq;
using NUnit.Framework;
using Remotion.Data.DomainObjects.ConfigurationLoader;
@@ -43,25 +44,11 @@ public class MappingReflectorTest : MappingReflectionTestBase
_mappingReflector = MappingReflectorObjectMother.CreateMappingReflector(TestMappingConfiguration.GetTypeDiscoveryService());
}
- [Test]
- public void Initialization_DefaultTypeDiscoveryService ()
- {
- var reflector = new MappingReflector(
- SafeServiceLocator.Current.GetInstance(),
- SafeServiceLocator.Current.GetInstance(),
- SafeServiceLocator.Current.GetInstance(),
- SafeServiceLocator.Current.GetInstance(),
- SafeServiceLocator.Current.GetInstance(),
- SafeServiceLocator.Current.GetInstance(),
- SafeServiceLocator.Current.GetInstance());
-
- Assert.That(reflector.TypeDiscoveryService, Is.SameAs(ContextAwareTypeUtility.GetTypeDiscoveryService()));
- }
-
[Test]
public void Initialization_MappingObjectFactory_InstanceCreator ()
{
var reflector = new MappingReflector(
+ SafeServiceLocator.Current.GetInstance(),
SafeServiceLocator.Current.GetInstance(),
SafeServiceLocator.Current.GetInstance(),
SafeServiceLocator.Current.GetInstance(),
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageObjectFactoryFactoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageObjectFactoryFactoryTest.cs
index 9f41c20714..7fa3e3f84e 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageObjectFactoryFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageObjectFactoryFactoryTest.cs
@@ -28,7 +28,7 @@ public class IStorageObjectFactoryFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryResolverTest.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryResolverTest.cs
index 2d6c1c657e..e8066d8c21 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryResolverTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryResolverTest.cs
@@ -28,7 +28,7 @@ public class IStorageSettingsFactoryResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryTest.cs
index 621f47d5db..f758a8d82c 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsFactoryTest.cs
@@ -27,7 +27,7 @@ public class IStorageSettingsFactoryTest
[Test]
public void GetInstance_ThrowsNoInstanceRegistered ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
Assert.That(
() => serviceLocator.GetInstance(),
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsTest.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsTest.cs
index 6a255f92c1..fd43aee1a9 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/IStorageSettingsTest.cs
@@ -29,7 +29,7 @@ public class IStorageSettingsTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
_serviceLocator.RegisterSingle(() => Mock.Of());
}
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageObjectFactoryFactoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageObjectFactoryFactoryTest.cs
index 1b512c9c51..3e81c12ce4 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageObjectFactoryFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageObjectFactoryFactoryTest.cs
@@ -81,7 +81,7 @@ public IDomainObjectQueryGenerator CreateDomainObjectQueryGenerator (
[Test]
public void Create_WithoutIoCRegistration_CreatesObject ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var storageObjectFactoryFactory = new StorageObjectFactoryFactory();
Assert.That(((IServiceProvider)serviceLocator).GetService(typeof(UnitTestStorageObjectFactoryStub)), Is.Null);
@@ -97,7 +97,7 @@ public void Create_WithoutIoCRegistration_CreatesObject ()
[Test]
public void Create_WithIoCRegistration_GetsFromIoC ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var storageObjectFactoryFactory = new StorageObjectFactoryFactory();
var resultFromServiceLocator = ((IServiceProvider)serviceLocator).GetService(typeof(SqlStorageObjectFactory));
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageSettingsFactoryResolverTest.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageSettingsFactoryResolverTest.cs
index 0cb4ce27c3..9fced7bae5 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageSettingsFactoryResolverTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/Configuration/StorageSettingsFactoryResolverTest.cs
@@ -32,7 +32,7 @@ public void Resolve_ReturnsValueFromServiceLocator ()
var storageSettingsFactoryStub = Mock.Of();
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettingsFactoryStub);
using (new ServiceLocatorScope(defaultServiceLocator))
@@ -47,7 +47,7 @@ public void Resolve_ReturnsValueFromServiceLocator ()
public void Resolve_Throws ()
{
var storageSettingsFactoryResolver = new StorageSettingsFactoryResolver();
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
using (new ServiceLocatorScope(defaultServiceLocator))
{
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/IPersistenceModelTest.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/IPersistenceModelTest.cs
index 5fe47fc208..b21abed89f 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/IPersistenceModelTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/IPersistenceModelTest.cs
@@ -29,7 +29,7 @@ public class IPersistenceModelTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Persistence/Rdbms/SqlServer/IntegrationTests/CustomStorageObjectFactoryTestBase.cs b/Remotion/Data/DomainObjects.UnitTests/Persistence/Rdbms/SqlServer/IntegrationTests/CustomStorageObjectFactoryTestBase.cs
index a879fc385e..1c6cd8abeb 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Persistence/Rdbms/SqlServer/IntegrationTests/CustomStorageObjectFactoryTestBase.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Persistence/Rdbms/SqlServer/IntegrationTests/CustomStorageObjectFactoryTestBase.cs
@@ -54,12 +54,12 @@ public override void SetUp ()
_storageProviderDefinition = (RdbmsProviderDefinition)storageSettings.GetDefaultStorageProviderDefinition();
_storageObjectFactory = (SqlStorageObjectFactory)_storageProviderDefinition.Factory;
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => storageSettings);
SetupServiceLocator(serviceLocator);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
- var mappingLoader = MappingReflector.Create(
+ var mappingLoader = new MappingReflector(
new FixedTypeDiscoveryService(GetReflectedTypes()),
new ClassIDProvider(),
new ReflectionBasedMemberInformationNameResolver(),
diff --git a/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/IQueryDefinitionRepositoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/IQueryDefinitionRepositoryTest.cs
index 22c1567d25..0d411efc00 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/IQueryDefinitionRepositoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/IQueryDefinitionRepositoryTest.cs
@@ -31,7 +31,7 @@ public override void SetUp ()
{
base.SetUp();
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryDefinitionLoaderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryDefinitionLoaderTest.cs
index 602f7762aa..1c2fd5d137 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryDefinitionLoaderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryDefinitionLoaderTest.cs
@@ -29,7 +29,7 @@ public class IQueryDefinitionLoaderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryFileFinderTest.cs b/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryFileFinderTest.cs
index 935a6497d0..23854c00cb 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryFileFinderTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Queries/Configuration/Loader/IQueryFileFinderTest.cs
@@ -29,7 +29,7 @@ public class IQueryFileFinderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Queries/QueryFactoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/Queries/QueryFactoryTest.cs
index 8edaabaf8c..c70bc5d734 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Queries/QueryFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Queries/QueryFactoryTest.cs
@@ -74,7 +74,7 @@ public void CreateQueryFromConfiguration_FromID ()
{
var definition = Queries.GetMandatory("QueryWithoutParameter");
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => Queries);
RegisterStandardConfiguration(serviceLocator);
using var scope = new ServiceLocatorScope(serviceLocator);
@@ -94,7 +94,7 @@ public void CreateQueryFromConfiguration_FromID_WithParameterCollection ()
var definition = Queries.GetMandatory("QueryWithoutParameter");
var parameterCollection = new QueryParameterCollection();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => Queries);
RegisterStandardConfiguration(serviceLocator);
using var scope = new ServiceLocatorScope(serviceLocator);
@@ -271,7 +271,7 @@ public void CreateQuery_FromLinqQuery_InvalidQueryable ()
public void CreateLinqQuery_WithParserAndExecutor ()
{
var factoryMock = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => factoryMock.Object);
RegisterStandardConfiguration(serviceLocator);
using (new ServiceLocatorScope(serviceLocator))
@@ -296,7 +296,7 @@ public void CreateLinqQuery_WithParserAndExecutor ()
public void CreateLinqQuery_WithoutParserAndExecutor ()
{
var factoryMock = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => factoryMock.Object);
RegisterStandardConfiguration(serviceLocator);
diff --git a/Remotion/Data/DomainObjects.UnitTests/Serialization/QueriesTest.cs b/Remotion/Data/DomainObjects.UnitTests/Serialization/QueriesTest.cs
index bd87b6f802..abd42258a2 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Serialization/QueriesTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Serialization/QueriesTest.cs
@@ -72,7 +72,7 @@ public void Deserialize_WithQueryDefinitionFromRepo_ReturnsSameInstance ()
{
var queryDefinitionRepository = Queries;
- DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.Create();
+ DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => queryDefinitionRepository);
RegisterStandardConfiguration(defaultServiceLocator);
using var scope = new ServiceLocatorScope(defaultServiceLocator);
@@ -90,7 +90,7 @@ public void Deserialize_WithQueryDefinitionNoLongerInRepo_ThrowsException ()
QueryDefinition unknownQueryDefinition = new QueryDefinition("UnknownQuery", TestDomainStorageProviderDefinition, "select 42", QueryType.ScalarReadOnly);
QueryDefinitionRepository queryDefinitionRepository = new QueryDefinitionRepository(new[] { unknownQueryDefinition });
- DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.Create();
+ DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => queryDefinitionRepository);
RegisterStandardConfiguration(defaultServiceLocator);
@@ -114,7 +114,7 @@ public void DeserializeList_WithQueryDefinitionsFromRepo_ReturnsSameInstances ()
{
var queryDefinitionRepository = Queries;
- DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.Create();
+ DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => queryDefinitionRepository);
RegisterStandardConfiguration(defaultServiceLocator);
using var scope = new ServiceLocatorScope(defaultServiceLocator);
@@ -134,7 +134,7 @@ public void Query ()
{
var queryDefinitionRepository = Queries;
- DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.Create();
+ DefaultServiceLocator defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => queryDefinitionRepository);
RegisterStandardConfiguration(defaultServiceLocator);
using var scope = new ServiceLocatorScope(defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.UnitTests/SetupFixture.cs b/Remotion/Data/DomainObjects.UnitTests/SetupFixture.cs
index 3b3154b868..f145e3fed1 100644
--- a/Remotion/Data/DomainObjects.UnitTests/SetupFixture.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/SetupFixture.cs
@@ -34,7 +34,7 @@ public void OneTimeSetUp ()
{
StandardConfiguration.EnsureInitialized();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
StandardConfiguration.Instance.Register(serviceLocator);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Data/DomainObjects.UnitTests/Tracing/IPersistenceExtensionFactoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/Tracing/IPersistenceExtensionFactoryTest.cs
index 22bf03f9f0..5e670e732f 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Tracing/IPersistenceExtensionFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Tracing/IPersistenceExtensionFactoryTest.cs
@@ -29,7 +29,7 @@ public class IPersistenceExtensionFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Validation/IClientTransactionExtensionFactoryTest.cs b/Remotion/Data/DomainObjects.UnitTests/Validation/IClientTransactionExtensionFactoryTest.cs
index d074d361f3..d869a3b9e6 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Validation/IClientTransactionExtensionFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Validation/IClientTransactionExtensionFactoryTest.cs
@@ -31,7 +31,7 @@ public class IClientTransactionExtensionFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Validation/IDataContainerValidatorTest.cs b/Remotion/Data/DomainObjects.UnitTests/Validation/IDataContainerValidatorTest.cs
index 745ffe7b86..e5fec61db1 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Validation/IDataContainerValidatorTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Validation/IDataContainerValidatorTest.cs
@@ -30,7 +30,7 @@ public class IDataContainerValidatorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.UnitTests/Validation/IPersistableDataValidatorTest.cs b/Remotion/Data/DomainObjects.UnitTests/Validation/IPersistableDataValidatorTest.cs
index b3c7734ac4..21291d47b4 100644
--- a/Remotion/Data/DomainObjects.UnitTests/Validation/IPersistableDataValidatorTest.cs
+++ b/Remotion/Data/DomainObjects.UnitTests/Validation/IPersistableDataValidatorTest.cs
@@ -30,7 +30,7 @@ public class IPersistableDataValidatorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.Validation.IntegrationTests/IntegrationTestBase.cs b/Remotion/Data/DomainObjects.Validation.IntegrationTests/IntegrationTestBase.cs
index 6f476b2f36..0996b4794e 100644
--- a/Remotion/Data/DomainObjects.Validation.IntegrationTests/IntegrationTestBase.cs
+++ b/Remotion/Data/DomainObjects.Validation.IntegrationTests/IntegrationTestBase.cs
@@ -42,7 +42,7 @@ public virtual void SetUp ()
{
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(
() => new ValidationClientTransactionExtensionFactory(serviceLocator.GetInstance()));
serviceLocator.RegisterSingle(() => storageSettings);
diff --git a/Remotion/Data/DomainObjects.Validation.IntegrationTests/SetupFixture.cs b/Remotion/Data/DomainObjects.Validation.IntegrationTests/SetupFixture.cs
index afdc132828..ad807be0b4 100644
--- a/Remotion/Data/DomainObjects.Validation.IntegrationTests/SetupFixture.cs
+++ b/Remotion/Data/DomainObjects.Validation.IntegrationTests/SetupFixture.cs
@@ -41,7 +41,7 @@ public void OneTimeSetUp ()
var storageSettings = new StorageSettings(storageProviderDefinition, new[] { storageProviderDefinition });
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettings);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.Validation.UnitTests/IClientTransactionExtensionFactoryTest.cs b/Remotion/Data/DomainObjects.Validation.UnitTests/IClientTransactionExtensionFactoryTest.cs
index d951cd9f93..bc6e9f9f52 100644
--- a/Remotion/Data/DomainObjects.Validation.UnitTests/IClientTransactionExtensionFactoryTest.cs
+++ b/Remotion/Data/DomainObjects.Validation.UnitTests/IClientTransactionExtensionFactoryTest.cs
@@ -30,7 +30,7 @@ public class IClientTransactionExtensionFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.Validation.UnitTests/IValidationRuleCollectorProviderTest.cs b/Remotion/Data/DomainObjects.Validation.UnitTests/IValidationRuleCollectorProviderTest.cs
index f92fedd037..141794295d 100644
--- a/Remotion/Data/DomainObjects.Validation.UnitTests/IValidationRuleCollectorProviderTest.cs
+++ b/Remotion/Data/DomainObjects.Validation.UnitTests/IValidationRuleCollectorProviderTest.cs
@@ -31,7 +31,7 @@ public class IValidationRuleCollectorProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Data/DomainObjects.Validation.UnitTests/SetupFixture.cs b/Remotion/Data/DomainObjects.Validation.UnitTests/SetupFixture.cs
index 58596e9388..a5da1da606 100644
--- a/Remotion/Data/DomainObjects.Validation.UnitTests/SetupFixture.cs
+++ b/Remotion/Data/DomainObjects.Validation.UnitTests/SetupFixture.cs
@@ -41,7 +41,7 @@ public void OneTimeSetUp ()
var storageSettings = new StorageSettings(storageProviderDefinition, new[] { storageProviderDefinition });
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettings);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.Web.IntegrationTests/SetUpFixture.cs b/Remotion/Data/DomainObjects.Web.IntegrationTests/SetUpFixture.cs
index 2a9ffd47e1..effd7a1522 100644
--- a/Remotion/Data/DomainObjects.Web.IntegrationTests/SetUpFixture.cs
+++ b/Remotion/Data/DomainObjects.Web.IntegrationTests/SetUpFixture.cs
@@ -57,7 +57,7 @@ public void OneTimeSetUp ()
{
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(TestDomainConnectionString);
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.RegisterSingle(() => storageSettingsFactory);
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
diff --git a/Remotion/Data/DomainObjects.Web.IntegrationTests/WxeTransactedFunctionIntegrationTests/SecuredFunctionTestBase.cs b/Remotion/Data/DomainObjects.Web.IntegrationTests/WxeTransactedFunctionIntegrationTests/SecuredFunctionTestBase.cs
index 36306411d9..cc9e5ea6fc 100644
--- a/Remotion/Data/DomainObjects.Web.IntegrationTests/WxeTransactedFunctionIntegrationTests/SecuredFunctionTestBase.cs
+++ b/Remotion/Data/DomainObjects.Web.IntegrationTests/WxeTransactedFunctionIntegrationTests/SecuredFunctionTestBase.cs
@@ -56,7 +56,7 @@ public override void SetUp ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _securityProviderStub.Object);
serviceLocator.RegisterSingle(() => principalProviderStub.Object);
serviceLocator.RegisterSingle(() => _functionalSecurityStrategyStub.Object);
diff --git a/Remotion/Data/DomainObjects.Web.Test/Global.asax.cs b/Remotion/Data/DomainObjects.Web.Test/Global.asax.cs
index ce224533f7..b0bd67cb1f 100644
--- a/Remotion/Data/DomainObjects.Web.Test/Global.asax.cs
+++ b/Remotion/Data/DomainObjects.Web.Test/Global.asax.cs
@@ -65,7 +65,7 @@ protected void Application_Start (Object sender, EventArgs e)
FileExtensionHandlerMapping.Default);
_resourceVirtualPathProvider.Register();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer("Integrated Security=SSPI;Initial Catalog=RpaTest;Data Source=localhost");
serviceLocator.RegisterSingle(() => storageSettingsFactory);
diff --git a/Remotion/Data/DomainObjects/ConfigurationLoader/ReflectionBasedConfigurationLoader/MappingReflector.cs b/Remotion/Data/DomainObjects/ConfigurationLoader/ReflectionBasedConfigurationLoader/MappingReflector.cs
index 832a671842..6f25ad5447 100644
--- a/Remotion/Data/DomainObjects/ConfigurationLoader/ReflectionBasedConfigurationLoader/MappingReflector.cs
+++ b/Remotion/Data/DomainObjects/ConfigurationLoader/ReflectionBasedConfigurationLoader/MappingReflector.cs
@@ -33,36 +33,6 @@ namespace Remotion.Data.DomainObjects.ConfigurationLoader.ReflectionBasedConfigu
[ImplementationFor(typeof(IMappingLoader), Lifetime = LifetimeKind.Singleton)]
public class MappingReflector : IMappingLoader
{
- public static MappingReflector Create (
- ITypeDiscoveryService typeDiscoveryService,
- IClassIDProvider classIDProvider,
- IMemberInformationNameResolver nameResolver,
- IPropertyMetadataProvider propertyMetadataProvider,
- IDomainModelConstraintProvider domainModelConstraintProvider,
- IPropertyDefaultValueProvider propertyDefaultValueProvider,
- ISortExpressionDefinitionProvider sortExpressionDefinitionProvider,
- IDomainObjectCreator domainObjectCreator)
- {
- ArgumentUtility.CheckNotNull("typeDiscoveryService", typeDiscoveryService);
- ArgumentUtility.CheckNotNull("classIDProvider", classIDProvider);
- ArgumentUtility.CheckNotNull("propertyMetadataProvider", propertyMetadataProvider);
- ArgumentUtility.CheckNotNull("domainModelConstraintProvider", domainModelConstraintProvider);
- ArgumentUtility.CheckNotNull("propertyDefaultValueProvider", propertyDefaultValueProvider);
- ArgumentUtility.CheckNotNull("sortExpressionDefinitionProvider", sortExpressionDefinitionProvider);
- ArgumentUtility.CheckNotNull("nameResolver", nameResolver);
- ArgumentUtility.CheckNotNull("domainObjectCreator", domainObjectCreator);
-
- return new MappingReflector(
- typeDiscoveryService,
- classIDProvider,
- nameResolver,
- propertyMetadataProvider,
- domainModelConstraintProvider,
- propertyDefaultValueProvider,
- sortExpressionDefinitionProvider,
- domainObjectCreator);
- }
-
private static readonly ILog s_log = LogManager.GetLogger(typeof(MappingReflector));
private readonly IMemberInformationNameResolver _nameResolver;
private readonly IMappingObjectFactory _mappingObjectFactory;
@@ -74,26 +44,6 @@ public static MappingReflector Create (
private readonly IPropertyDefaultValueProvider _propertyDefaultValueProvider;
public MappingReflector (
- IClassIDProvider classIDProvider,
- IMemberInformationNameResolver nameResolver,
- IPropertyMetadataProvider propertyMetadataProvider,
- IDomainModelConstraintProvider domainModelConstraintProvider,
- IPropertyDefaultValueProvider propertyDefaultValueProvider,
- ISortExpressionDefinitionProvider sortExpressionDefinitionProvider,
- IDomainObjectCreator domainObjectCreator)
- : this(
- ContextAwareTypeUtility.GetTypeDiscoveryService(),
- classIDProvider,
- nameResolver,
- propertyMetadataProvider,
- domainModelConstraintProvider,
- propertyDefaultValueProvider,
- sortExpressionDefinitionProvider,
- domainObjectCreator)
- {
- }
-
- private MappingReflector (
ITypeDiscoveryService typeDiscoveryService,
IClassIDProvider classIDProvider,
IMemberInformationNameResolver nameResolver,
diff --git a/Remotion/Development/Core/UnitTesting/ServiceLocatorScope.cs b/Remotion/Development/Core/UnitTesting/ServiceLocatorScope.cs
index 04706f4cb7..4cf550c9c2 100644
--- a/Remotion/Development/Core/UnitTesting/ServiceLocatorScope.cs
+++ b/Remotion/Development/Core/UnitTesting/ServiceLocatorScope.cs
@@ -27,16 +27,6 @@ namespace Remotion.Development.UnitTesting
///
public class ServiceLocatorScope : IDisposable
{
- private static DefaultServiceLocator CreateServiceLocator (IEnumerable configuration)
- {
- ArgumentUtility.CheckNotNull("configuration", configuration);
-
- var defaultServiceLocator = DefaultServiceLocator.Create();
- foreach (var stubbedRegistration in configuration)
- defaultServiceLocator.Register(stubbedRegistration);
- return defaultServiceLocator;
- }
-
private readonly ServiceLocatorProvider? _previousLocatorProvider;
public ServiceLocatorScope (IServiceLocator temporaryServiceLocator)
@@ -54,11 +44,6 @@ public ServiceLocatorScope (IServiceLocator temporaryServiceLocator)
ServiceLocator.SetLocatorProvider(() => temporaryServiceLocator);
}
- public ServiceLocatorScope (params ServiceConfigurationEntry[] temporaryConfiguration)
- : this(CreateServiceLocator(temporaryConfiguration))
- {
- }
-
public void Dispose ()
{
ServiceLocator.SetLocatorProvider(_previousLocatorProvider);
diff --git a/Remotion/Development/UnitTests/Core/UnitTesting/ServiceLocatorScopeTest.cs b/Remotion/Development/UnitTests/Core/UnitTesting/ServiceLocatorScopeTest.cs
index 28425afe4d..d47e3e5d47 100644
--- a/Remotion/Development/UnitTests/Core/UnitTesting/ServiceLocatorScopeTest.cs
+++ b/Remotion/Development/UnitTests/Core/UnitTesting/ServiceLocatorScopeTest.cs
@@ -98,28 +98,6 @@ public void Initialization_AndDispose_ServiceLocator_SetNull ()
Assert.That(ServiceLocator.Current, Is.SameAs(_locator1));
}
- [Test]
- public void Initialization_AndDispose_ServiceLocator_ServiceConfigurationEntries ()
- {
- ServiceLocator.SetLocatorProvider(() => _locator1);
- Assert.That(ServiceLocator.Current, Is.SameAs(_locator1));
-
- var entry1 = new ServiceConfigurationEntry(typeof(object), new ServiceImplementationInfo(typeof(DomainType1), LifetimeKind.InstancePerDependency));
- var entry2 = new ServiceConfigurationEntry(typeof(IFormattable), new ServiceImplementationInfo(typeof(DomainType2), LifetimeKind.Singleton));
-
- using (new ServiceLocatorScope(entry1, entry2))
- {
- Assert.That(ServiceLocator.Current, Is.Not.SameAs(_locator1));
- Assert.That(ServiceLocator.Current, Is.TypeOf());
- Assert.That(ServiceLocator.Current.GetInstance(typeof(object)), Is.TypeOf());
- Assert.That(ServiceLocator.Current.GetInstance(typeof(object)), Is.Not.SameAs(ServiceLocator.Current.GetInstance(typeof(object))));
- Assert.That(ServiceLocator.Current.GetInstance(typeof(IFormattable)), Is.TypeOf());
- Assert.That(ServiceLocator.Current.GetInstance(typeof(IFormattable)), Is.SameAs(ServiceLocator.Current.GetInstance(typeof(IFormattable))));
- }
-
- Assert.That(ServiceLocator.Current, Is.SameAs(_locator1));
- }
-
class DomainType1 { }
class DomainType2 : IFormattable {
public string ToString (string format, IFormatProvider formatProvider)
diff --git a/Remotion/Development/UnitTests/Data/UnitTesting/DomainObjects/SetUpFixture.cs b/Remotion/Development/UnitTests/Data/UnitTesting/DomainObjects/SetUpFixture.cs
index f5bc8d3e04..334a59c5d8 100644
--- a/Remotion/Development/UnitTests/Data/UnitTesting/DomainObjects/SetUpFixture.cs
+++ b/Remotion/Development/UnitTests/Data/UnitTesting/DomainObjects/SetUpFixture.cs
@@ -46,7 +46,7 @@ public void OneTimeSetUp ()
MappingConfiguration.SetCurrent(
MappingConfiguration.Create(
- MappingReflector.Create(
+ new MappingReflector(
typeDiscoveryService,
new ClassIDProvider(),
new ReflectionBasedMemberInformationNameResolver(),
diff --git a/Remotion/Globalization/ExtensibleEnums.UnitTests/IExtensibleEnumGlobalizationServiceTest.cs b/Remotion/Globalization/ExtensibleEnums.UnitTests/IExtensibleEnumGlobalizationServiceTest.cs
index 33d88a554a..e8adfbe7fa 100644
--- a/Remotion/Globalization/ExtensibleEnums.UnitTests/IExtensibleEnumGlobalizationServiceTest.cs
+++ b/Remotion/Globalization/ExtensibleEnums.UnitTests/IExtensibleEnumGlobalizationServiceTest.cs
@@ -30,7 +30,7 @@ public class IExtensibleEnumGlobalizationServiceTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Globalization/Mixins.UnitTests/IGlobalizationServiceTest.cs b/Remotion/Globalization/Mixins.UnitTests/IGlobalizationServiceTest.cs
index 68d8dcc6de..68ba8ad78a 100644
--- a/Remotion/Globalization/Mixins.UnitTests/IGlobalizationServiceTest.cs
+++ b/Remotion/Globalization/Mixins.UnitTests/IGlobalizationServiceTest.cs
@@ -30,7 +30,7 @@ public class IGlobalizationServiceTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Globalization/UnitTests/IEnumerationGlobalizationServiceTest.cs b/Remotion/Globalization/UnitTests/IEnumerationGlobalizationServiceTest.cs
index 21172f6615..60e5c23025 100644
--- a/Remotion/Globalization/UnitTests/IEnumerationGlobalizationServiceTest.cs
+++ b/Remotion/Globalization/UnitTests/IEnumerationGlobalizationServiceTest.cs
@@ -30,7 +30,7 @@ public class IEnumerationGlobalizationServiceTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Globalization/UnitTests/IGlobalizationServiceTest.cs b/Remotion/Globalization/UnitTests/IGlobalizationServiceTest.cs
index ef2985f3c0..f35a8870da 100644
--- a/Remotion/Globalization/UnitTests/IGlobalizationServiceTest.cs
+++ b/Remotion/Globalization/UnitTests/IGlobalizationServiceTest.cs
@@ -29,7 +29,7 @@ public class IGlobalizationServiceTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Globalization/UnitTests/IMemberInformationGlobalizationServiceTest.cs b/Remotion/Globalization/UnitTests/IMemberInformationGlobalizationServiceTest.cs
index b70ea57b2c..ad82f01b32 100644
--- a/Remotion/Globalization/UnitTests/IMemberInformationGlobalizationServiceTest.cs
+++ b/Remotion/Globalization/UnitTests/IMemberInformationGlobalizationServiceTest.cs
@@ -30,7 +30,7 @@ public class IMemberInformationGlobalizationServiceTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Globalization/UnitTests/Implementation/IResourceManagerFactoryTest.cs b/Remotion/Globalization/UnitTests/Implementation/IResourceManagerFactoryTest.cs
index 9b6bc47389..938de13baa 100644
--- a/Remotion/Globalization/UnitTests/Implementation/IResourceManagerFactoryTest.cs
+++ b/Remotion/Globalization/UnitTests/Implementation/IResourceManagerFactoryTest.cs
@@ -29,7 +29,7 @@ public class IResourceManagerFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Globalization/UnitTests/Implementation/IResourceManagerResolverTest.cs b/Remotion/Globalization/UnitTests/Implementation/IResourceManagerResolverTest.cs
index cb9df91209..ec783a8eb3 100644
--- a/Remotion/Globalization/UnitTests/Implementation/IResourceManagerResolverTest.cs
+++ b/Remotion/Globalization/UnitTests/Implementation/IResourceManagerResolverTest.cs
@@ -29,7 +29,7 @@ public class IResourceManagerResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/Core/Context/DeclarativeConfigurationBuilder.cs b/Remotion/Mixins/Core/Context/DeclarativeConfigurationBuilder.cs
index c00e50c2c6..64a54b12f4 100644
--- a/Remotion/Mixins/Core/Context/DeclarativeConfigurationBuilder.cs
+++ b/Remotion/Mixins/Core/Context/DeclarativeConfigurationBuilder.cs
@@ -25,6 +25,7 @@
using Remotion.Mixins.Context.FluentBuilders;
using Remotion.Reflection;
using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.ServiceLocation;
using Remotion.Utilities;
namespace Remotion.Mixins.Context
@@ -126,16 +127,11 @@ public static MixinConfiguration BuildConfigurationFromTypes (MixinConfiguration
///
public static MixinConfiguration BuildDefaultConfiguration ()
{
- ICollection types = GetTypeDiscoveryService().GetTypes(null, false);
+ var typeDiscoveryService = SafeServiceLocator.Current.GetInstance();
+ ICollection types = typeDiscoveryService.GetTypes(null, false);
return BuildConfigurationFromTypes(null, types.Cast());
}
- // Separate method because of tests
- private static ITypeDiscoveryService GetTypeDiscoveryService ()
- {
- return ContextAwareTypeUtility.GetTypeDiscoveryService();
- }
-
private readonly MixinConfiguration? _parentConfiguration;
private readonly HashSet _allTypes = new HashSet();
diff --git a/Remotion/Mixins/Samples/DynamicMixinBuilding/UnitTests/DynamicMixinBuilderTest.cs b/Remotion/Mixins/Samples/DynamicMixinBuilding/UnitTests/DynamicMixinBuilderTest.cs
index ea88d0125e..c0790b7b66 100644
--- a/Remotion/Mixins/Samples/DynamicMixinBuilding/UnitTests/DynamicMixinBuilderTest.cs
+++ b/Remotion/Mixins/Samples/DynamicMixinBuilding/UnitTests/DynamicMixinBuilderTest.cs
@@ -74,7 +74,7 @@ public void SetUp ()
// Set new default pipeline to avoid cached types to influence each other.
var pipelineRegistry = CreatePipelineRegistry();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
// ReSharper disable once RedundantTypeArgumentsOfMethod
serviceLocator.RegisterSingle(() => pipelineRegistry);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/IObjectFactoryImplementationTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/IObjectFactoryImplementationTest.cs
index 7fe576bb70..cd13519c83 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/IObjectFactoryImplementationTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/IObjectFactoryImplementationTest.cs
@@ -29,7 +29,7 @@ public class IObjectFactoryImplementationTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/ITypeFactoryImplementationTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/ITypeFactoryImplementationTest.cs
index 26fb56b21a..51c0d05af6 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/ITypeFactoryImplementationTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/ITypeFactoryImplementationTest.cs
@@ -29,7 +29,7 @@ public class ITypeFactoryImplementationTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/MixinTypeCodeGeneration/LoadingFlushedCodeTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/MixinTypeCodeGeneration/LoadingFlushedCodeTest.cs
index 444047b38a..cfaf6844be 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/MixinTypeCodeGeneration/LoadingFlushedCodeTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/MixinTypeCodeGeneration/LoadingFlushedCodeTest.cs
@@ -39,7 +39,7 @@ public override void SetUp ()
// Use a dedicated pipeline to ensure that this test does not interfere with other tests.
_savedPipeline = CreatePipeline();
var pipelineRegistry = new DefaultPipelineRegistry(_savedPipeline);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => pipelineRegistry);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs
index fe96b5c0c5..49f8100c92 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/IntegrationTests/ServiceLocation/ParticipantRegistrationTest.cs
@@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.ComponentModel.Design;
using System.Linq;
using NUnit.Framework;
using Remotion.Mixins.CodeGeneration.TypePipe;
@@ -26,19 +27,27 @@ namespace Remotion.Mixins.UnitTests.Core.CodeGeneration.IntegrationTests.Service
[TestFixture]
public class ParticipantRegistrationTest
{
+ private DefaultServiceLocator _serviceLocator;
+
+ [SetUp]
+ public void SetUp ()
+ {
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
+ }
+
[Test]
public void DefaultServiceLocator_ReturnsMixinParticipant ()
{
- var serviceLocator = DefaultServiceLocator.Create();
- var participants = serviceLocator.GetAllInstances().ToArray();
+ var participants = _serviceLocator.GetAllInstances().ToArray();
Assert.That(participants.Select(p => p.GetType()), Is.EqualTo(new[] { typeof(MixinParticipant) }));
}
[Test]
- public void DefaultServiceConfigurationDiscoveryService_ReturnsMixinParticpant ()
+ public void DefaultServiceConfigurationDiscoveryService_ReturnsMixinParticipant ()
{
- var discoveryService = DefaultServiceConfigurationDiscoveryService.Create();
- var participantService = discoveryService.GetDefaultConfiguration(typeof(IParticipant));
+ var typeDiscoveryService = _serviceLocator.GetInstance();
+ var defaultServiceConfigurationDiscoveryService = new DefaultServiceConfigurationDiscoveryService(typeDiscoveryService);
+ var participantService = defaultServiceConfigurationDiscoveryService.GetDefaultConfiguration(typeof(IParticipant));
Assert.That(participantService, Is.Not.Null);
Assert.That(participantService.ImplementationInfos.Select(i => i.ImplementationType), Is.EqualTo(new[] { typeof(MixinParticipant) }));
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/SetUpFixture.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/SetUpFixture.cs
index b54748acc4..35fa0a233b 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/SetUpFixture.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/SetUpFixture.cs
@@ -17,6 +17,7 @@
using System;
using NUnit.Framework;
using Remotion.Development.UnitTesting;
+using Remotion.Development.UnitTesting.PEVerifyPathSources;
using Remotion.Mixins.CodeGeneration;
using Remotion.Mixins.CodeGeneration.TypePipe;
using Remotion.ServiceLocation;
@@ -98,7 +99,7 @@ public void OneTimeSetUp ()
s_pipeline = defaultPipelineFactory.Create(pipelineName, settings, participants);
#endif
var pipelineRegistry = new DefaultPipelineRegistry(s_pipeline);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => pipelineRegistry);
s_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
}
@@ -117,7 +118,15 @@ public void OneTimeTearDown ()
}
#if ENABLE_PEVERIFY
- s_assemblyTrackingCodeManager.PeVerifySavedAssemblies();
+ // Instead of using the TypePipe-provided version of PEVerify, we supply the latest version available in the Framework codebase
+ // to decouple the installed version of Windows Kit from the versions supported by TypePipe.
+
+ // s_assemblyTrackingCodeManager.PeVerifySavedAssemblies();
+
+ var peVerifier = PEVerifier.CreateDefault();
+ var savedAssemblies = s_assemblyTrackingCodeManager.SavedAssemblies;
+ foreach (var savedAssembly in savedAssemblies)
+ peVerifier.VerifyPEFile(savedAssembly, PEVerifyVersion.DotNet4);
#endif
if (!s_skipDeletion)
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConcreteTypeMetadataImporterTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConcreteTypeMetadataImporterTest.cs
index d3e29a775a..fb77414cfa 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConcreteTypeMetadataImporterTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConcreteTypeMetadataImporterTest.cs
@@ -30,7 +30,7 @@ public class IConcreteTypeMetadataImporterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConfigurationProviderTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConfigurationProviderTest.cs
index 2659b3fd7c..b83319fee4 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConfigurationProviderTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IConfigurationProviderTest.cs
@@ -30,7 +30,7 @@ public class IConfigurationProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IMixinTypeProviderTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IMixinTypeProviderTest.cs
index c4f31f3af5..e351a92556 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IMixinTypeProviderTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/IMixinTypeProviderTest.cs
@@ -30,7 +30,7 @@ public class IMixinTypeProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/INextCallProxyGeneratorTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/INextCallProxyGeneratorTest.cs
index e6c79f3ba1..2a52ad1a9e 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/INextCallProxyGeneratorTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/INextCallProxyGeneratorTest.cs
@@ -29,7 +29,7 @@ public class INextCallProxyGeneratorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/ITargetTypeModifierTest.cs b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/ITargetTypeModifierTest.cs
index 997df56dac..3e2362ae15 100644
--- a/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/ITargetTypeModifierTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/CodeGeneration/TypePipe/ITargetTypeModifierTest.cs
@@ -30,7 +30,7 @@ public class ITargetTypeModifierTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/Context/DeclarativeConfigurationBuilder_IntegrationTests/DeclarativeConfigurationBuilderGeneralTest.cs b/Remotion/Mixins/UnitTests/Core/Context/DeclarativeConfigurationBuilder_IntegrationTests/DeclarativeConfigurationBuilderGeneralTest.cs
index bfdc495380..ca83eee541 100644
--- a/Remotion/Mixins/UnitTests/Core/Context/DeclarativeConfigurationBuilder_IntegrationTests/DeclarativeConfigurationBuilderGeneralTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/Context/DeclarativeConfigurationBuilder_IntegrationTests/DeclarativeConfigurationBuilderGeneralTest.cs
@@ -15,6 +15,7 @@
// along with re-motion; if not, see http://www.gnu.org/licenses.
//
using System;
+using System.ComponentModel.Design;
using System.IO;
using System.Reflection;
using NUnit.Framework;
@@ -24,6 +25,7 @@
using Remotion.Reflection.TypeDiscovery;
using Remotion.Reflection.TypeDiscovery.AssemblyFinding;
using Remotion.Reflection.TypeDiscovery.AssemblyLoading;
+using Remotion.ServiceLocation;
namespace Remotion.Mixins.UnitTests.Core.Context.DeclarativeConfigurationBuilder_IntegrationTests
{
@@ -129,11 +131,7 @@ public void IgnoreForMixinConfiguration ()
[Test]
public void FilterExcludesSystemAssemblies ()
{
- var service =
- (AssemblyFinderTypeDiscoveryService)PrivateInvoke.InvokeNonPublicStaticMethod(typeof(DeclarativeConfigurationBuilder), "GetTypeDiscoveryService");
-
- var assemblyFinder = GetAssemblyFinder(service);
- var filter = ((FilteringAssemblyLoader)assemblyFinder.AssemblyLoader).Filter;
+ var filter = SafeServiceLocator.Current.GetInstance();
Assert.That(filter.ShouldConsiderAssembly(typeof(object).Assembly.GetName()), Is.False);
Assert.That(filter.ShouldConsiderAssembly(typeof(Uri).Assembly.GetName()), Is.False);
@@ -142,30 +140,17 @@ public void FilterExcludesSystemAssemblies ()
[Test]
public void FilterExcludesGeneratedAssemblies ()
{
- var service =
- (AssemblyFinderTypeDiscoveryService)PrivateInvoke.InvokeNonPublicStaticMethod(typeof(DeclarativeConfigurationBuilder), "GetTypeDiscoveryService");
-
- var assemblyFinder = GetAssemblyFinder(service);
- var filter = ((FilteringAssemblyLoader)assemblyFinder.AssemblyLoader).Filter;
+ var filter = SafeServiceLocator.Current.GetInstance();
Assembly generatedAssembly = TypeGenerationHelper.ForceTypeGeneration(typeof(object)).Assembly;
Assert.That(filter.ShouldConsiderAssembly(generatedAssembly.GetName()), Is.False);
}
- private AssemblyFinder GetAssemblyFinder (AssemblyFinderTypeDiscoveryService service)
- {
- return (AssemblyFinder)((CachingAssemblyFinderDecorator)service.AssemblyFinder).InnerFinder;
- }
-
[Test]
public void FilterIncludesAllNormalAssemblies ()
{
- var service =
- (AssemblyFinderTypeDiscoveryService)PrivateInvoke.InvokeNonPublicStaticMethod(typeof(DeclarativeConfigurationBuilder), "GetTypeDiscoveryService");
-
- var assemblyFinder = GetAssemblyFinder(service);
- var filter = ((FilteringAssemblyLoader)assemblyFinder.AssemblyLoader).Filter;
+ var filter = SafeServiceLocator.Current.GetInstance();
Assert.That(filter.ShouldConsiderAssembly(typeof(DeclarativeConfigurationBuilderGeneralTest).Assembly.GetName()), Is.True);
Assert.That(filter.ShouldConsiderAssembly(typeof(DeclarativeConfigurationBuilder).Assembly.GetName()), Is.True);
diff --git a/Remotion/Mixins/UnitTests/Core/Definitions/Building/ITargetClassDefinitionBuilderTest.cs b/Remotion/Mixins/UnitTests/Core/Definitions/Building/ITargetClassDefinitionBuilderTest.cs
index c850b774a6..cae0ff7752 100644
--- a/Remotion/Mixins/UnitTests/Core/Definitions/Building/ITargetClassDefinitionBuilderTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/Definitions/Building/ITargetClassDefinitionBuilderTest.cs
@@ -13,7 +13,7 @@ public class ITargetClassDefinitionBuilderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/Definitions/DependencySorting/IMixinDefinitionSorterTest.cs b/Remotion/Mixins/UnitTests/Core/Definitions/DependencySorting/IMixinDefinitionSorterTest.cs
index b0030b58b7..b449038ba2 100644
--- a/Remotion/Mixins/UnitTests/Core/Definitions/DependencySorting/IMixinDefinitionSorterTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/Definitions/DependencySorting/IMixinDefinitionSorterTest.cs
@@ -13,7 +13,7 @@ public class IMixinDefinitionSorterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Mixins/UnitTests/Core/Validation/GeneralValidationTest.cs b/Remotion/Mixins/UnitTests/Core/Validation/GeneralValidationTest.cs
index e0c3a4ac9e..7a6c34ee43 100644
--- a/Remotion/Mixins/UnitTests/Core/Validation/GeneralValidationTest.cs
+++ b/Remotion/Mixins/UnitTests/Core/Validation/GeneralValidationTest.cs
@@ -16,6 +16,7 @@
//
using System;
using System.Collections.Generic;
+using System.ComponentModel.Design;
using System.Linq;
using NUnit.Framework;
using Remotion.Development.Mixins.Validation;
@@ -27,6 +28,7 @@
using Remotion.Mixins.Validation;
using Remotion.Mixins.Validation.Rules;
using Remotion.Reflection;
+using Remotion.ServiceLocation;
namespace Remotion.Mixins.UnitTests.Core.Validation
{
@@ -40,9 +42,10 @@ public void SetUp ()
{
var validationTestDomainNamespace = typeof(AbstractMixinWithoutBase).Namespace;
var globalTestDomainNamespace = typeof(BaseType1).Namespace;
- var typeDiscoveryService = FilteringTypeDiscoveryService.CreateFromNamespaceWhitelist(
- ContextAwareTypeUtility.GetTypeDiscoveryService(), validationTestDomainNamespace, globalTestDomainNamespace);
- var types = typeDiscoveryService.GetTypes(null, false);
+ var typeDiscoveryService = SafeServiceLocator.Current.GetInstance();
+ var filteringTypeDiscoveryService = FilteringTypeDiscoveryService.CreateFromNamespaceWhitelist(
+ typeDiscoveryService, validationTestDomainNamespace, globalTestDomainNamespace);
+ var types = filteringTypeDiscoveryService.GetTypes(null, false);
_configurationScope = DeclarativeConfigurationBuilder.BuildConfigurationFromTypes(null, types.Cast()).EnterScope();
}
diff --git a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs
index 74f023d5fa..4881879550 100644
--- a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs
+++ b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs
@@ -31,7 +31,7 @@ public class IBindablePropertReadAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs
index 08335c8ff6..62d6957ff6 100644
--- a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs
+++ b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs
@@ -31,7 +31,7 @@ public class IBindablePropertyWriteAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IntegrationTest.cs b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IntegrationTest.cs
index ea000b4438..8ab3f3ae1f 100644
--- a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IntegrationTest.cs
+++ b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/IntegrationTest.cs
@@ -45,7 +45,7 @@ public override void SetUp ()
_principalProviderStub.Setup(stub => stub.GetPrincipal()).Returns(_securityPrincipalStub.Object);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _securityProviderStub.Object);
serviceLocator.RegisterSingle(() => _principalProviderStub.Object);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyReadAccessStrategyTest.cs b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyReadAccessStrategyTest.cs
index 5849bf8599..d4344e84d4 100644
--- a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyReadAccessStrategyTest.cs
+++ b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyReadAccessStrategyTest.cs
@@ -56,7 +56,7 @@ public override void SetUp ()
var principalProviderStub = new Mock();
principalProviderStub.Setup(_ => _.GetPrincipal()).Returns(_principalStub.Object);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _securityProviderStub.Object);
serviceLocator.RegisterSingle(() => principalProviderStub.Object);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyWriteAccessStrategyTest.cs b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyWriteAccessStrategyTest.cs
index b165731718..4a2d3be7ea 100644
--- a/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyWriteAccessStrategyTest.cs
+++ b/Remotion/ObjectBinding/Security.UnitTests/BindableObject/SecurityBasedBindablePropertyWriteAccessStrategyTest.cs
@@ -56,7 +56,7 @@ public override void SetUp ()
var principalProviderStub = new Mock();
principalProviderStub.Setup(_ => _.GetPrincipal()).Returns(_principalStub.Object);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _securityProviderStub.Object);
serviceLocator.RegisterSingle(() => principalProviderStub.Object);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceIntegrationTest.cs b/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceIntegrationTest.cs
index 9143aa05a6..5c148130d3 100644
--- a/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceIntegrationTest.cs
+++ b/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceIntegrationTest.cs
@@ -39,7 +39,7 @@ public override void SetUp ()
{
base.SetUp();
- _defaultServiceLocator = DefaultServiceLocator.Create();
+ _defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
_globalizationService = _defaultServiceLocator.GetInstance();
var bindableObjectClass = BindableObjectProviderTestHelper.GetBindableObjectClass(typeof(ClassWithResources));
_targetType = TypeAdapter.Create(bindableObjectClass.TargetType);
diff --git a/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceTest.cs b/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceTest.cs
index 5962be3fda..9bc8379ecc 100644
--- a/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceTest.cs
+++ b/Remotion/ObjectBinding/UnitTests/BindableObject/BindableObjectGlobalizationServiceTest.cs
@@ -29,7 +29,7 @@ public class BindableObjectGlobalizationServiceTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs b/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs
index 9f941a8343..84c49db622 100644
--- a/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs
+++ b/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertReadAccessStrategyTest.cs
@@ -29,7 +29,7 @@ public class IBindablePropertReadAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs b/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs
index 37714690c2..16abe9981c 100644
--- a/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs
+++ b/Remotion/ObjectBinding/UnitTests/BindableObject/IBindablePropertyWriteAccessStrategyTest.cs
@@ -29,7 +29,7 @@ public class IBindablePropertyWriteAccessStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/UnitTests/BusinessObjectPropertyConstraints/IBusinessObjectPropertyConstraintProviderTest.cs b/Remotion/ObjectBinding/UnitTests/BusinessObjectPropertyConstraints/IBusinessObjectPropertyConstraintProviderTest.cs
index 252d8393b7..583ae717af 100644
--- a/Remotion/ObjectBinding/UnitTests/BusinessObjectPropertyConstraints/IBusinessObjectPropertyConstraintProviderTest.cs
+++ b/Remotion/ObjectBinding/UnitTests/BusinessObjectPropertyConstraints/IBusinessObjectPropertyConstraintProviderTest.cs
@@ -29,7 +29,7 @@ public class IBusinessObjectPropertyConstraintProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Validation.UnitTests/IBusinessObjectPropertyConstraintProviderTest.cs b/Remotion/ObjectBinding/Validation.UnitTests/IBusinessObjectPropertyConstraintProviderTest.cs
index 11dd2b6a36..2312db2cd4 100644
--- a/Remotion/ObjectBinding/Validation.UnitTests/IBusinessObjectPropertyConstraintProviderTest.cs
+++ b/Remotion/ObjectBinding/Validation.UnitTests/IBusinessObjectPropertyConstraintProviderTest.cs
@@ -30,7 +30,7 @@ public class IBusinessObjectPropertyConstraintProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Validation.UnitTests/IPropertyValidatorToBusinessObjectPropertyConstraintConverterTest.cs b/Remotion/ObjectBinding/Validation.UnitTests/IPropertyValidatorToBusinessObjectPropertyConstraintConverterTest.cs
index e70ce5aab7..aa1587f3f1 100644
--- a/Remotion/ObjectBinding/Validation.UnitTests/IPropertyValidatorToBusinessObjectPropertyConstraintConverterTest.cs
+++ b/Remotion/ObjectBinding/Validation.UnitTests/IPropertyValidatorToBusinessObjectPropertyConstraintConverterTest.cs
@@ -29,7 +29,7 @@ public class IPropertyValidatorToBusinessObjectPropertyConstraintConverterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.Compatibility.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs b/Remotion/ObjectBinding/Web.Compatibility.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs
index 2e568508d8..8280db07e6 100644
--- a/Remotion/ObjectBinding/Web.Compatibility.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs
+++ b/Remotion/ObjectBinding/Web.Compatibility.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs
@@ -29,7 +29,7 @@ public class IBusinessObjectBoundEditableWebControlValidatorConfigurationTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite.NetFramework/Global.asax.cs b/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite.NetFramework/Global.asax.cs
index b85bf4c36d..87d3c39a01 100644
--- a/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite.NetFramework/Global.asax.cs
+++ b/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite.NetFramework/Global.asax.cs
@@ -101,7 +101,7 @@ private static void RegisterResourceVirtualPathProvider ()
private void SetRenderingFeatures (IRenderingFeatures renderingFeatures, ResourceTheme resourceTheme)
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => renderingFeatures);
serviceLocator.RegisterSingle(() => resourceTheme);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
diff --git a/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite/Global.asax.cs b/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite/Global.asax.cs
index d9d9dc64e0..11fd8ef22e 100644
--- a/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite/Global.asax.cs
+++ b/Remotion/ObjectBinding/Web.Development.WebTesting.TestSite/Global.asax.cs
@@ -118,7 +118,7 @@ private static void RegisterResourceVirtualPathProvider ()
private void SetRenderingFeatures (IRenderingFeatures renderingFeatures, ResourceTheme resourceTheme)
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => renderingFeatures);
serviceLocator.RegisterSingle(() => resourceTheme);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
diff --git a/Remotion/ObjectBinding/Web.Test/Global.asax.cs b/Remotion/ObjectBinding/Web.Test/Global.asax.cs
index 00eb00e22d..6a915bf444 100644
--- a/Remotion/ObjectBinding/Web.Test/Global.asax.cs
+++ b/Remotion/ObjectBinding/Web.Test/Global.asax.cs
@@ -61,7 +61,7 @@ protected void Application_Start (Object sender, EventArgs e)
string objectPath = Server.MapPath("~/objects");
if (!Directory.Exists(objectPath))
Directory.CreateDirectory(objectPath);
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
//defaultServiceLocator.RegisterSingle(() => new ResourceTheme.NovaGray());
diff --git a/Remotion/ObjectBinding/Web.UnitTests/SetUpFixture.cs b/Remotion/ObjectBinding/Web.UnitTests/SetUpFixture.cs
index dd7ba81e45..f641473a02 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/SetUpFixture.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/SetUpFixture.cs
@@ -41,7 +41,7 @@ public void OneTimeSetUp ()
{
XmlNodeExtensions.Helper = new HtmlHelper();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => new FakeInfrastructureResourceUrlFactory());
serviceLocator.RegisterSingle(() => new FakeScriptUtility());
serviceLocator.RegisterSingle(() => new FakeResourceUrlFactory());
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueRendererTest.cs
index e067db9277..2ca2938365 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocBooleanValueRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueResourceSetFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueResourceSetFactoryTest.cs
index 307f5932fb..8a832749fb 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueResourceSetFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocBooleanValueResourceSetFactoryTest.cs
@@ -30,7 +30,7 @@ public class IBocBooleanValueResourceSetFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocCheckBoxRendererFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocCheckBoxRendererFactoryTest.cs
index 7411c12a75..a9edcef93d 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocCheckBoxRendererFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Rendering/IBocCheckBoxRendererFactoryTest.cs
@@ -29,7 +29,7 @@ public class IBocCheckBoxRendererFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocBooleanValueValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocBooleanValueValidatorFactoryTest.cs
index 8ecc035f99..da082579fc 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocBooleanValueValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocBooleanValueValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocBooleanValueValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocCheckBoxValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocCheckBoxValidatorFactoryTest.cs
index f63fb63cc7..476f269a80 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocCheckBoxValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocBooleanValueImplementation/Validation/IBocCheckBoxValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocCheckBoxValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/IDateTimeFormatterTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/IDateTimeFormatterTest.cs
index 52e23e1685..b73efca9af 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/IDateTimeFormatterTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/IDateTimeFormatterTest.cs
@@ -29,7 +29,7 @@ public class IDateTimeFormatterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Rendering/IBocDateTimeValueRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Rendering/IBocDateTimeValueRendererTest.cs
index 36c199b4cb..6e6efb2b28 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Rendering/IBocDateTimeValueRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Rendering/IBocDateTimeValueRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocDateTimeValueRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Validation/IBocDateTimeValueValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Validation/IBocDateTimeValueValidatorFactoryTest.cs
index e963b9cca0..6d3c9db8a8 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Validation/IBocDateTimeValueValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocDateTimeValueImplementation/Validation/IBocDateTimeValueValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocDateTimeValueValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Rendering/IBocEnumValueRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Rendering/IBocEnumValueRendererTest.cs
index 3b05354ab9..ea4e1e8073 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Rendering/IBocEnumValueRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Rendering/IBocEnumValueRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocEnumValueRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Validation/IBocEnumValueValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Validation/IBocEnumValueValidatorFactoryTest.cs
index ace21506a7..7a497e8383 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Validation/IBocEnumValueValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocEnumValueImplementation/Validation/IBocEnumValueValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocEnumValueValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererArrayBuilderTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererArrayBuilderTest.cs
index cff232b777..f65a31370a 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererArrayBuilderTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererArrayBuilderTest.cs
@@ -38,7 +38,7 @@ public class BocColumnRendererArrayBuilderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
_stubColumnDefinition = new StubColumnDefinition();
_stubValueColumnDefinition = new StubValueColumnDefinition();
}
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererBaseTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererBaseTest.cs
index 4296fce5a6..220c6c411a 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererBaseTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocColumnRendererBaseTest.cs
@@ -70,7 +70,7 @@ public void SetUp ()
[Test]
public void IsNull ()
{
- Assert.That(Column.GetRenderer(DefaultServiceLocator.Create()).IsNull, Is.False);
+ Assert.That(Column.GetRenderer(DefaultServiceLocator.CreateWithBootstrappedServices()).IsNull, Is.False);
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocListCssClassDefinitionTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocListCssClassDefinitionTest.cs
index dae66bbc0f..6b82316dbf 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocListCssClassDefinitionTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/BocListCssClassDefinitionTest.cs
@@ -29,7 +29,7 @@ public class BocListCssClassDefinitionTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCommandColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCommandColumnRendererTest.cs
index c252b02a5d..ecb0b59093 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCommandColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCommandColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocCommandColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCompoundColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCompoundColumnRendererTest.cs
index 885212659e..e47fefdde9 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCompoundColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCompoundColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocCompoundColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCustomColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCustomColumnRendererTest.cs
index 4e4f3b8a33..6f3e9ba22f 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCustomColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocCustomColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocCustomColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocDropDownMenuColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocDropDownMenuColumnRendererTest.cs
index 9f70b76778..aecbb28678 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocDropDownMenuColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocDropDownMenuColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocDropDownMenuColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocIndexColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocIndexColumnRendererTest.cs
index 6e592d1572..fc9e05d618 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocIndexColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocIndexColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocIndexColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListMenuBlockRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListMenuBlockRendererTest.cs
index c04d0956b8..642711e463 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListMenuBlockRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListMenuBlockRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocListMenuBlockRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListNavigationBlockRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListNavigationBlockRendererTest.cs
index 04466aff41..dc935b323d 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListNavigationBlockRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListNavigationBlockRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocListNavigationBlockRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListRendererTest.cs
index 03274ed0f2..0730313694 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocListRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListTableBlockRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListTableBlockRendererTest.cs
index 501b49f996..0cca5bc4e5 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListTableBlockRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocListTableBlockRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocListTableBlockRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowEditModeColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowEditModeColumnRendererTest.cs
index 18729d97b0..0d9e9ae5c0 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowEditModeColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowEditModeColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocRowEditModeColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowRendererTest.cs
index 4ee56852a0..5c2f3d347c 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocRowRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocRowRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSelectorColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSelectorColumnRendererTest.cs
index e5e4325f7f..2d59ddc93c 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSelectorColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSelectorColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocSelectorColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSimpleColumnRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSimpleColumnRendererTest.cs
index 21d83abb5d..4dfe3fb87d 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSimpleColumnRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IBocSimpleColumnRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocSimpleColumnRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IsColumnVisible_BocColumnRendererArrayBuilderTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IsColumnVisible_BocColumnRendererArrayBuilderTest.cs
index 0304201c94..7e24d896f6 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IsColumnVisible_BocColumnRendererArrayBuilderTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Rendering/IsColumnVisible_BocColumnRendererArrayBuilderTest.cs
@@ -33,7 +33,7 @@ public class IsColumnVisible_BocColumnRendererArrayBuilderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Validation/IBocListValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Validation/IBocListValidatorFactoryTest.cs
index 7fe585cda8..57a32a7258 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Validation/IBocListValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocListImplementation/Validation/IBocListValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocListValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocAutoCompleteReferenceValueRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocAutoCompleteReferenceValueRendererTest.cs
index 3201a64e39..77e5cd5ffa 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocAutoCompleteReferenceValueRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocAutoCompleteReferenceValueRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocAutoCompleteReferenceValueRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocReferenceValueRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocReferenceValueRendererTest.cs
index b644ee587f..c8d1b85242 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocReferenceValueRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Rendering/IBocReferenceValueRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocReferenceValueRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocAutoCompleteReferenceValueValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocAutoCompleteReferenceValueValidatorFactoryTest.cs
index 4a202e63fa..4ddd750fce 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocAutoCompleteReferenceValueValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocAutoCompleteReferenceValueValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocAutoCompleteReferenceValueValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocReferenceValueValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocReferenceValueValidatorFactoryTest.cs
index 7fc9f20e6c..c2bfb9a540 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocReferenceValueValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocReferenceValueImplementation/Validation/IBocReferenceValueValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocReferenceValueValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocMultilineTextValueRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocMultilineTextValueRendererTest.cs
index c5457608fb..3cb20f85e9 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocMultilineTextValueRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocMultilineTextValueRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocMultilineTextValueRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocTextValueRendererTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocTextValueRendererTest.cs
index 537898ae2a..3d0459c825 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocTextValueRendererTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueImplementation/Rendering/IBocTextValueRendererTest.cs
@@ -29,7 +29,7 @@ public class IBocTextValueRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocMultilineTextValueValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocMultilineTextValueValidatorFactoryTest.cs
index adeb3dc8f7..8c20c6c671 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocMultilineTextValueValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocMultilineTextValueValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocMultilineTextValueValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocTextValueValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocTextValueValidatorFactoryTest.cs
index c3d0751ad9..02d6547c87 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocTextValueValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/BocTextValueTests/Validation/IBocTextValueValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class IBocTextValueValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IBusinessObjectReferenceDataSourceControlValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IBusinessObjectReferenceDataSourceControlValidatorFactoryTest.cs
index b3560e8321..4d7fc274a1 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IBusinessObjectReferenceDataSourceControlValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IBusinessObjectReferenceDataSourceControlValidatorFactoryTest.cs
@@ -15,7 +15,7 @@ public class IBusinessObjectReferenceDataSourceControlValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IUserControlBindingValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IUserControlBindingValidatorFactoryTest.cs
index 00673eee3f..8ab2d89122 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IUserControlBindingValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/IUserControlBindingValidatorFactoryTest.cs
@@ -31,7 +31,7 @@ public class IUserControlBindingValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocListValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocListValidatorFactoryTest.cs
index 4de3b195be..6364ba1227 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocListValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocListValidatorFactoryTest.cs
@@ -19,7 +19,7 @@ public class ValidationBocListValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocReferenceDataSourceValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocReferenceDataSourceValidatorFactoryTest.cs
index d601786e45..50b7d8a883 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocReferenceDataSourceValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBocReferenceDataSourceValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class ValidationBocReferenceDataSourceValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBusinessObjectBoundEditableWebControlValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBusinessObjectBoundEditableWebControlValidatorFactoryTest.cs
index 2f1e09bae3..f06aab8305 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBusinessObjectBoundEditableWebControlValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationBusinessObjectBoundEditableWebControlValidatorFactoryTest.cs
@@ -31,7 +31,7 @@ public class ValidationBusinessObjectBoundEditableWebControlValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationUserControlBindingValidatorFactoryTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationUserControlBindingValidatorFactoryTest.cs
index 94b2196a71..aaf89cd24c 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationUserControlBindingValidatorFactoryTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/Factories/ValidationUserControlBindingValidatorFactoryTest.cs
@@ -17,7 +17,7 @@ public class ValidationUserControlBindingValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBocListValidationFailureHandlerTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBocListValidationFailureHandlerTest.cs
index a045ebdc82..0d608b8b36 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBocListValidationFailureHandlerTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBocListValidationFailureHandlerTest.cs
@@ -13,7 +13,7 @@ public class IBocListValidationFailureHandlerTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs
index 2e026eb862..c0e9961fb1 100644
--- a/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs
+++ b/Remotion/ObjectBinding/Web.UnitTests/UI/Controls/Validation/IBusinessObjectBoundEditableWebControlValidatorConfigurationTest.cs
@@ -29,7 +29,7 @@ public class IBusinessObjectBoundEditableWebControlValidatorConfigurationTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Security/UnitTests/IFunctionalSecurityStrategyTest.cs b/Remotion/Security/UnitTests/IFunctionalSecurityStrategyTest.cs
index e8316e9558..f3405d6527 100644
--- a/Remotion/Security/UnitTests/IFunctionalSecurityStrategyTest.cs
+++ b/Remotion/Security/UnitTests/IFunctionalSecurityStrategyTest.cs
@@ -28,7 +28,7 @@ public class IFunctionalSecurityStrategyTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Security/UnitTests/IPrincipalProviderTest.cs b/Remotion/Security/UnitTests/IPrincipalProviderTest.cs
index deb8e678f0..7a364e62e4 100644
--- a/Remotion/Security/UnitTests/IPrincipalProviderTest.cs
+++ b/Remotion/Security/UnitTests/IPrincipalProviderTest.cs
@@ -28,7 +28,7 @@ public class IPrincipalProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Security/UnitTests/ISecurityProviderTest.cs b/Remotion/Security/UnitTests/ISecurityProviderTest.cs
index 334cac1670..238e46ee44 100644
--- a/Remotion/Security/UnitTests/ISecurityProviderTest.cs
+++ b/Remotion/Security/UnitTests/ISecurityProviderTest.cs
@@ -28,7 +28,7 @@ public class ISecurityProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Security/UnitTests/Metadata/IMemberResolverTest.cs b/Remotion/Security/UnitTests/Metadata/IMemberResolverTest.cs
index fa2220c6e8..872cf09179 100644
--- a/Remotion/Security/UnitTests/Metadata/IMemberResolverTest.cs
+++ b/Remotion/Security/UnitTests/Metadata/IMemberResolverTest.cs
@@ -29,7 +29,7 @@ public class IMemberResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Security/UnitTests/Metadata/IPermissionProviderTest.cs b/Remotion/Security/UnitTests/Metadata/IPermissionProviderTest.cs
index 2b797c9ab6..190db97607 100644
--- a/Remotion/Security/UnitTests/Metadata/IPermissionProviderTest.cs
+++ b/Remotion/Security/UnitTests/Metadata/IPermissionProviderTest.cs
@@ -29,7 +29,7 @@ public class IPermissionProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Security/UnitTests/SecurityClientTests/CreateSecurityClientFromConfiguration.cs b/Remotion/Security/UnitTests/SecurityClientTests/CreateSecurityClientFromConfiguration.cs
index e643a45b49..4261e09f61 100644
--- a/Remotion/Security/UnitTests/SecurityClientTests/CreateSecurityClientFromConfiguration.cs
+++ b/Remotion/Security/UnitTests/SecurityClientTests/CreateSecurityClientFromConfiguration.cs
@@ -42,7 +42,7 @@ public void SetUp ()
_stubMemberResolver = new Mock();
_stubFunctionalSecurityStrategy = new Mock();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _stubSecurityProvider.Object);
serviceLocator.RegisterSingle(() => _stubPrincipalProvider.Object);
serviceLocator.RegisterSingle(() => _stubPermissionProvider.Object);
diff --git a/Remotion/Validation/Core/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflector.cs b/Remotion/Validation/Core/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflector.cs
index d8f1fb122d..a6f5c3422e 100644
--- a/Remotion/Validation/Core/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflector.cs
+++ b/Remotion/Validation/Core/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflector.cs
@@ -38,25 +38,7 @@ public class DiscoveryServiceBasedValidationRuleCollectorReflector : IValidation
private readonly Lazy> _validationCollectors;
private readonly IValidatedTypeResolver _validatedTypeResolver;
- public static IValidationRuleCollectorReflector Create (ITypeDiscoveryService typeDiscoveryService, IValidatedTypeResolver validatedTypeResolver)
- {
- ArgumentUtility.CheckNotNull("typeDiscoveryService", typeDiscoveryService);
- ArgumentUtility.CheckNotNull("validatedTypeResolver", validatedTypeResolver);
-
- return new DiscoveryServiceBasedValidationRuleCollectorReflector(typeDiscoveryService, validatedTypeResolver);
- }
-
- public DiscoveryServiceBasedValidationRuleCollectorReflector (IValidatedTypeResolver validatedTypeResolver)
- : this(ContextAwareTypeUtility.GetTypeDiscoveryService(), validatedTypeResolver)
- {
- }
-
- public IValidatedTypeResolver ValidatedTypeResolver
- {
- get { return _validatedTypeResolver; }
- }
-
- protected DiscoveryServiceBasedValidationRuleCollectorReflector (
+ public DiscoveryServiceBasedValidationRuleCollectorReflector (
ITypeDiscoveryService typeDiscoveryService,
IValidatedTypeResolver validatedTypeResolver)
{
@@ -68,6 +50,11 @@ protected DiscoveryServiceBasedValidationRuleCollectorReflector (
_validationCollectors = new Lazy>(GetValidationCollectors, LazyThreadSafetyMode.ExecutionAndPublication);
}
+ public IValidatedTypeResolver ValidatedTypeResolver
+ {
+ get { return _validatedTypeResolver; }
+ }
+
public IEnumerable GetCollectorsForType (Type type)
{
ArgumentUtility.CheckNotNull("type", type);
diff --git a/Remotion/Validation/Globalization.UnitTests/IValidationMessageFactoryTest.cs b/Remotion/Validation/Globalization.UnitTests/IValidationMessageFactoryTest.cs
index 945a59199f..2e2f6ac938 100644
--- a/Remotion/Validation/Globalization.UnitTests/IValidationMessageFactoryTest.cs
+++ b/Remotion/Validation/Globalization.UnitTests/IValidationMessageFactoryTest.cs
@@ -30,7 +30,7 @@ public class IValidationMessageFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/IntegrationTests/IntegrationTestBase.cs b/Remotion/Validation/IntegrationTests/IntegrationTestBase.cs
index a783616946..bfc67cb47b 100644
--- a/Remotion/Validation/IntegrationTests/IntegrationTestBase.cs
+++ b/Remotion/Validation/IntegrationTests/IntegrationTestBase.cs
@@ -38,7 +38,7 @@ public abstract class IntegrationTestBase
[SetUp]
public virtual void SetUp ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
MemoryAppender = new MemoryAppender();
diff --git a/Remotion/Validation/Mixins.IntegrationTests/IntegrationTestBase.cs b/Remotion/Validation/Mixins.IntegrationTests/IntegrationTestBase.cs
index 91d09343de..fbaffebd14 100644
--- a/Remotion/Validation/Mixins.IntegrationTests/IntegrationTestBase.cs
+++ b/Remotion/Validation/Mixins.IntegrationTests/IntegrationTestBase.cs
@@ -36,7 +36,7 @@ public abstract class IntegrationTestBase
[SetUp]
public virtual void SetUp ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
MemoryAppender = new MemoryAppender();
diff --git a/Remotion/Validation/Mixins.UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs b/Remotion/Validation/Mixins.UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs
index deaf1d5fbb..1d3829efe7 100644
--- a/Remotion/Validation/Mixins.UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs
+++ b/Remotion/Validation/Mixins.UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs
@@ -54,7 +54,7 @@ public void GetValidationRuleCollectors_WithFakeTypeDiscoveryService ()
};
_typeDiscoveryServiceStub.Setup(stub => stub.GetTypes(typeof(IValidationRuleCollector), false)).Returns(appliedWithAttributeTypes);
- var typeCollectorProvider = DiscoveryServiceBasedValidationRuleCollectorReflector.Create(
+ var typeCollectorProvider = new DiscoveryServiceBasedValidationRuleCollectorReflector(
_typeDiscoveryServiceStub.Object,
new MixinTypeAwareValidatedTypeResolverDecorator(
new ClassTypeAwareValidatedTypeResolverDecorator(
diff --git a/Remotion/Validation/Mixins.UnitTests/Implementation/IInvolvedTypeProviderTest.cs b/Remotion/Validation/Mixins.UnitTests/Implementation/IInvolvedTypeProviderTest.cs
index 4c1b15ddf4..fd87488bc4 100644
--- a/Remotion/Validation/Mixins.UnitTests/Implementation/IInvolvedTypeProviderTest.cs
+++ b/Remotion/Validation/Mixins.UnitTests/Implementation/IInvolvedTypeProviderTest.cs
@@ -30,7 +30,7 @@ public class IInvolvedTypeProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/Mixins.UnitTests/Implementation/IValidatedTypeResolverTest.cs b/Remotion/Validation/Mixins.UnitTests/Implementation/IValidatedTypeResolverTest.cs
index e1306bdf02..2fd59ee2a0 100644
--- a/Remotion/Validation/Mixins.UnitTests/Implementation/IValidatedTypeResolverTest.cs
+++ b/Remotion/Validation/Mixins.UnitTests/Implementation/IValidatedTypeResolverTest.cs
@@ -30,7 +30,7 @@ public class IValidatedTypeResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs b/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs
index d44be29df9..927589dbd6 100644
--- a/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs
+++ b/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs
@@ -31,7 +31,7 @@ public class IValidationRuleCollectorValidatorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationTypeFilterTest.cs b/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationTypeFilterTest.cs
index 32e9cc515a..fba1a9c42b 100644
--- a/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationTypeFilterTest.cs
+++ b/Remotion/Validation/Mixins.UnitTests/Implementation/IValidationTypeFilterTest.cs
@@ -31,7 +31,7 @@ public class IValidationTypeFilterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/Mixins.UnitTests/Providers/IValidationRuleCollectorProviderTest.cs b/Remotion/Validation/Mixins.UnitTests/Providers/IValidationRuleCollectorProviderTest.cs
index 4f98d2f253..76456ed8c8 100644
--- a/Remotion/Validation/Mixins.UnitTests/Providers/IValidationRuleCollectorProviderTest.cs
+++ b/Remotion/Validation/Mixins.UnitTests/Providers/IValidationRuleCollectorProviderTest.cs
@@ -31,7 +31,7 @@ public class IValidationRuleCollectorProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/IValidatorProviderTest.cs b/Remotion/Validation/UnitTests/IValidatorProviderTest.cs
index 464f9e2a40..4cfd3ae266 100644
--- a/Remotion/Validation/UnitTests/IValidatorProviderTest.cs
+++ b/Remotion/Validation/UnitTests/IValidatorProviderTest.cs
@@ -28,7 +28,7 @@ public class IValidatorProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs b/Remotion/Validation/UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs
index ba1b4fef32..860c0c0377 100644
--- a/Remotion/Validation/UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/DiscoveryServiceBasedValidationRuleCollectorReflectorTest.cs
@@ -19,6 +19,7 @@
using System.Linq;
using Moq;
using NUnit.Framework;
+using Remotion.ServiceLocation;
using Remotion.Validation.Attributes;
using Remotion.Validation.Implementation;
using Remotion.Validation.UnitTests.TestDomain;
@@ -56,7 +57,7 @@ public void GetValidationRuleCollectors_WithFakeTypeDiscoveryService ()
};
_typeDiscoveryServiceStub.Setup(stub => stub.GetTypes(typeof(IValidationRuleCollector), false)).Returns(appliedWithAttributeTypes);
- var typeCollectorProvider = DiscoveryServiceBasedValidationRuleCollectorReflector.Create(
+ var typeCollectorProvider = new DiscoveryServiceBasedValidationRuleCollectorReflector(
_typeDiscoveryServiceStub.Object,
new ClassTypeAwareValidatedTypeResolverDecorator(
new GenericTypeAwareValidatedTypeResolverDecorator(new NullValidatedTypeResolver())));
@@ -82,7 +83,7 @@ public void GetValidationRuleCollectors_InvalidCollectorWithoutGenericArgument (
Assert.That(
() =>
- DiscoveryServiceBasedValidationRuleCollectorReflector.Create(
+ new DiscoveryServiceBasedValidationRuleCollectorReflector(
_typeDiscoveryServiceStub.Object,
validatedTypeResolverStub.Object).GetCollectorsForType(
typeof(IValidationRuleCollector)),
@@ -111,7 +112,7 @@ public void GetValidationRuleCollectors_AbstractAndInterfaceAndOpenGenericCollec
programmaticallyCollectorType
});
- var typeCollectorProvider = DiscoveryServiceBasedValidationRuleCollectorReflector.Create(
+ var typeCollectorProvider = new DiscoveryServiceBasedValidationRuleCollectorReflector(
_typeDiscoveryServiceStub.Object,
new ClassTypeAwareValidatedTypeResolverDecorator(
new GenericTypeAwareValidatedTypeResolverDecorator(new NullValidatedTypeResolver())));
@@ -138,7 +139,7 @@ public void GetValidationRuleCollectors_GenericTypeNotAssignableFromClassType ()
Assert.That(
() =>
- DiscoveryServiceBasedValidationRuleCollectorReflector.Create(
+ new DiscoveryServiceBasedValidationRuleCollectorReflector(
_typeDiscoveryServiceStub.Object,
new ClassTypeAwareValidatedTypeResolverDecorator(
new GenericTypeAwareValidatedTypeResolverDecorator(new NullValidatedTypeResolver()))).GetCollectorsForType(
@@ -153,6 +154,7 @@ public void GetValidationRuleCollectors_GenericTypeNotAssignableFromClassType ()
public void GetValidationRuleCollectors_WithRemotionDiscoveryService ()
{
var typeCollectorProvider = new DiscoveryServiceBasedValidationRuleCollectorReflector(
+ SafeServiceLocator.Current.GetInstance(),
new ClassTypeAwareValidatedTypeResolverDecorator(
new GenericTypeAwareValidatedTypeResolverDecorator(new NullValidatedTypeResolver())));
@@ -178,7 +180,7 @@ public void GetValidationRuleCollectors_NoValidatedTypeFound_ExceptionIsThrown (
var validatedTypeResolverStub = new Mock();
validatedTypeResolverStub.Setup(stub => stub.GetValidatedType(typeof(CustomerValidationRuleCollector1))).Returns((Type)null);
- var typeCollectorProvider = DiscoveryServiceBasedValidationRuleCollectorReflector.Create(_typeDiscoveryServiceStub.Object, validatedTypeResolverStub.Object);
+ var typeCollectorProvider = new DiscoveryServiceBasedValidationRuleCollectorReflector(_typeDiscoveryServiceStub.Object, validatedTypeResolverStub.Object);
Assert.That(
() => typeCollectorProvider.GetCollectorsForType(typeof(Customer)),
Throws.InvalidOperationException
diff --git a/Remotion/Validation/UnitTests/Implementation/IInvolvedTypeProviderTest.cs b/Remotion/Validation/UnitTests/Implementation/IInvolvedTypeProviderTest.cs
index f0f52ec6b5..97bf75fda8 100644
--- a/Remotion/Validation/UnitTests/Implementation/IInvolvedTypeProviderTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IInvolvedTypeProviderTest.cs
@@ -29,7 +29,7 @@ public class IInvolvedTypeProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/IValidatedTypeResolverTest.cs b/Remotion/Validation/UnitTests/Implementation/IValidatedTypeResolverTest.cs
index 820bf69031..1dffe851d8 100644
--- a/Remotion/Validation/UnitTests/Implementation/IValidatedTypeResolverTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IValidatedTypeResolverTest.cs
@@ -29,7 +29,7 @@ public class IValidatedTypeResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/IValidationMessageFactoryTest.cs b/Remotion/Validation/UnitTests/Implementation/IValidationMessageFactoryTest.cs
index e656d2dae6..8eddf3203a 100644
--- a/Remotion/Validation/UnitTests/Implementation/IValidationMessageFactoryTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IValidationMessageFactoryTest.cs
@@ -30,7 +30,7 @@ public class IValidationMessageFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorReflectorTest.cs b/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorReflectorTest.cs
index 117cf721e0..51a701f84f 100644
--- a/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorReflectorTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorReflectorTest.cs
@@ -29,7 +29,7 @@ public class IValidationRuleCollectorReflectorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs b/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs
index f88d7e2215..1e48ea4cb5 100644
--- a/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IValidationRuleCollectorValidatorTest.cs
@@ -30,7 +30,7 @@ public class IValidationRuleCollectorValidatorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/IValidationTypeFilterTest.cs b/Remotion/Validation/UnitTests/Implementation/IValidationTypeFilterTest.cs
index 2a3429363c..868b5e92c8 100644
--- a/Remotion/Validation/UnitTests/Implementation/IValidationTypeFilterTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IValidationTypeFilterTest.cs
@@ -30,7 +30,7 @@ public class IValidationTypeFilterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/IValidatorBuilderTest.cs b/Remotion/Validation/UnitTests/Implementation/IValidatorBuilderTest.cs
index e62dc3d7b4..3a796827b1 100644
--- a/Remotion/Validation/UnitTests/Implementation/IValidatorBuilderTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IValidatorBuilderTest.cs
@@ -30,7 +30,7 @@ public class IValidatorBuilderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/IValidatorFormatterTest.cs b/Remotion/Validation/UnitTests/Implementation/IValidatorFormatterTest.cs
index 2fc37a2758..b829a24903 100644
--- a/Remotion/Validation/UnitTests/Implementation/IValidatorFormatterTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/IValidatorFormatterTest.cs
@@ -29,7 +29,7 @@ public class IValidatorFormatterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Implementation/ValidatorBuilderSerializationDecoratorTest.cs b/Remotion/Validation/UnitTests/Implementation/ValidatorBuilderSerializationDecoratorTest.cs
index 5254d3c76a..fe0e0cfa12 100644
--- a/Remotion/Validation/UnitTests/Implementation/ValidatorBuilderSerializationDecoratorTest.cs
+++ b/Remotion/Validation/UnitTests/Implementation/ValidatorBuilderSerializationDecoratorTest.cs
@@ -20,7 +20,7 @@ public IValidator BuildValidator (Type validatedType)
[Test]
public void SerializeAndDeserializeReturnsSameInstance ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.Register(
new ServiceConfigurationEntry(
typeof(IValidatorBuilder),
diff --git a/Remotion/Validation/UnitTests/Merging/IObjectValidatorExtractorFactoryTest.cs b/Remotion/Validation/UnitTests/Merging/IObjectValidatorExtractorFactoryTest.cs
index d02a9bada4..593d1ad8c8 100644
--- a/Remotion/Validation/UnitTests/Merging/IObjectValidatorExtractorFactoryTest.cs
+++ b/Remotion/Validation/UnitTests/Merging/IObjectValidatorExtractorFactoryTest.cs
@@ -29,7 +29,7 @@ public class IObjectValidatorExtractorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Merging/IPropertyValidatorExtractorFactoryTest.cs b/Remotion/Validation/UnitTests/Merging/IPropertyValidatorExtractorFactoryTest.cs
index 2a5bf14b14..c01be01392 100644
--- a/Remotion/Validation/UnitTests/Merging/IPropertyValidatorExtractorFactoryTest.cs
+++ b/Remotion/Validation/UnitTests/Merging/IPropertyValidatorExtractorFactoryTest.cs
@@ -29,7 +29,7 @@ public class IPropertyValidatorExtractorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Merging/IValidationRuleCollectorMergerTest.cs b/Remotion/Validation/UnitTests/Merging/IValidationRuleCollectorMergerTest.cs
index 191accb35a..ba957fc0e3 100644
--- a/Remotion/Validation/UnitTests/Merging/IValidationRuleCollectorMergerTest.cs
+++ b/Remotion/Validation/UnitTests/Merging/IValidationRuleCollectorMergerTest.cs
@@ -30,7 +30,7 @@ public class IValidationRuleCollectorMergerTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/MetaValidation/IObjectMetaValidationRuleValidatorFactoryTest.cs b/Remotion/Validation/UnitTests/MetaValidation/IObjectMetaValidationRuleValidatorFactoryTest.cs
index e115dfbacc..341822f56b 100644
--- a/Remotion/Validation/UnitTests/MetaValidation/IObjectMetaValidationRuleValidatorFactoryTest.cs
+++ b/Remotion/Validation/UnitTests/MetaValidation/IObjectMetaValidationRuleValidatorFactoryTest.cs
@@ -29,7 +29,7 @@ public class IObjectMetaValidationRuleValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/MetaValidation/IPropertyMetaValidationRuleValidatorFactoryTest.cs b/Remotion/Validation/UnitTests/MetaValidation/IPropertyMetaValidationRuleValidatorFactoryTest.cs
index 4016c9d355..b3440b2152 100644
--- a/Remotion/Validation/UnitTests/MetaValidation/IPropertyMetaValidationRuleValidatorFactoryTest.cs
+++ b/Remotion/Validation/UnitTests/MetaValidation/IPropertyMetaValidationRuleValidatorFactoryTest.cs
@@ -29,7 +29,7 @@ public class IPropertyMetaValidationRuleValidatorFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/MetaValidation/ISystemPropertyMetaValidationRuleProviderFactoryTest.cs b/Remotion/Validation/UnitTests/MetaValidation/ISystemPropertyMetaValidationRuleProviderFactoryTest.cs
index 1dcfdb5780..1855f03fb8 100644
--- a/Remotion/Validation/UnitTests/MetaValidation/ISystemPropertyMetaValidationRuleProviderFactoryTest.cs
+++ b/Remotion/Validation/UnitTests/MetaValidation/ISystemPropertyMetaValidationRuleProviderFactoryTest.cs
@@ -29,7 +29,7 @@ public class ISystemPropertyMetaValidationRuleProviderFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Validation/UnitTests/Providers/IValidationRuleCollectorProviderTest.cs b/Remotion/Validation/UnitTests/Providers/IValidationRuleCollectorProviderTest.cs
index 0335cde40a..3d4ddc572f 100644
--- a/Remotion/Validation/UnitTests/Providers/IValidationRuleCollectorProviderTest.cs
+++ b/Remotion/Validation/UnitTests/Providers/IValidationRuleCollectorProviderTest.cs
@@ -30,7 +30,7 @@ public class IValidationRuleCollectorProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/Development.WebTesting.TestSite.NetFramework/Global.asax.cs b/Remotion/Web/Development.WebTesting.TestSite.NetFramework/Global.asax.cs
index ccfae3769d..223bf28056 100644
--- a/Remotion/Web/Development.WebTesting.TestSite.NetFramework/Global.asax.cs
+++ b/Remotion/Web/Development.WebTesting.TestSite.NetFramework/Global.asax.cs
@@ -67,7 +67,7 @@ private static void RegisterResourceVirtualPathProvider ()
private void SetRenderingFeatures (IRenderingFeatures renderingFeatures, ResourceTheme resourceTheme)
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => renderingFeatures);
serviceLocator.RegisterSingle(() => resourceTheme);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
diff --git a/Remotion/Web/Development.WebTesting.TestSite/Global.asax.cs b/Remotion/Web/Development.WebTesting.TestSite/Global.asax.cs
index 7f052c50d1..ca8f520bf5 100644
--- a/Remotion/Web/Development.WebTesting.TestSite/Global.asax.cs
+++ b/Remotion/Web/Development.WebTesting.TestSite/Global.asax.cs
@@ -67,7 +67,7 @@ private static void RegisterResourceVirtualPathProvider ()
private void SetRenderingFeatures (IRenderingFeatures renderingFeatures, ResourceTheme resourceTheme)
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => renderingFeatures);
serviceLocator.RegisterSingle(() => resourceTheme);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
diff --git a/Remotion/Web/Test.NetFramework/Global.asax.cs b/Remotion/Web/Test.NetFramework/Global.asax.cs
index 1a939f64ae..8063ed41cf 100644
--- a/Remotion/Web/Test.NetFramework/Global.asax.cs
+++ b/Remotion/Web/Test.NetFramework/Global.asax.cs
@@ -32,7 +32,7 @@ public class Global : HttpApplication
protected void Application_Start (Object sender, EventArgs e)
{
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
ServiceLocator.SetLocatorProvider(() => defaultServiceLocator);
LogManager.Initialize();
diff --git a/Remotion/Web/Test/Global.asax.cs b/Remotion/Web/Test/Global.asax.cs
index 4ee849f253..be05ad4509 100644
--- a/Remotion/Web/Test/Global.asax.cs
+++ b/Remotion/Web/Test/Global.asax.cs
@@ -33,7 +33,7 @@ public class Global : HttpApplication
protected void Application_Start (Object sender, EventArgs e)
{
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var wxeLifetimeManagementSettings = WxeLifetimeManagementSettings.Create(functionTimeout: 16, refreshInterval: 5);
defaultServiceLocator.RegisterSingle(() => wxeLifetimeManagementSettings);
diff --git a/Remotion/Web/UnitTests/Core/Compilation/IControlBuilderCodeProcessorTest.cs b/Remotion/Web/UnitTests/Core/Compilation/IControlBuilderCodeProcessorTest.cs
index b8a6fb189a..f169a4f072 100644
--- a/Remotion/Web/UnitTests/Core/Compilation/IControlBuilderCodeProcessorTest.cs
+++ b/Remotion/Web/UnitTests/Core/Compilation/IControlBuilderCodeProcessorTest.cs
@@ -29,7 +29,7 @@ public class IControlBuilderCodeProcessorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Context/ISafeContextStorageProviderTest.cs b/Remotion/Web/UnitTests/Core/Context/ISafeContextStorageProviderTest.cs
index 005dcf8ed7..479c15656c 100644
--- a/Remotion/Web/UnitTests/Core/Context/ISafeContextStorageProviderTest.cs
+++ b/Remotion/Web/UnitTests/Core/Context/ISafeContextStorageProviderTest.cs
@@ -16,7 +16,7 @@ public class ISafeContextStorageProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/ExecutionEngine/IWxeLifetimeManagementSettingsTest.cs b/Remotion/Web/UnitTests/Core/ExecutionEngine/IWxeLifetimeManagementSettingsTest.cs
index 7a3db4978e..2fb062c067 100644
--- a/Remotion/Web/UnitTests/Core/ExecutionEngine/IWxeLifetimeManagementSettingsTest.cs
+++ b/Remotion/Web/UnitTests/Core/ExecutionEngine/IWxeLifetimeManagementSettingsTest.cs
@@ -13,7 +13,7 @@ public class IWxeLifetimeManagementSettingsTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileFinderTest.cs b/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileFinderTest.cs
index acb90ed636..8583e97d45 100644
--- a/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileFinderTest.cs
+++ b/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileFinderTest.cs
@@ -28,7 +28,7 @@ public class IUrlMappingFileFinderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileLoader.cs b/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileLoader.cs
index 6d91604fcc..d721cf29d3 100644
--- a/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileLoader.cs
+++ b/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/IUrlMappingFileLoader.cs
@@ -28,7 +28,7 @@ public class IUrlMappingFileLoaderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/UrlMappingConfigurationTest.cs b/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/UrlMappingConfigurationTest.cs
index 2a79ad7a16..18a13f0026 100644
--- a/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/UrlMappingConfigurationTest.cs
+++ b/Remotion/Web/UnitTests/Core/ExecutionEngine/UrlMapping/UrlMappingConfigurationTest.cs
@@ -82,7 +82,7 @@ public void GetCurrentMapping ()
UrlMappingConfiguration.SetCurrent(null!);
var fileFinder = BaseDirectoryBasedUrlMappingFileFinder.Create(@"Res\UrlMapping.xml");
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => fileFinder);
using var _ = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeContextTest.cs b/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeContextTest.cs
index 459dfeca8d..d3db866531 100644
--- a/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeContextTest.cs
+++ b/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeContextTest.cs
@@ -296,7 +296,7 @@ private ServiceLocatorScope CreateWxeUrlSettingsScopeWithDefaultWxeHandler (int
{
var wxeUrlSettings = WxeUrlSettings.Create(maxLength, "WxeHandler.ashx");
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => wxeUrlSettings);
return new ServiceLocatorScope(serviceLocator);
}
diff --git a/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeFunctionTests/Security.cs b/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeFunctionTests/Security.cs
index 0c62893d56..e0ce1d5e21 100644
--- a/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeFunctionTests/Security.cs
+++ b/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeFunctionTests/Security.cs
@@ -39,7 +39,7 @@ public void SetUp ()
_wxeContext = WxeContextFactory.Create(rootFunction);
_mockWxeSecurityAdapter = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple(() => _mockWxeSecurityAdapter.Object);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
}
@@ -86,7 +86,7 @@ public void HasStatelessAccessDenied ()
[Test]
public void HasStatelessAccessGrantedWithoutWxeSecurityProvider ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple();
using (new ServiceLocatorScope(serviceLocator))
{
diff --git a/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeUrlSettingsTest.cs b/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeUrlSettingsTest.cs
index 553aab7a2f..f39117aca8 100644
--- a/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeUrlSettingsTest.cs
+++ b/Remotion/Web/UnitTests/Core/ExecutionEngine/WxeUrlSettingsTest.cs
@@ -14,7 +14,7 @@ public class WxeUrlSettingsTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/IResourceUrlFactoryTest.cs b/Remotion/Web/UnitTests/Core/IResourceUrlFactoryTest.cs
index a7115e7945..b1828aec57 100644
--- a/Remotion/Web/UnitTests/Core/IResourceUrlFactoryTest.cs
+++ b/Remotion/Web/UnitTests/Core/IResourceUrlFactoryTest.cs
@@ -32,7 +32,7 @@ public void SetUp ()
{
Console.WriteLine(typeof(HttpContext).AssemblyQualifiedName);
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Infrastructure/IBuildManagerTest.cs b/Remotion/Web/UnitTests/Core/Infrastructure/IBuildManagerTest.cs
index 0eee0d757f..07c1c6c876 100644
--- a/Remotion/Web/UnitTests/Core/Infrastructure/IBuildManagerTest.cs
+++ b/Remotion/Web/UnitTests/Core/Infrastructure/IBuildManagerTest.cs
@@ -29,7 +29,7 @@ public class IBuildManagerTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Infrastructure/IHttpContextProviderTest.cs b/Remotion/Web/UnitTests/Core/Infrastructure/IHttpContextProviderTest.cs
index e06dbb418a..73624f0b66 100644
--- a/Remotion/Web/UnitTests/Core/Infrastructure/IHttpContextProviderTest.cs
+++ b/Remotion/Web/UnitTests/Core/Infrastructure/IHttpContextProviderTest.cs
@@ -29,7 +29,7 @@ public class IHttpContextProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Infrastructure/IInfrastructureResourceUrlFactoryTest.cs b/Remotion/Web/UnitTests/Core/Infrastructure/IInfrastructureResourceUrlFactoryTest.cs
index 46216bf66b..9718712b62 100644
--- a/Remotion/Web/UnitTests/Core/Infrastructure/IInfrastructureResourceUrlFactoryTest.cs
+++ b/Remotion/Web/UnitTests/Core/Infrastructure/IInfrastructureResourceUrlFactoryTest.cs
@@ -29,7 +29,7 @@ public class IInfrastructureResourceUrlFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Resources/ICacheableResourcePathBuilderTest.cs b/Remotion/Web/UnitTests/Core/Resources/ICacheableResourcePathBuilderTest.cs
index 7376502b19..e36f89d9b4 100644
--- a/Remotion/Web/UnitTests/Core/Resources/ICacheableResourcePathBuilderTest.cs
+++ b/Remotion/Web/UnitTests/Core/Resources/ICacheableResourcePathBuilderTest.cs
@@ -29,7 +29,7 @@ public class ICacheableResourcePathBuilderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Resources/IResourcePathBuilderTest.cs b/Remotion/Web/UnitTests/Core/Resources/IResourcePathBuilderTest.cs
index baa984463c..d511c32d2a 100644
--- a/Remotion/Web/UnitTests/Core/Resources/IResourcePathBuilderTest.cs
+++ b/Remotion/Web/UnitTests/Core/Resources/IResourcePathBuilderTest.cs
@@ -29,7 +29,7 @@ public class IResourcePathBuilderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Resources/IStaticResourceCacheKeyProviderTest.cs b/Remotion/Web/UnitTests/Core/Resources/IStaticResourceCacheKeyProviderTest.cs
index 4b25869fe4..f0bdf3147c 100644
--- a/Remotion/Web/UnitTests/Core/Resources/IStaticResourceCacheKeyProviderTest.cs
+++ b/Remotion/Web/UnitTests/Core/Resources/IStaticResourceCacheKeyProviderTest.cs
@@ -29,7 +29,7 @@ public class IStaticResourceCacheKeyProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Resources/ResourceRootTest.cs b/Remotion/Web/UnitTests/Core/Resources/ResourceRootTest.cs
index a09c4834b6..028fd3e7da 100644
--- a/Remotion/Web/UnitTests/Core/Resources/ResourceRootTest.cs
+++ b/Remotion/Web/UnitTests/Core/Resources/ResourceRootTest.cs
@@ -10,7 +10,7 @@ public class ResourceRootTest
[Test]
public void GetInstance_Once ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var factory = serviceLocator.GetInstance();
@@ -21,7 +21,7 @@ public void GetInstance_Once ()
[Test]
public void GetInstance_Twice_ReturnsSameInstance ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var factory1 = serviceLocator.GetInstance();
var factory2 = serviceLocator.GetInstance();
diff --git a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/IWxeSecurityAdapterTest.cs b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/IWxeSecurityAdapterTest.cs
index 8982dde749..ff097f8b32 100644
--- a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/IWxeSecurityAdapterTest.cs
+++ b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/IWxeSecurityAdapterTest.cs
@@ -31,7 +31,7 @@ public class IWxeSecurityAdapterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromConstructor.cs b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromConstructor.cs
index 63ee2ea727..3859a0e3ea 100644
--- a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromConstructor.cs
+++ b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromConstructor.cs
@@ -63,7 +63,7 @@ public void SetUp ()
_mockPrincipalProvider.Setup(_ => _.GetPrincipal()).Returns(_stubUser.Object).Verifiable();
_mockFunctionalSecurityStrategy = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _mockSecurityProvider.Object);
serviceLocator.RegisterSingle(() => _mockPrincipalProvider.Object);
serviceLocator.RegisterSingle(() => _mockFunctionalSecurityStrategy.Object);
diff --git a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromInstanceMethod.cs b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromInstanceMethod.cs
index b026da308a..be4d724a99 100644
--- a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromInstanceMethod.cs
+++ b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromInstanceMethod.cs
@@ -66,7 +66,7 @@ public void SetUp ()
_mockObjectSecurityStrategy = new Mock(MockBehavior.Strict);
_mockFunctionalSecurityStrategy = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _mockSecurityProvider.Object);
serviceLocator.RegisterSingle(() => _mockPrincipalProvider.Object);
serviceLocator.RegisterSingle(() => _mockFunctionalSecurityStrategy.Object);
diff --git a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromStaticMethod.cs b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromStaticMethod.cs
index 0c9a8d1df8..f7cbc20b1a 100644
--- a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromStaticMethod.cs
+++ b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithPermissionsFromStaticMethod.cs
@@ -64,7 +64,7 @@ public void SetUp ()
_mockFunctionalSecurityStrategy = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _mockSecurityProvider.Object);
serviceLocator.RegisterSingle(() => _mockPrincipalProvider.Object);
serviceLocator.RegisterSingle(() => _mockFunctionalSecurityStrategy.Object);
diff --git a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithoutPermissionAttribute.cs b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithoutPermissionAttribute.cs
index b4a8d5548c..0cef4254fe 100644
--- a/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithoutPermissionAttribute.cs
+++ b/Remotion/Web/UnitTests/Core/Security/ExecutionEngine/WxeSecurityAdapterTestWithoutPermissionAttribute.cs
@@ -58,7 +58,7 @@ public void SetUp ()
_mockPrincipalProvider = new Mock(MockBehavior.Strict);
_mockFunctionalSecurityStrategy = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _mockSecurityProvider.Object);
serviceLocator.RegisterSingle(() => _mockPrincipalProvider.Object);
serviceLocator.RegisterSingle(() => _mockFunctionalSecurityStrategy.Object);
diff --git a/Remotion/Web/UnitTests/Core/Security/IPrincipalProviderTest.cs b/Remotion/Web/UnitTests/Core/Security/IPrincipalProviderTest.cs
index e54fdf9b23..6745b7423f 100644
--- a/Remotion/Web/UnitTests/Core/Security/IPrincipalProviderTest.cs
+++ b/Remotion/Web/UnitTests/Core/Security/IPrincipalProviderTest.cs
@@ -30,7 +30,7 @@ public class IPrincipalProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Security/UI/IWebSecurityAdapterTest.cs b/Remotion/Web/UnitTests/Core/Security/UI/IWebSecurityAdapterTest.cs
index 21d7f5623e..fe664ff06d 100644
--- a/Remotion/Web/UnitTests/Core/Security/UI/IWebSecurityAdapterTest.cs
+++ b/Remotion/Web/UnitTests/Core/Security/UI/IWebSecurityAdapterTest.cs
@@ -31,7 +31,7 @@ public class IWebSecurityAdapterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromSecurableObjectTest.cs b/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromSecurableObjectTest.cs
index 11a3d717b3..9f01968c06 100644
--- a/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromSecurableObjectTest.cs
+++ b/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromSecurableObjectTest.cs
@@ -39,7 +39,7 @@ public void SetUp ()
_testHelper = new WebPermissionProviderTestHelper();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _testHelper.SecurityProvider);
serviceLocator.RegisterSingle(() => _testHelper.PrincipalProvider);
serviceLocator.RegisterSingle(() => _testHelper.FunctionalSecurityStrategy);
diff --git a/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromWxeFunctionTest.cs b/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromWxeFunctionTest.cs
index c6f52a6310..983846f46c 100644
--- a/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromWxeFunctionTest.cs
+++ b/Remotion/Web/UnitTests/Core/Security/UI/WebSecurityAdapterTests/PermissionFromWxeFunctionTest.cs
@@ -38,7 +38,7 @@ public void SetUp ()
_securityAdapter = new WebSecurityAdapter();
_testHelper = new WebPermissionProviderTestHelper();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple();
serviceLocator.RegisterMultiple(() => _testHelper.WxeSecurityAdapter);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Web/UnitTests/Core/Services/IWebServiceFactoryTest.cs b/Remotion/Web/UnitTests/Core/Services/IWebServiceFactoryTest.cs
index 7d5ae6e3ce..c900650be8 100644
--- a/Remotion/Web/UnitTests/Core/Services/IWebServiceFactoryTest.cs
+++ b/Remotion/Web/UnitTests/Core/Services/IWebServiceFactoryTest.cs
@@ -12,7 +12,7 @@ public class IWebServiceFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/SetUpFixture.cs b/Remotion/Web/UnitTests/Core/SetUpFixture.cs
index 1dff3d029e..f22ffa7e43 100644
--- a/Remotion/Web/UnitTests/Core/SetUpFixture.cs
+++ b/Remotion/Web/UnitTests/Core/SetUpFixture.cs
@@ -42,7 +42,7 @@ public void OneTimeSetUp ()
{
XmlNodeExtensions.Helper = new HtmlHelper();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => new FakeInfrastructureResourceUrlFactory());
serviceLocator.RegisterSingle(() => new FakeScriptUtility());
serviceLocator.RegisterSingle(() => new FakeResourceUrlFactory());
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/DatePickerButtonImplementation/Rendering/IDatePickerPageRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/DatePickerButtonImplementation/Rendering/IDatePickerPageRendererTest.cs
index 2fbed09cd8..2d9ace76e1 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/DatePickerButtonImplementation/Rendering/IDatePickerPageRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/DatePickerButtonImplementation/Rendering/IDatePickerPageRendererTest.cs
@@ -13,7 +13,7 @@ public class IDatePickerPageRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/DropDownMenuImplementation/Rendering/IDropDownMenuRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/DropDownMenuImplementation/Rendering/IDropDownMenuRendererTest.cs
index 92c3bf37af..4182fab1b5 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/DropDownMenuImplementation/Rendering/IDropDownMenuRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/DropDownMenuImplementation/Rendering/IDropDownMenuRendererTest.cs
@@ -29,7 +29,7 @@ public class IDropDownMenuRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/Hotkey/IHotkeyFormatterTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/Hotkey/IHotkeyFormatterTest.cs
index 1f94a072e5..a028a43395 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/Hotkey/IHotkeyFormatterTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/Hotkey/IHotkeyFormatterTest.cs
@@ -29,7 +29,7 @@ public class IHotkeyFormatterTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/HtmlHeadContentsImplementation/Rendering/IHtmlHeadContentsRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/HtmlHeadContentsImplementation/Rendering/IHtmlHeadContentsRendererTest.cs
index 3f08afd8fd..1b3ce89540 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/HtmlHeadContentsImplementation/Rendering/IHtmlHeadContentsRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/HtmlHeadContentsImplementation/Rendering/IHtmlHeadContentsRendererTest.cs
@@ -30,7 +30,7 @@ public class IHtmlHeadContentsRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/IClientScriptBehaviorTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/IClientScriptBehaviorTest.cs
index 422bb23bb5..3929c1f57b 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/IClientScriptBehaviorTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/IClientScriptBehaviorTest.cs
@@ -29,7 +29,7 @@ public class IClientScriptBehaviorTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/IFallbackNavigationUrlProviderTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/IFallbackNavigationUrlProviderTest.cs
index a577e063e3..da1123a090 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/IFallbackNavigationUrlProviderTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/IFallbackNavigationUrlProviderTest.cs
@@ -28,7 +28,7 @@ public class IFallbackNavigationUrlProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/IListMenuRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/IListMenuRendererTest.cs
index 2ea9cbed3d..2a826ff678 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/IListMenuRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/IListMenuRendererTest.cs
@@ -29,7 +29,7 @@ public class IListMenuRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/ListMenuRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/ListMenuRendererTest.cs
index 3fb724e947..645039bba1 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/ListMenuRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/ListMenuImplementation/Rendering/ListMenuRendererTest.cs
@@ -70,7 +70,7 @@ public void SetUp ()
PopulateMenu();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => RenderingFeatures.WithDiagnosticMetadata);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
}
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/MenuTabTests/SecurityTestWithVisible.cs b/Remotion/Web/UnitTests/Core/UI/Controls/MenuTabTests/SecurityTestWithVisible.cs
index 9842e7bbd9..4248c0adb4 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/MenuTabTests/SecurityTestWithVisible.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/MenuTabTests/SecurityTestWithVisible.cs
@@ -39,7 +39,7 @@ public void Setup ()
_mockWebSecurityAdapter = new Mock(MockBehavior.Strict);
_mockNavigationCommand = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple(() => _mockWebSecurityAdapter.Object);
serviceLocator.RegisterMultiple();
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/NavigationCommandTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/NavigationCommandTest.cs
index 7e03bf62bc..7627c7be20 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/NavigationCommandTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/NavigationCommandTest.cs
@@ -315,7 +315,7 @@ private ServiceLocatorScope CreateWxeUrlSettingsScope (string defaultWxeHandler
{
var wxeUrlSettings = WxeUrlSettings.Create(1024, defaultWxeHandler);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => wxeUrlSettings);
return new ServiceLocatorScope(serviceLocator);
}
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/ILabelReferenceRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/ILabelReferenceRendererTest.cs
index e73cae553a..13bc07ceb7 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/ILabelReferenceRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/ILabelReferenceRendererTest.cs
@@ -29,7 +29,7 @@ public class ILabelReferenceRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/IValidationErrorsRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/IValidationErrorsRendererTest.cs
index ba39e40d1c..32f5c0c28b 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/IValidationErrorsRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/Rendering/IValidationErrorsRendererTest.cs
@@ -29,7 +29,7 @@ public class IValidationErrorsRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/SingleViewImplementation/Rendering/ISingleViewRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/SingleViewImplementation/Rendering/ISingleViewRendererTest.cs
index b43a98862a..c6f8f9fe37 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/SingleViewImplementation/Rendering/ISingleViewRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/SingleViewImplementation/Rendering/ISingleViewRendererTest.cs
@@ -29,7 +29,7 @@ public class ISingleViewRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/IMenuTabRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/IMenuTabRendererTest.cs
index e422b1b180..5b1808d263 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/IMenuTabRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/IMenuTabRendererTest.cs
@@ -29,7 +29,7 @@ public class IMenuTabRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/ITabbedMenuRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/ITabbedMenuRendererTest.cs
index 6bc72cc69a..9e9170f26f 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/ITabbedMenuRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMenuImplementation/Rendering/ITabbedMenuRendererTest.cs
@@ -29,7 +29,7 @@ public class ITabbedMenuRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMultiViewImplementation/Rendering/ITabbedMultiViewRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMultiViewImplementation/Rendering/ITabbedMultiViewRendererTest.cs
index 5180af1a94..3d4d3a730c 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMultiViewImplementation/Rendering/ITabbedMultiViewRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/TabbedMultiViewImplementation/Rendering/ITabbedMultiViewRendererTest.cs
@@ -29,7 +29,7 @@ public class ITabbedMultiViewRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonImplementation/IWebButtonRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonImplementation/IWebButtonRendererTest.cs
index 3f03d7b8e4..de8b96015e 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonImplementation/IWebButtonRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonImplementation/IWebButtonRendererTest.cs
@@ -29,7 +29,7 @@ public class IWebButtonRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithEnabled.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithEnabled.cs
index 9926939402..88a8d01e1e 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithEnabled.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithEnabled.cs
@@ -39,7 +39,7 @@ public void Setup ()
_mockWebSecurityAdapter = new Mock(MockBehavior.Strict);
_mockSecurableObject = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple(() => _mockWebSecurityAdapter.Object);
serviceLocator.RegisterMultiple();
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
@@ -82,7 +82,7 @@ public void EvaluateFalse_FromFalseAndWithMissingPermissionBehaviorSetToInvisibl
[Test]
public void EvaluateTrue_FromTrueAndWithoutWebSeucrityProvider ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple();
serviceLocator.RegisterMultiple();
using (new ServiceLocatorScope(serviceLocator))
@@ -101,7 +101,7 @@ public void EvaluateTrue_FromTrueAndWithoutWebSeucrityProvider ()
[Test]
public void EvaluateFalse_FromFalseAndWithoutWebSeucrityProvider ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple();
serviceLocator.RegisterMultiple();
using (new ServiceLocatorScope(serviceLocator))
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithVisible.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithVisible.cs
index be73709b17..5e4463c050 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithVisible.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/SecurityTestWithVisible.cs
@@ -39,7 +39,7 @@ public void Setup ()
_mockWebSecurityAdapter = new Mock(MockBehavior.Strict);
_mockSecurableObject = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple(() => _mockWebSecurityAdapter.Object);
serviceLocator.RegisterMultiple();
_serviceLocatorStub = new ServiceLocatorScope(serviceLocator);
@@ -82,7 +82,7 @@ public void EvaluateFalse_FromFalseAndWithMissingPermissionBehaviorSetToDisabled
[Test]
public void EvaluateTrue_FromTrueAndWithoutWebSeucrityProvider ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple();
serviceLocator.RegisterMultiple();
using (new ServiceLocatorScope(serviceLocator))
@@ -101,7 +101,7 @@ public void EvaluateTrue_FromTrueAndWithoutWebSeucrityProvider ()
[Test]
public void EvaluateFalse_FromFalseAndWithoutWebSeucrityProvider ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple();
serviceLocator.RegisterMultiple();
using (new ServiceLocatorScope(serviceLocator))
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/WebButtonDiagnosticMetadataTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/WebButtonDiagnosticMetadataTest.cs
index 52fcd276c7..b19f409705 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/WebButtonDiagnosticMetadataTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebButtonTests/WebButtonDiagnosticMetadataTest.cs
@@ -20,7 +20,7 @@ public override void SetUp ()
{
base.SetUp();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => RenderingFeatures.WithDiagnosticMetadata);
_serviceLocatorScope = new ServiceLocatorScope(serviceLocator);
}
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebMenuItemTests/SecurityTestWithVisible.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebMenuItemTests/SecurityTestWithVisible.cs
index 8723598775..c1e2de20da 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebMenuItemTests/SecurityTestWithVisible.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebMenuItemTests/SecurityTestWithVisible.cs
@@ -42,7 +42,7 @@ public void Setup ()
_mockSecurableObject = new Mock(MockBehavior.Strict);
_mockCommand = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterMultiple(() => _mockWebSecurityAdapter.Object);
serviceLocator.RegisterMultiple();
_serviceLocatorStub = new ServiceLocatorScope(serviceLocator);
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabRendererTest.cs
index 1422133939..3666809808 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabRendererTest.cs
@@ -29,7 +29,7 @@ public class IWebTabRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabStripRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabStripRendererTest.cs
index 86e7f38b7a..bbad7cb359 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabStripRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebTabStripImplementation/Rendering/IWebTabStripRendererTest.cs
@@ -29,7 +29,7 @@ public class IWebTabStripRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/UI/Controls/WebTreeViewImplementation/IWebTreeViewRendererTest.cs b/Remotion/Web/UnitTests/Core/UI/Controls/WebTreeViewImplementation/IWebTreeViewRendererTest.cs
index 71bcf0bbd6..e6938a8b23 100644
--- a/Remotion/Web/UnitTests/Core/UI/Controls/WebTreeViewImplementation/IWebTreeViewRendererTest.cs
+++ b/Remotion/Web/UnitTests/Core/UI/Controls/WebTreeViewImplementation/IWebTreeViewRendererTest.cs
@@ -29,7 +29,7 @@ public class IWebTreeViewRendererTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Utilities/IInternalControlMemberCallerTest.cs b/Remotion/Web/UnitTests/Core/Utilities/IInternalControlMemberCallerTest.cs
index fc5f2c235e..138f19708d 100644
--- a/Remotion/Web/UnitTests/Core/Utilities/IInternalControlMemberCallerTest.cs
+++ b/Remotion/Web/UnitTests/Core/Utilities/IInternalControlMemberCallerTest.cs
@@ -13,7 +13,7 @@ public class IInternalControlMemberCallerTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/Remotion/Web/UnitTests/Core/Utilities/IScriptUtilityTest.cs b/Remotion/Web/UnitTests/Core/Utilities/IScriptUtilityTest.cs
index 0091ceb8d6..b5506655bf 100644
--- a/Remotion/Web/UnitTests/Core/Utilities/IScriptUtilityTest.cs
+++ b/Remotion/Web/UnitTests/Core/Utilities/IScriptUtilityTest.cs
@@ -13,7 +13,7 @@ public class IScriptUtilityTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Clients.Web.Test/Global.asax.cs b/SecurityManager/Clients.Web.Test/Global.asax.cs
index 03cbcbe18f..41102aa43e 100644
--- a/SecurityManager/Clients.Web.Test/Global.asax.cs
+++ b/SecurityManager/Clients.Web.Test/Global.asax.cs
@@ -34,7 +34,7 @@ public class Global : SecurityManagerHttpApplication
protected void Application_Start (object sender, EventArgs e)
{
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var storageSettingsFactory =
StorageSettingsFactory.CreateForSqlServer(
diff --git a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessControlListFinderTest.cs b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessControlListFinderTest.cs
index fc075fc45e..c57f8c85bd 100644
--- a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessControlListFinderTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessControlListFinderTest.cs
@@ -13,7 +13,7 @@ public class IAccessControlListFinderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessResolverTest.cs b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessResolverTest.cs
index ae65c61301..a86b15cb31 100644
--- a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessResolverTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/IAccessResolverTest.cs
@@ -13,7 +13,7 @@ public class IAccessResolverTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityContextRepositoryTest.cs b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityContextRepositoryTest.cs
index 86bfe2c248..dd110dbf79 100644
--- a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityContextRepositoryTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityContextRepositoryTest.cs
@@ -13,7 +13,7 @@ public class ISecurityContextRepositoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityPrincipalRepositoryTest.cs b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityPrincipalRepositoryTest.cs
index 054c2d5c39..5e2e6ddb18 100644
--- a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityPrincipalRepositoryTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityPrincipalRepositoryTest.cs
@@ -13,7 +13,7 @@ public class ISecurityPrincipalRepositoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityTokenBuilderTest.cs b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityTokenBuilderTest.cs
index f3c5273fb5..bce088f0cd 100644
--- a/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityTokenBuilderTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/AccessControl/AccessEvaluation/ISecurityTokenBuilderTest.cs
@@ -13,7 +13,7 @@ public class ISecurityTokenBuilderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/AccessControl/IAccessControlSettingsTest.cs b/SecurityManager/Core.UnitTests/Domain/AccessControl/IAccessControlSettingsTest.cs
index b221234e66..d8916e115a 100644
--- a/SecurityManager/Core.UnitTests/Domain/AccessControl/IAccessControlSettingsTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/AccessControl/IAccessControlSettingsTest.cs
@@ -29,7 +29,7 @@ public class IAccessControlSettingsTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/IDomainRevisionProviderTest.cs b/SecurityManager/Core.UnitTests/Domain/IDomainRevisionProviderTest.cs
index 30a11a4e25..e1ed87e037 100644
--- a/SecurityManager/Core.UnitTests/Domain/IDomainRevisionProviderTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/IDomainRevisionProviderTest.cs
@@ -13,7 +13,7 @@ public class IDomainRevisionProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/IPrincipalProviderTest.cs b/SecurityManager/Core.UnitTests/Domain/IPrincipalProviderTest.cs
index 3ff2a14a5e..57d84b3c87 100644
--- a/SecurityManager/Core.UnitTests/Domain/IPrincipalProviderTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/IPrincipalProviderTest.cs
@@ -31,7 +31,7 @@ public class IPrincipalProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/ISecurityManagerPrincipalFactoryTest.cs b/SecurityManager/Core.UnitTests/Domain/ISecurityManagerPrincipalFactoryTest.cs
index e6b350b8e1..eddbeaaa35 100644
--- a/SecurityManager/Core.UnitTests/Domain/ISecurityManagerPrincipalFactoryTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/ISecurityManagerPrincipalFactoryTest.cs
@@ -28,7 +28,7 @@ public class ISecurityManagerPrincipalFactoryTest
[Test]
public void GetDefaultImplementationFromServiceLocator ()
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
Assert.That(serviceLocator.GetInstance(), Is.TypeOf());
}
diff --git a/SecurityManager/Core.UnitTests/Domain/IUserNamesRevisionProviderTest.cs b/SecurityManager/Core.UnitTests/Domain/IUserNamesRevisionProviderTest.cs
index e36fceb5eb..4ab005911a 100644
--- a/SecurityManager/Core.UnitTests/Domain/IUserNamesRevisionProviderTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/IUserNamesRevisionProviderTest.cs
@@ -30,7 +30,7 @@ public class IUserNamesRevisionProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/IUserRevisionProviderTest.cs b/SecurityManager/Core.UnitTests/Domain/IUserRevisionProviderTest.cs
index 0f42c16ad8..79bc250863 100644
--- a/SecurityManager/Core.UnitTests/Domain/IUserRevisionProviderTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/IUserRevisionProviderTest.cs
@@ -13,7 +13,7 @@ public class IUserRevisionProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetHierarchy.cs b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetHierarchy.cs
index 0294c313a9..c4e23b9b2d 100644
--- a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetHierarchy.cs
+++ b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetHierarchy.cs
@@ -124,7 +124,7 @@ public void Test_WithSecurity_PermissionDeniedOnChild ()
.Setup(stub => stub.GetAccess(childOfChild2SecurityContext, It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
@@ -152,7 +152,7 @@ public void Test_WithSecurity_PermissionDeniedOnRoot ()
.Setup(stub => stub.GetAccess(It.IsAny(), It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
diff --git a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetParents.cs b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetParents.cs
index efd99ee5d6..f44dc90f64 100644
--- a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetParents.cs
+++ b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/GroupTests/GetParents.cs
@@ -152,7 +152,7 @@ public void Test_WithSecurity_PermissionDeniedOnParent ()
.Setup(stub => stub.GetAccess(grandParent1SecurityContext, It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
@@ -177,7 +177,7 @@ public void Test_WithSecurity_PermissionDeniedOnRoot ()
.Setup(stub => stub.GetAccess(It.IsAny(), It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
diff --git a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/IOrganizationalStructureFactoryTest.cs b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/IOrganizationalStructureFactoryTest.cs
index f9f13d434f..1e1d559145 100644
--- a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/IOrganizationalStructureFactoryTest.cs
+++ b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/IOrganizationalStructureFactoryTest.cs
@@ -29,7 +29,7 @@ public class IOrganizationalStructureFactoryTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetHierachy.cs b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetHierachy.cs
index 00633dd939..c0bb082aba 100644
--- a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetHierachy.cs
+++ b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetHierachy.cs
@@ -115,7 +115,7 @@ public void Test_WithSecurity_PermissionDeniedOnChild ()
.Setup(stub => stub.GetAccess(childOfChild2SecurityContext, It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
@@ -142,7 +142,7 @@ public void Test_WithSecurity_PermissionDeniedOnRoot ()
.Setup(stub => stub.GetAccess(It.IsAny(), It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
diff --git a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetParents.cs b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetParents.cs
index 6ba19a9b3d..9157b1cf1d 100644
--- a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetParents.cs
+++ b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/TenantTests/GetParents.cs
@@ -156,7 +156,7 @@ public void Test_WithSecurity_PermissionDeniedOnParent ()
.Setup(stub => stub.GetAccess(grandParent1SecurityContext, It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
@@ -180,7 +180,7 @@ public void Test_WithSecurity_PermissionDeniedOnRoot ()
.Setup(stub => stub.GetAccess(It.IsAny(), It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
diff --git a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/UserTests/GetActiveSubstitutions.cs b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/UserTests/GetActiveSubstitutions.cs
index 969c955f04..44003e9bff 100644
--- a/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/UserTests/GetActiveSubstitutions.cs
+++ b/SecurityManager/Core.UnitTests/Domain/OrganizationalStructure/UserTests/GetActiveSubstitutions.cs
@@ -82,7 +82,7 @@ public void Test_WithPermissionDeniedOnUser ()
.Setup(stub => stub.GetAccess(It.IsAny(), It.IsAny()))
.Returns(new AccessType[0]);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
using (new ServiceLocatorScope(serviceLocator))
diff --git a/SecurityManager/Core.UnitTests/Domain/SearchInfrastructure/OrganizationalStructure/RolePropertiesSearchServiceTests/SearchPositionWithSecurityChecks.cs b/SecurityManager/Core.UnitTests/Domain/SearchInfrastructure/OrganizationalStructure/RolePropertiesSearchServiceTests/SearchPositionWithSecurityChecks.cs
index 8cb6ef36d8..75304520a2 100644
--- a/SecurityManager/Core.UnitTests/Domain/SearchInfrastructure/OrganizationalStructure/RolePropertiesSearchServiceTests/SearchPositionWithSecurityChecks.cs
+++ b/SecurityManager/Core.UnitTests/Domain/SearchInfrastructure/OrganizationalStructure/RolePropertiesSearchServiceTests/SearchPositionWithSecurityChecks.cs
@@ -73,7 +73,7 @@ public override void SetUp ()
_mockPrincipalProvider = new Mock(MockBehavior.Strict);
_stubFunctionalSecurityStrategy = new Mock(MockBehavior.Strict);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => _stubFunctionalSecurityStrategy.Object);
serviceLocator.RegisterSingle(() => _mockSecurityProvider.Object);
serviceLocator.RegisterSingle(() => _mockPrincipalProvider.Object);
diff --git a/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/Common.cs b/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/Common.cs
index 2d3e16c290..28d593e6b5 100644
--- a/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/Common.cs
+++ b/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/Common.cs
@@ -173,7 +173,7 @@ public void ActiveSecurityProviderAddsSecurityClientTransactionExtension ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
serviceLocator.RegisterSingle(() => storageSettings);
diff --git a/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/GetTenants.cs b/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/GetTenants.cs
index b2a5491294..0351bc1297 100644
--- a/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/GetTenants.cs
+++ b/SecurityManager/Core.UnitTests/Domain/SecurityManagerPrincipalTests/GetTenants.cs
@@ -109,7 +109,7 @@ public void UsesSecurityFreeSectionToAccessTenantOfUser ()
var storageSettings = SafeServiceLocator.Current.GetInstance();
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProviderStub.Object);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
serviceLocator.RegisterSingle(() => storageSettings);
diff --git a/SecurityManager/Core.UnitTests/SecurityProvider/ISecurityProviderTest.cs b/SecurityManager/Core.UnitTests/SecurityProvider/ISecurityProviderTest.cs
index 6e39fe414f..530c83b75d 100644
--- a/SecurityManager/Core.UnitTests/SecurityProvider/ISecurityProviderTest.cs
+++ b/SecurityManager/Core.UnitTests/SecurityProvider/ISecurityProviderTest.cs
@@ -31,7 +31,7 @@ public class ISecurityProviderTest
[SetUp]
public void SetUp ()
{
- _serviceLocator = DefaultServiceLocator.Create();
+ _serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
}
[Test]
diff --git a/SecurityManager/Core.UnitTests/SecurityProvider/SecurityServiceTest.cs b/SecurityManager/Core.UnitTests/SecurityProvider/SecurityServiceTest.cs
index 400fb72169..8572916aca 100644
--- a/SecurityManager/Core.UnitTests/SecurityProvider/SecurityServiceTest.cs
+++ b/SecurityManager/Core.UnitTests/SecurityProvider/SecurityServiceTest.cs
@@ -218,7 +218,7 @@ public void GetAccess_UsesSecurityFreeSection ()
}
}
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => new Mock());
using (new ServiceLocatorScope(serviceLocator))
{
diff --git a/SecurityManager/Core.UnitTests/SetUpFixture.cs b/SecurityManager/Core.UnitTests/SetUpFixture.cs
index b29351ae32..349fc82359 100644
--- a/SecurityManager/Core.UnitTests/SetUpFixture.cs
+++ b/SecurityManager/Core.UnitTests/SetUpFixture.cs
@@ -65,7 +65,7 @@ public void OneTimeSetUp ()
var securityProvider = new FakeSecurityProvider();
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(TestDomainConnectionString);
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
serviceLocator.RegisterSingle(() => securityProvider);
serviceLocator.RegisterSingle(() => new NullPrincipalProvider());
serviceLocator.RegisterSingle(() => storageSettingsFactory);
@@ -78,7 +78,7 @@ public void OneTimeSetUp ()
MappingConfiguration.SetCurrent(
MappingConfiguration.Create(
- MappingReflector.Create(
+ new MappingReflector(
typeDiscoveryService,
SafeServiceLocator.Current.GetInstance(),
SafeServiceLocator.Current.GetInstance(),
diff --git a/SecurityManager/Core/AclTools/Expansion/AclExpanderApplication.cs b/SecurityManager/Core/AclTools/Expansion/AclExpanderApplication.cs
index d0879bfec5..471bc0c520 100644
--- a/SecurityManager/Core/AclTools/Expansion/AclExpanderApplication.cs
+++ b/SecurityManager/Core/AclTools/Expansion/AclExpanderApplication.cs
@@ -71,7 +71,7 @@ public virtual void Run (AclExpanderApplicationSettings settings, TextWriter err
{
if (!hasOriginalServiceLocator)
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(settings.ConnectionString);
serviceLocator.RegisterSingle(() => storageSettingsFactory);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
diff --git a/SecurityManager/Metadata.Importer/Program.cs b/SecurityManager/Metadata.Importer/Program.cs
index 02dff1b9d5..350f1bd8b3 100644
--- a/SecurityManager/Metadata.Importer/Program.cs
+++ b/SecurityManager/Metadata.Importer/Program.cs
@@ -87,7 +87,7 @@ public int Run ()
{
if (!hasOriginalServiceLocator)
{
- var serviceLocator = DefaultServiceLocator.Create();
+ var serviceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
var storageSettingsFactory = StorageSettingsFactory.CreateForSqlServer(_arguments.ConnectionString);
serviceLocator.RegisterSingle(() => storageSettingsFactory);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
@@ -100,7 +100,7 @@ public int Run ()
ITypeDiscoveryService typeDiscoveryService = new AssemblyFinderTypeDiscoveryService(assemblyFinder);
MappingConfiguration.SetCurrent(
MappingConfiguration.Create(
- MappingReflector.Create(
+ new MappingReflector(
typeDiscoveryService,
SafeServiceLocator.Current.GetInstance(),
SafeServiceLocator.Current.GetInstance(),
diff --git a/SecurityManager/PerformanceTests/Program.cs b/SecurityManager/PerformanceTests/Program.cs
index 72b2cd6f6c..d09ceeb5fa 100644
--- a/SecurityManager/PerformanceTests/Program.cs
+++ b/SecurityManager/PerformanceTests/Program.cs
@@ -25,7 +25,7 @@ class Program
{
private static void Main (string[] args)
{
- var defaultServiceLocator = DefaultServiceLocator.Create();
+ var defaultServiceLocator = DefaultServiceLocator.CreateWithBootstrappedServices();
defaultServiceLocator.Register(
typeof(Remotion.Data.DomainObjects.IClientTransactionExtensionFactory),