public void AuthServicesController_SignOut()
        {
            using(ShimsContext.Create())
            {
                var substituteSessionAuthModule = Substitute.For<SessionAuthenticationModule>();

                System.IdentityModel.Services.Fakes.ShimFederatedAuthentication.SessionAuthenticationModuleGet =
                    () => substituteSessionAuthModule;

                var substituteRequestContext = Substitute.For<RequestContext>();
                substituteRequestContext.HttpContext = Substitute.For<HttpContextBase>();
                substituteRequestContext.HttpContext.Request.Returns(Substitute.For<HttpRequestBase>());
                substituteRequestContext.HttpContext.Request.ApplicationPath.Returns("/path");

                var subject = new AuthServicesController()
                    {
                        Url = new UrlHelper(substituteRequestContext)
                    }.SignOut();

                subject.Should().BeOfType<RedirectResult>().And
                    .Subject.As<RedirectResult>().Url.Should().Be("/path/");

                substituteSessionAuthModule.Received().SignOut();
            }
        }
        public void AuthServicesController_SignIn_Returns_SignIn()
        {
            var subject = new AuthServicesController().SignIn();

            subject.Should().BeOfType<RedirectResult>().And
                .Subject.As<RedirectResult>().Url
                .Should().Contain("?SAMLRequest");
        }