コード例 #1
0
        /// <summary>
        /// Adds a user to the system.
        /// </summary>
        /// <param name="registerView"></param>
        public void AddUser(RegisterView registerView)
        {
            Person person = new Person()
            {
                Username = registerView.Username,
                Password = SecurityManager.HashPassword(registerView.Password),
                Email = registerView.Email,
                Name = registerView.Name,
                Surname = registerView.Surname,
                Ssn = registerView.Ssn,
                Role = _roleQueryService.GetSingle(role => role.Name.Equals("applicant"))
            };

            _personQueryService.Add(person);
        }
コード例 #2
0
        public void RegisterReturnsCorrectViewOnNonMatchingPasswordsTest()
        {
            AuthenticationController controller = new AuthenticationController(null, null);

            RegisterView registerView = new RegisterView();
            registerView.Password = "******";
            registerView.PasswordVerify = "abc123";
            
            ViewResult result = controller.Register(registerView) as ViewResult;
            Assert.IsNotNull(result);
            ModelState paramState;
            Assert.IsTrue(controller.ModelState.TryGetValue("verify_pass", out paramState));
            Assert.DoesNotThrow(() =>
                paramState.Errors.Single(s => s.ErrorMessage.Equals("Password verification failed!")));
        }
コード例 #3
0
        public void RegisterReturnsCorrectViewOnTakenUsernameTest()
        {
            Mock<IUserManager> umMock = new Mock<IUserManager>();
            AuthenticationController controller = new AuthenticationController(umMock.Object, null);

            RegisterView registerView = new RegisterView();
            registerView.Username = "******";
            registerView.Password = registerView.PasswordVerify = "pass";

            umMock.Setup(um => um.IsUsernameInUse(It.Is<string>(s => s.Equals(registerView.Username)))).Returns(true);

            ViewResult result = controller.Register(registerView) as ViewResult;

            Assert.IsNotNull(result);
            ModelState paramState;
            Assert.IsTrue(controller.ModelState.TryGetValue("username_in_use", out paramState));
            Assert.DoesNotThrow(() =>
                paramState.Errors.Single(s => s.ErrorMessage.Equals("Username already in use!")));

            umMock.Verify(um => um.IsUsernameInUse(It.Is<string>(s => s.Equals(registerView.Username))), Times.Once());
        }