示例#1
0
        public void EditViewTest()
        {
            //Arrange
            db = new touch_for_foodEntities();
            UserController target = new UserController();
            Session session = new Session(db, target);
            session.simulateLogin(user1.username, user1.password);
            int expected = user1.id;

            //Act
            ViewResult actual = (ViewResult)target.Edit(user1.id);

            //Assert
            Assert.AreEqual(((user)actual.Model).id, expected);
        }
示例#2
0
        public void EditUserTest()
        {
            //Arrange
            db = new touch_for_foodEntities();
            UserController target = new UserController();
            string changeString = "*****@*****.**";
            user1.first_name = changeString;

            //CheckSetup
            Assert.IsFalse(db.users.Find(user1.id).first_name.Equals(changeString, StringComparison.OrdinalIgnoreCase));

            // The edit needs the password to be un-hashed, so we're force it to be un-hashed
            user1.password = "******";
            user1.ConfirmPassword = "******";

            //Act
            var actual = target.Edit(user1, null) as RedirectToRouteResult;

            //Assertions
            db = new touch_for_foodEntities();
            Assert.IsTrue(db.users.Find(user1.id).first_name.Equals(changeString, StringComparison.OrdinalIgnoreCase));
            Assert.AreEqual("Index", actual.RouteValues["action"]);
        }
示例#3
0
        public void EditViewInvalidUserTest()
        {
            //Arrange
            db = new touch_for_foodEntities();
            UserController target = new UserController();
            Session session = new Session(db, target);
            session.simulateLogin(user1.username, user1.password);

            //Act
            var actualResult = target.Edit(user3.id) as RedirectToRouteResult;
            var actualResultURI = actualResult.RouteValues["controller"] + "/" + actualResult.RouteValues["action"];

            //Assertions
            Assert.AreEqual("Home/Index", actualResultURI);
        }
示例#4
0
        public void EditUserLockTest()
        {
            //Arrange
            db = new touch_for_foodEntities();
            UserController target = new UserController();
            string changeString = "*****@*****.**";
            user1.first_name = changeString;
            user1.version -= 1;

            //Check setup
            Assert.IsFalse(db.users.Find(user1.id).first_name.Equals(changeString, StringComparison.OrdinalIgnoreCase));

            //Act
            var actual = target.Edit(user1, null) as ViewResult;

            //Assertions
            db = new touch_for_foodEntities();
            string errorMsg = actual.ViewBag.Error;
            Assert.IsFalse(db.users.Find(user1.id).first_name.Equals(changeString, StringComparison.OrdinalIgnoreCase));
            Assert.IsNotNull(errorMsg); //error message is sent to view
        }