Ejemplo n.º 1
0
        public ActionResult Login(LoginVM user)
        {
            UserMediator mediator = new UserMediator();

            var isAuthenticated = mediator.Authenticate(user);

            if (isAuthenticated)
            {
                FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1, user.Email, DateTime.Now, DateTime.Now.AddMinutes(30), false, "");
                string CookieContents = FormsAuthentication.Encrypt(authTicket);
                var    cookie         = new HttpCookie(FormsAuthentication.FormsCookieName, CookieContents)
                {
                    Path = FormsAuthentication.FormsCookiePath
                };
                if (HttpContext.Response != null)
                {
                    HttpContext.Response.Cookies.Add(cookie);
                }

                Session["UserAccount"] = mediator.GetUser(user.Email);

                return(Redirect("~/project/index"));
            }
            else
            {
                ModelState.AddModelError("ErrorMessage", "Invalid credentials");
            }

            return(PartialView("~/Views/Account/Login.cshtml", user));
        }
Ejemplo n.º 2
0
        public void AuthenticateShouldReturnUser()
        {
            var userBusiness = new Mock<IUserBusiness>();
            var expectedUser = Builder<Data.User>.CreateListOfSize(1)
                .TheFirst(1).With(p => p.Password, "906bf7ec13d8bfe80ac1a7232e64cebd")
                .Build().ToList();
            var user = Builder<Models.User>.CreateNew()
                .With(p => p.Password, "pass123")
                .Build();
            userBusiness.Setup(a => a.GetAll()).Returns(expectedUser);

            var mediator = new UserMediator(_configuration, _mapper, userBusiness.Object);
            var actualUser = mediator.Authenticate(user.Email, user.Password);
            Assert.NotNull(actualUser);
        }