public void GetService_WhenTheServiceIsNotRegisteredInTheContainer_AskTheResolutionToTheDefaultMvcResolver()
        {
            var stubDependency = MockRepository.GenerateStub<IControllerFactory>();
            var mockDefaultResolver = MockRepository.GenerateMock<IDependencyResolver>();
            mockDefaultResolver.Stub(s => s.GetService(typeof (IControllerFactory))).Return(stubDependency);
            IKernel stubKernel = new WindsorContainer().Kernel;

            var resolver = new WindsorDependencyResolver(mockDefaultResolver, stubKernel);
            var resolvedDependency = resolver.GetService(typeof(IControllerFactory));

            mockDefaultResolver.AssertWasCalled(m => m.GetService(typeof(IControllerFactory)));
            Assert.AreEqual(stubDependency, resolvedDependency);
        }
        public void GetService_WhenTheServiceIsRegisteredInTheContainer_ReturnTheService()
        {
            var stubDependency = MockRepository.GenerateStub<IControllerFactory>();
            var mockKernel = new WindsorContainer();
            mockKernel.Register(Component.For(typeof(IControllerFactory)).Instance(stubDependency));

            var resolver = new WindsorDependencyResolver(null, mockKernel.Kernel);
            var resolvedDependency = resolver.GetService(typeof(IControllerFactory));

            Assert.AreEqual(stubDependency, resolvedDependency);
        }