Exemplo n.º 1
1
        public void Register_UserCanRegister()
        {
            string userName = "******";
            string password = "******";
            string firstName = "Builder";
            string lastName = "Bob";
            string roleId = "1";
            string email = null;

            WebSecurity.Setup(s => s.CreateUserAndAccount(userName, password, new
            {
                FirstName = firstName,
                LastName = lastName,
                Email = email,
                RoleId = roleId
            }
            , false)).Returns(userName);
            WebSecurity.Setup(s => s.Login(userName, password, false)).Returns(true);

            var model = new RegisterModel
            {
                UserName = userName,
                Password = password,
                ConfirmPassword = password,
                FirstName = firstName,
                LastName = lastName,
                Email = null,
                RoleId = roleId
            };

            var result = Controller.Register(model) as RedirectToRouteResult;
            Assert.IsNotNull(result);

            WebSecurity.Verify();
        }
Exemplo n.º 2
0
        public ActionResult Register(RegisterModel model)
        {
            if (ModelState.IsValid)
            {
                // Attempt to register the user
                try
                {
                    WebSecurity.CreateUserAndAccount(model.UserName, model.Password, propertyValues: new
                    {
                        FirstName = model.FirstName,
                        LastName = model.LastName,
                        Email = model.Email,
                        RoleId = Int32.Parse(model.RoleId),
                        isActive = true
                    });
                    WebSecurity.Login(model.UserName, model.Password);
                    return RedirectToAction("Index", "Home");
                }
                catch (MembershipCreateUserException e)
                {
                    ModelState.AddModelError("error", ErrorCodeToString(e.StatusCode));
                }
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }
Exemplo n.º 3
0
        public void Register_ErrorWhileRegisteringCausesFormToBeRedisplayed()
        {
            string userName = "******";
            string password = "******";
            string firstName = "Builder";
            string lastName = "Bob";
            string roleId = "1";

            WebSecurity.Setup(s => s.CreateUserAndAccount(userName, password, null, false)).Returns(userName);
            WebSecurity.Setup(s => s.Login(userName, password, false)).Throws(
            new MembershipCreateUserException(MembershipCreateStatus.InvalidEmail));

            var model = new RegisterModel
            {
                UserName = userName,
                Password = password,
                ConfirmPassword = password,
                FirstName = firstName,
                LastName = lastName,
                RoleId = roleId
            };

            var result = Controller.Register(model) as ViewResult;
            Assert.IsNotNull(result);

            Assert.IsFalse(Controller.ModelState.IsValid);
        }
Exemplo n.º 4
0
        public ActionResult Register()
        {
            RegisterModel model = new RegisterModel();

            List<SelectListItem> roleList = new List<SelectListItem>();

            roleList.Add(new SelectListItem()
            {
                Value = ((int)Role.User).ToString(),
                Text = "User"
            });
            roleList.Add(new SelectListItem()
            {
                Value = ((int)Role.StoreOwner).ToString(),
                Text = "Store Owner"
            });
            roleList.Add(new SelectListItem()
            {
                Value = ((int)Role.Admin).ToString(),
                Text = "Admin"
            });

            model.RoleList = new SelectList(roleList, "Value", "Text");
            return View(model);
        }