internal static void OnEndRequest(object sender, EventArgs e)
        {
            if (EndRequest != null)
            {
                EndRequest(sender, e);
            }

            var app = (HttpApplication)sender;

            RequestResourceTracker.DisposeResources(new HttpContextWrapper(app.Context));
        }
        public void RegisteringForDisposeDisposesObjects()
        {
            // Arrange
            var         context = new Mock <HttpContextBase>();
            IDictionary items   = new Hashtable();

            context.Setup(m => m.Items).Returns(items);
            var disposable = new Mock <IDisposable>();

            disposable.Setup(m => m.Dispose()).Verifiable();

            // Act
            RequestResourceTracker.RegisterForDispose(context.Object, disposable.Object);
            RequestResourceTracker.DisposeResources(context.Object);

            // Assert
            disposable.VerifyAll();
        }