Ejemplo n.º 1
0
        public void Cant_Register_Same_User_Twice()
        {
            var userStore = new Mock<IUserStore>();
            var authService = new Mock<IFormsAuthenticationService>();
            userStore.Setup(u => u.AddUser(It.IsAny<User>(), "abc")).Throws(new ArgumentException("Username already taken"));
            var controller = new UserController(userStore.Object, authService.Object);
            var model = new RegisterViewModel
            {
                ConfirmPassword = "******",
                Password = "******",
                Email = "*****@*****.**",
                Username = "******"
            };

            var result = controller.Register(model);

            userStore.Verify(u => u.AddUser(It.IsAny<User>(), "abc"), Times.Once);
            Assert.IsInstanceOf(typeof(ViewResult), result);
            var view = (RegisterViewModel)((ViewResult)result).Model;
            Assert.AreEqual("abc", view.Password);
            Assert.AreEqual("abc", view.ConfirmPassword);
            Assert.AreEqual("abc", view.Username);
            Assert.AreEqual("*****@*****.**", view.Email);
        }
Ejemplo n.º 2
0
        public void Register_Passwords_Must_Match()
        {
            var userStore = new Mock<IUserStore>();
            var authService = new Mock<IFormsAuthenticationService>();
            var controller = new UserController(userStore.Object, authService.Object);

            var model = new RegisterViewModel
            {
                ConfirmPassword = "******",
                Password = "******",
                Username = "******"
            };

            var result = controller.Register(model);

            Assert.IsInstanceOf(typeof(ViewResult), result);
            var view = (RegisterViewModel)((ViewResult)result).Model;
            Assert.AreEqual("abc", view.Password);
            Assert.AreEqual("def", view.ConfirmPassword);
            Assert.AreEqual("abc", view.Username);
        }
Ejemplo n.º 3
0
        public void Register_User()
        {
            var userStore = new Mock<IUserStore>();
            var authService = new Mock<IFormsAuthenticationService>();
            userStore.Setup(u => u.AddUser(It.IsAny<User>(), "abc"));
            var controller = new UserController(userStore.Object, authService.Object);
            var model = new RegisterViewModel
            {
                ConfirmPassword = "******",
                Password = "******",
                Email = "*****@*****.**",
                Username = "******"
            };

            var result = controller.Register(model);

            userStore.Verify(u => u.AddUser(It.IsAny<User>(), "abc"), Times.Once);
            Assert.IsInstanceOf(typeof(RedirectToRouteResult), result);
            var redirect = (RedirectToRouteResult) result;
            Assert.AreEqual("Index", redirect.RouteValues["action"]);
            Assert.AreEqual("Home", redirect.RouteValues["controller"]);
        }
Ejemplo n.º 4
0
        public void Register_Shows_Register_Page()
        {
            var userStore = new Mock<IUserStore>();
            var authService = new Mock<IFormsAuthenticationService>();
            var controller = new UserController(userStore.Object, authService.Object);

            var result = controller.Register();

            Assert.IsInstanceOf(typeof(ViewResult), result);
            var view = (ViewResult) result;
            Assert.IsInstanceOf(typeof(RegisterViewModel), view.Model);
            var model = (RegisterViewModel) view.Model;
            Assert.IsNull(model.Email);
            Assert.IsNull(model.ConfirmPassword);
            Assert.IsNull(model.Password);
            Assert.IsNull(model.Username);
        }