Example #1
0
        public void Crud()
        {
            var user = new CcmUser
            {
                UserName  = $"User{DateTime.Now:yyyyMMddHHmmss}",
                FirstName = "Förnamn",
                LastName  = "Efternamn",
                Password  = "******",
                Comment   = "Testanvändare"
            };

            var createResult = _sut.Create(user);

            Assert.IsTrue(createResult);

            var user2 = _sut.GetById(user.Id);

            Assert.AreEqual("Förnamn", user2.FirstName);
            Assert.AreEqual("Efternamn", user2.LastName);
            Assert.AreEqual("Testanvändare", user2.Comment);
            Assert.AreEqual(user.UserName, user2.UserName);

            user2.FirstName = "Alvar";
            user2.LastName  = "Dysterkvist";

            var updateResult = _sut.Update(user2);

            Assert.IsTrue(updateResult);

            var user3 = _sut.GetById(user2.Id);

            Assert.AreEqual("Alvar", user3.FirstName);
            Assert.AreEqual("Dysterkvist", user3.LastName);

            var deleteResult = _sut.Delete(user3.Id);

            Assert.IsTrue(deleteResult);

            var user4 = _sut.GetById(user3.Id);

            Assert.IsNull(user4);
        }
Example #2
0
        public ActionResult Save(UserFormViewModel model)
        {
            bool newUser = model.Id == Guid.Empty;

            try
            {
                if (ModelState.IsValid)
                {
                    var user = new CcmUser
                    {
                        Id        = model.Id,
                        UserName  = model.UserName.Trim(),
                        FirstName = model.FirstName ?? string.Empty,
                        LastName  = model.LastName ?? string.Empty,
                        Comment   = model.Comment ?? string.Empty,
                        RoleId    = model.RoleId,
                        Password  = model.Password
                    };

                    if (newUser)
                    {
                        if (_userRepository.GetByUserName(user.UserName) != null)
                        {
                            log.Warn("Can't create user. Username {0} already exists in CCM database", user.UserName);
                            ModelState.AddModelError("SaveUser", Resources.User_Name_Already_Taken);
                        }
                        else
                        {
                            _userRepository.Create(user);
                            return(RedirectToAction("Index"));
                        }
                    }
                    else
                    {
                        _userRepository.Update(user);
                        return(RedirectToAction("Index"));
                    }
                }
            }
            catch (Exception ex)
            {
                log.Error(ex, "Could not save user");
                ModelState.AddModelError("SaveUser", Resources.User_could_not_be_saved);
            }

            var userIsAdmin = User.IsInRole(Roles.Admin);

            model.Roles   = GetRoles(userIsAdmin);
            ViewBag.Title = newUser ? Resources.New_User : Resources.Edit_User;
            return(View("CreateEdit", model));
        }
Example #3
0
 public void Create(CcmUser user)
 {
     _userRepository.Create(user);
 }