|
24 | 24 | // OTHER DEALINGS IN THE SOFTWARE. |
25 | 25 |
|
26 | 26 | using System; |
| 27 | +using System.Collections.Generic; |
27 | 28 | using System.Linq; |
28 | 29 | using System.Web.Mvc; |
29 | 30 | using Autofac.Integration.Mvc; |
@@ -147,9 +148,11 @@ public void ConfigurationActionInvokedForNestedLifetime() |
147 | 148 | public void DerivedResolverTypesCanStillBeCurrentResolver() |
148 | 149 | { |
149 | 150 | var container = new ContainerBuilder().Build(); |
150 | | - var provider = new DerivedAutofacDependencyResolver(container); |
151 | | - DependencyResolver.SetResolver(provider); |
152 | | - Assert.AreEqual(provider, AutofacDependencyResolver.Current, "You should be able to derive from AutofacDependencyResolver and still use the Current property."); |
| 151 | + var resolver = new DerivedAutofacDependencyResolver(container); |
| 152 | + DependencyResolver.SetResolver(resolver); |
| 153 | + Assert.AreEqual(resolver, AutofacDependencyResolver.Current, "You should be able to derive from AutofacDependencyResolver and still use the Current property."); |
| 154 | + Assert.That(resolver.GetService(typeof(object)), Is.Not.Null); |
| 155 | + Assert.That(resolver.GetServices(typeof(object)), Has.Length.EqualTo(1)); |
153 | 156 | } |
154 | 157 |
|
155 | 158 | [Test] |
@@ -206,9 +209,18 @@ public void GetServicesReturnsRegisteredService() |
206 | 209 |
|
207 | 210 | private class DerivedAutofacDependencyResolver : AutofacDependencyResolver |
208 | 211 | { |
209 | | - public DerivedAutofacDependencyResolver(IContainer container) |
210 | | - : base(container, new StubLifetimeScopeProvider(container)) |
| 212 | + public DerivedAutofacDependencyResolver(IContainer container) : base(container) |
| 213 | + { |
| 214 | + } |
| 215 | + |
| 216 | + public override object GetService(Type serviceType) |
| 217 | + { |
| 218 | + return serviceType == typeof(object) ? new object() : base.GetService(serviceType); |
| 219 | + } |
| 220 | + |
| 221 | + public override IEnumerable<object> GetServices(Type serviceType) |
211 | 222 | { |
| 223 | + return serviceType == typeof(object) ? new[] {new object()} : base.GetServices(serviceType); |
212 | 224 | } |
213 | 225 | } |
214 | 226 | } |
|
0 commit comments