public ActionResult Register(RegisterViewModel model) { var registeringEnabled = ConfigurationManager.AppSettings["RegisterEnabled"]; if (registeringEnabled == "true") { if (ModelState.IsValid) { var user = SimpleFactories.GetUserFromRegisterViewModel(model); var result = UserService.RegisterUser(user); if (result.Status) { UserService.SignIn(model.UserName, false); return(RedirectToAction("Index", "Home")); } else { for (int i = 0; i < result.ErrorCodes.Count; i++) { ModelState.AddModelError("", RegisterResult.GetErrorMessage(result.ErrorCodes[i])); } } } return(View(model)); } else { ModelState.AddModelError("", "Регистирањето е оневозможено. Обидете се подоцна"); return(View(model)); } }
public void Register_Should_Return_ErrorCodes_For_Duplicate_Email() { //Arrange var repository = new TestUserRepository(); var service = new UserService(repository); var model = new User() { UserName = "******", Password = "******", Email = "*****@*****.**" }; //Act var result = service.RegisterUser(model); //Assert Assert.IsFalse(result.Status); Assert.IsTrue(result.ErrorCodes.Count == 1); Assert.AreEqual((RegisterResult.GetErrorMessage(result.ErrorCodes[0])), RegisterResult.GetErrorMessage(RegisterErrorCodes.EmailAlreadyTaken)); }
public void RegisterPost_Action_ShouldDisplay_ErrorMessage_ForTaken_Username() { // Arrange var model = new RegisterViewModel() { UserName = "******", Password = "******", PasswordAgain = "password", Email = "*****@*****.**" }; var service = new SignIn_Register_UserServiceMock(); var controller = new UserController(service, null); // Act var result = controller.Register(model) as ViewResult; // Assert Assert.IsNotNull(result, "Expected View as Result"); Assert.IsTrue(result.ViewData.ModelState.Count > 0, "Expecter Erros in Model"); string errorEx = result.ViewData.ModelState[""].Errors[0].ErrorMessage; Assert.AreEqual(errorEx, RegisterResult.GetErrorMessage(RegisterErrorCodes.UsernameAlreadyTaken), "Expecter Correct Error Message"); }