public void ReleaseInstance_NullInstanceContext() { var data = new ServiceImplementationData(); var container = new ContainerBuilder().Build(); var provider = new AutofacInstanceProvider(container, data); object instance = new object(); Assert.Throws<ArgumentNullException>(() => provider.ReleaseInstance(null, instance)); }
public void GetInstance_NullInstanceContext() { var data = new ServiceImplementationData(); var container = new ContainerBuilder().Build(); var provider = new AutofacInstanceProvider(container, data); var message = new TestMessage(); Assert.Throws<ArgumentNullException>(() => provider.GetInstance(null, message)); }
public void ReleaseInstance_NullInstanceContext() { var data = new ServiceImplementationData(); var container = new ContainerBuilder().Build(); var provider = new AutofacInstanceProvider(container, data); object instance = new object(); Assert.Throws <ArgumentNullException>(() => provider.ReleaseInstance(null, instance)); }
public void GetInstance_NullInstanceContext() { var data = new ServiceImplementationData(); var container = new ContainerBuilder().Build(); var provider = new AutofacInstanceProvider(container, data); var message = new TestMessage(); Assert.Throws <ArgumentNullException>(() => provider.GetInstance(null, message)); }
public void Ctor_StoresParameters() { var data = new ServiceImplementationData(); var container = new ContainerBuilder().Build(); var provider = new AutofacInstanceProvider(container, data); Assert.AreSame(data, provider.ServiceData, "The service implementation data was not stored."); Assert.AreSame(container, provider.Container, "The container was not stored."); }
public void LifetimeScopeDisposedWhenExceptionThrownInServiceConstructor() { var builder = new ContainerBuilder(); var released = false; builder.RegisterType<Disposable>().OnRelease(d => released = true); builder.RegisterType<BadService>(); var container = builder.Build(); var data = new ServiceImplementationData { ImplementationResolver = l => l.Resolve<BadService>() }; var provider = new AutofacInstanceProvider(container, data); var context = new InstanceContext(new object()); Assert.Throws<DependencyResolutionException>(() => provider.GetInstance(context)); Assert.True(released); }
public void LifetimeScopeDisposedWhenExceptionThrownInServiceConstructor() { var builder = new ContainerBuilder(); var released = false; builder.RegisterType <Disposable>().OnRelease(d => released = true); builder.RegisterType <BadService>(); var container = builder.Build(); var data = new ServiceImplementationData { ImplementationResolver = l => l.Resolve <BadService>() }; var provider = new AutofacInstanceProvider(container, data); var context = new InstanceContext(new object()); Assert.Throws <DependencyResolutionException>(() => provider.GetInstance(context)); Assert.True(released); }
public void Dispose_InstancesDisposed() { var builder = new ContainerBuilder(); builder.RegisterType<DisposeTracker>(); var container = builder.Build(); var impData = new ServiceImplementationData() { ConstructorString = "TestService", ServiceTypeToHost = typeof(DisposeTracker), ImplementationResolver = l => l.Resolve<DisposeTracker>() }; var context = new AutofacInstanceContext(container); var disposable = (DisposeTracker)context.Resolve(impData); Assert.False(disposable.IsDisposedPublic); context.Dispose(); Assert.True(disposable.IsDisposedPublic); }
public void Dispose_InstancesDisposed() { var builder = new ContainerBuilder(); builder.RegisterType <DisposeTracker>(); var container = builder.Build(); var impData = new ServiceImplementationData() { ConstructorString = "TestService", ServiceTypeToHost = typeof(DisposeTracker), ImplementationResolver = l => l.Resolve <DisposeTracker>() }; var context = new AutofacInstanceContext(container); var disposable = (DisposeTracker)context.Resolve(impData); Assert.IsFalse(disposable.IsDisposedPublic); context.Dispose(); Assert.IsTrue(disposable.IsDisposedPublic); }
public void Ctor_RequiresContainer() { var data = new ServiceImplementationData(); Assert.Throws <ArgumentNullException>(() => new AutofacDependencyInjectionServiceBehavior(null, data)); }
public void Ctor_RequiresContainer() { var data = new ServiceImplementationData(); Assert.Throws <ArgumentNullException>(() => new AutofacInstanceProvider(null, data)); }
public void Ctor_RequiresContainer() { var data = new ServiceImplementationData(); Assert.Throws<ArgumentNullException>(() => new AutofacDependencyInjectionServiceBehavior(null, data)); }
public void Ctor_RequiresContainer() { var data = new ServiceImplementationData(); Assert.Throws<ArgumentNullException>(() => new AutofacInstanceProvider(null, data)); }