public IActionResult FinalizeOrder(CredentialsInputModel credentials) { var order = _orderService.SendOrder(credentials); if (order != null && ModelState.IsValid) { this.Db.Add(order); } this.Db.SaveChanges(); return(this.Redirect("/Home/Index")); }
public Order SendOrder(CredentialsInputModel credentials) { var order = new Order { Name = credentials.Name, Email = credentials.Email, PhoneNumber = credentials.PhoneNumber, Address = credentials.Address, OrderOn = DateTime.Now }; return(order); }
public async Task AuthenticateModelPasswordOrLoginInvalid_TryAuthenticate_returnsNotFoundException() { var model = new CredentialsInputModel { Login = "******", Password = "******" }; user.Credentials.Password = "******"; mockUserRepository.Setup(x => x.GetUserWithCompany(It.IsAny <string>(), It.IsAny <CancellationToken>())).ReturnsAsync(user); var domain = GenerateUserService(); await Assert.ThrowsAsync <NotFoundException>(async() => await domain.Authenticate(model, new CancellationToken())); }
public async Task <UserLoggedOutputModel> Authenticate(CredentialsInputModel model, CancellationToken cancellationToken) { var user = await userRepository.GetUserWithCompany(model.Login, cancellationToken) ?? throw new NotFoundException("Login e Senha invalidos"); if (user.Credentials is not null && !user.Credentials.isAuthentic(model.Password)) { throw new NotFoundException("Login e Senha invalidos"); } var userLogged = mapper.Map <UserLoggedOutputModel>(user); userLogged.JsonWebToken = await jwtGenerator.GenerateToken(user); return(userLogged); }
public async Task AutheticateModelIsValid_TryAuthenticate_ReturnsUserAuthenticatedAndJwtToken() { var jwt = new JwtModel { AccessToken = "TOKEN_AUTHETICATED", ExpiresAt = DateTime.Now }; var model = new CredentialsInputModel { Login = "******", Password = "******" }; var userLogged = new UserLoggedOutputModel { JsonWebToken = jwt, Login = "******", Name = "Vinicius Santana" }; mockUserRepository.Setup(x => x.GetUserWithCompany(It.IsAny <string>(), It.IsAny <CancellationToken>())).ReturnsAsync(user); mockJwtService.Setup(x => x.GenerateToken(It.IsAny <User>())).ReturnsAsync(jwt); mockMapper.Setup(x => x.Map <UserLoggedOutputModel>(It.IsAny <User>())).Returns(userLogged); var domain = GenerateUserService(); var result = await domain.Authenticate(model, new CancellationToken()); Assert.NotNull(result); }
public async Task <IActionResult> Authenticate(CredentialsInputModel model, CancellationToken cancellationToken) { return(Ok(await userService.Authenticate(model, cancellationToken))); }