public void MeaningfulExceptionThrowWhenHttpContextNotAvailable()
 {
     var container = new ContainerBuilder().Build();
     var provider = new RequestLifetimeScopeProvider(container);
     var exception = Assert.Throws<InvalidOperationException>(() => provider.GetLifetimeScope(b => { }));
     Assert.That(exception.Message, Is.EqualTo(RequestLifetimeScopeProviderResources.HttpContextNotAvailable));
 }
        public override void BeforeAllWebRequests(WebRequestSupport.WebRequestTestHelper helper)
        {
            EnsureContainer();

            // sets the provider on module as well
            // TODO: I am pretty sure there is a race condition (module's provider is in a static field)
            this.requestScopeProvider = new RequestLifetimeScopeProvider(this.container);
            var module = (IHttpModule)Activator.CreateInstance(
                Type.GetType("Autofac.Integration.Mvc.RequestLifetimeHttpModule, Autofac.Integration.Mvc", true)
            );

            helper.RegisterModule(module);
        }
 public void ProviderRegisteredWithHttpModule()
 {
     var container = new ContainerBuilder().Build();
     var provider = new RequestLifetimeScopeProvider(container);
     Assert.That(RequestLifetimeHttpModule.LifetimeScopeProvider, Is.EqualTo(provider));
 }