public async Task <IActionResult> Register(ViewModel.Register model) { model.ClearMessages(); if (ModelState.IsValid) { try { var user = new User { Name = model.Name, UserName = model.Email, Email = model.Email, }; var result = await _service.RegisterUserAsync(user, model.Password); if (result) { return(RedirectToAction("Index", "Home")); } } catch (Exception ex) { model.ErrorMessage = $"Error registerring user: {ex.Message}"; _logger.LogError(ex, "Error registerring user"); } } return(View(model)); }
public async Task AccountController_Register_Successful() { var mockLogger = Mock.Of <ILogger <AccountController> >(); var mockUserProvider = Mock.Of <IUserProvider>(); var mockAccountService = new MockAccountService().MockRegisterUserAsync(true); var accountController = new AccountController(mockUserProvider, mockAccountService.Object, mockLogger); var registerViewModel = new ViewModel.Register { Name = "Test User", Email = "*****@*****.**", Password = "******", ConfirmPassword = "******" }; var result = (RedirectToActionResult)await accountController.Register(registerViewModel); Assert.Equal("Home", result.ControllerName); Assert.Equal("Index", result.ActionName); }
public async Task AccountController_Register_Unsuccessful() { var mockLogger = Mock.Of <ILogger <AccountController> >(); var mockUserProvider = Mock.Of <IUserProvider>(); var mockAccountService = new MockAccountService().MockRegisterUserAsync(false); var accountController = new AccountController(mockUserProvider, mockAccountService.Object, mockLogger); var registerViewModel = new ViewModel.Register { Name = "Test User", Email = "*****@*****.**", Password = "******", ConfirmPassword = "******" }; var result = (ViewResult)await accountController.Register(registerViewModel); var viewResult = Assert.IsType <ViewResult>(result); var model = Assert.IsType <ViewModel.Register>(viewResult.ViewData.Model); Assert.IsType <ViewModel.Register>(model); }
public IActionResult Register() { var model = new ViewModel.Register(); return(View(model)); }