private static TestableAccountController CreateController()
 {
     var c = new TestableAccountController(
         new AuthenticationService(
             new TestDataRepository(),
             new TestHashService(),
             new Mock<HttpContextBase>().Object),
         new TestAuthTokenService(),
         new TestUrlService());
     return c;
 }
        public void LogOn_Post_Has_Validation_Errors_Test()
        {
            // Arrange
            TestableAccountController controller = new TestableAccountController();

            // Act
            RedirectToRouteResult result = controller.LogOn(new LogOnModel(), "") as RedirectToRouteResult;

            // Assert
            Assert.False(controller.ModelState.IsValid);
            Assert.Equal("The user name or password provided is incorrect.", controller.ModelState[""].Errors.First().ErrorMessage);
        }
        public void LogOff_Test()
        {
            // Arrange
            TestableAccountController controller = new TestableAccountController();

            // Act
            RedirectToRouteResult result = controller.LogOff() as RedirectToRouteResult;

            // Assert
            Assert.True(result.RouteValues.Any(x => x.Key == "action" && (string) x.Value == ""));
            Assert.True(result.RouteValues.Any(x => x.Key == "controller" && (string)x.Value == "Elmah"));
            Assert.True(controller.SignOutInternalCalled);
        }
        public void LogOn_Post_Test()
        {
            // Arrange
            TestableAccountController controller = new TestableAccountController();
            controller.UserValid = true;

            LogOnModel model = new LogOnModel();
            model.UserName = "******";
            model.Password = "******";

            // Act
            RedirectToRouteResult result = controller.LogOn(model, "") as RedirectToRouteResult;

            // Assert
            Assert.True(controller.ModelState.IsValid);
            Assert.True(controller.ValidateUserCalled);
            Assert.True(controller.SetAuthCookieCalled);
            Assert.True(result.RouteValues.Any(x => x.Key == "action" && (string)x.Value == ""));
            Assert.True(result.RouteValues.Any(x => x.Key == "controller" && (string)x.Value == "Elmah"));
        }
示例#5
0
 public void SetUp()
 {
     _service   = new Mock <IUserService>();
     controller = new TestableAccountController(_service.Object);
 }
示例#6
0
 public void Setup()
 {
     _controller = TestableAccountController.CreateInstance();
 }
        public void LogOn_Post_With_Return_Url_Test()
        {
            // Arrange
            TestableAccountController controller = new TestableAccountController();
            controller.Url = GetUrlHelperForIsLocalUrl();
            controller.UserValid = true;

            LogOnModel model = new LogOnModel();
            model.UserName = "******";
            model.Password = "******";

            // Act
            RedirectResult result = controller.LogOn(model, "/elmah") as RedirectResult;

            // Assert
            Assert.True(controller.ModelState.IsValid);
            Assert.True(controller.ValidateUserCalled);
            Assert.True(controller.SetAuthCookieCalled);
            Assert.Equal("/elmah", result.Url);
        }