コード例 #1
0
        public void Check_Email_Is_Valid(string fullName, string email, string password, string confirmPassword)
        {
            RegisterCreateDTO _registerCreateDTO = CreateRegister(fullName, email, password, confirmPassword);


            Assert.IsTrue(_registerCreateDTO.Invalid);
        }
コード例 #2
0
        public void Check_Register_Is_Valid(string fullName, string email, string password, string confirmPassword)
        {
            RegisterCreateDTO registerCreateDTO = new RegisterCreateDTO();

            Assert.IsNull(registerCreateDTO.Email);
            Assert.IsNull(registerCreateDTO.FullName);
            Assert.IsNull(registerCreateDTO.Password);
            Assert.IsNull(registerCreateDTO.ConfirmPassword);

            registerCreateDTO.FullName        = fullName;
            registerCreateDTO.Email           = email;
            registerCreateDTO.Password        = password;
            registerCreateDTO.ConfirmPassword = confirmPassword;

            Assert.IsNotNull(registerCreateDTO.Email);
            Assert.IsNotNull(registerCreateDTO.FullName);
            Assert.IsNotNull(registerCreateDTO.Password);
            Assert.IsNotNull(registerCreateDTO.ConfirmPassword);

            Assert.AreEqual(fullName, registerCreateDTO.FullName);
            Assert.AreEqual(email, registerCreateDTO.Email);
            Assert.AreEqual(password, registerCreateDTO.Password);
            Assert.AreEqual(confirmPassword, registerCreateDTO.ConfirmPassword);
            Assert.AreEqual(registerCreateDTO.ConfirmPassword, registerCreateDTO.ConfirmPassword);

            registerCreateDTO.Validate();

            Assert.IsTrue(registerCreateDTO.Valid);
        }
コード例 #3
0
        public async Task <IActionResult> Register(
            [FromServices] IAuthenticationService _service,
            [FromBody] RegisterCreateDTO registerDTO)
        {
            registerDTO.Validate();
            if (registerDTO.Invalid)
            {
                return(BadRequest(new ResultDTO(false, "Invalid field.", registerDTO.Notifications)));
            }

            try
            {
                var result = await _service.Register(registerDTO);

                if (result.Success == true)
                {
                    return(Ok(result));
                }

                return(BadRequest(result));
            }
            catch (Exception ex)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError,
                                       $"ERROR {ex.Message}"));
            }
        }
コード例 #4
0
        public void Check_ConfirmPassword_Smaller_Than_Or_Equals_100_Chars(string fullName, string email, string password, string confirmPassword)
        {
            RegisterCreateDTO _registerCreateDTO = CreateRegister(fullName, email, password, confirmPassword);

            if (_registerCreateDTO.Valid)
            {
                Assert.AreEqual(_registerCreateDTO.Password, _registerCreateDTO.ConfirmPassword);
            }
        }
コード例 #5
0
        private static RegisterCreateDTO CreateRegister(string fullName, string email, string password, string confirmPassword)
        {
            var registerCreateDTO = new RegisterCreateDTO
            {
                FullName        = fullName,
                Email           = email,
                Password        = password,
                ConfirmPassword = confirmPassword
            };

            registerCreateDTO.Validate();
            return(registerCreateDTO);
        }
コード例 #6
0
        private static Task <ResultDTO> CreateControlerAndUseService(
            string fullName        = null,
            string email           = null,
            string confirmPassword = null,
            string password        = null,
            string token           = null
            )
        {
            var fakeContext       = new FakeContext("AccountManagerServiceTests");
            var fakeUserManager   = fakeContext.FakeUserManager().Object;
            var fakeSignInManager = fakeContext.FakeSigninManager().Object;

            var controller = new AuthenticationService(fakeUserManager, fakeSignInManager, fakeContext._mapper, fakeContext._tokenService, fakeContext._configuration, fakeContext._mailService);

            if (fullName != null)
            {
                var registerDTO = new RegisterCreateDTO {
                    FullName = fullName, Email = email, Password = password, ConfirmPassword = confirmPassword
                };;
                return(controller.Register(registerDTO));
            }
            else if (token != null)
            {
                var result = controller.ConfirmEmail(email, token);
                return(result);
            }
            else if (password != null)
            {
                var loginDTO = new LoginCreateDTO {
                    Email = email, Password = password
                };

                return(controller.Login(loginDTO));
            }

            var forgotPasswordDTO = new ForgotPasswordDTO {
                Email = email
            };

            return(controller.ForgotPassword(forgotPasswordDTO));
        }
コード例 #7
0
        private static Task <IActionResult> CriaControllerEUtilizaAService(
            string fullName = null, string email = null, string password = null, string confirmPassword = null, string token = null)
        {
            var fakeContext = new FakeContext("AccountManagerControllerTests");
            var fakeService = fakeContext.FakeAuthenticationRepository().Object;
            var controller  = new AuthenticationController();

            if (confirmPassword != null)
            {
                var registerCreateDTO = new RegisterCreateDTO
                {
                    FullName        = fullName,
                    Email           = email,
                    Password        = password,
                    ConfirmPassword = confirmPassword
                };
                return(controller.Register(fakeService, registerCreateDTO));
            }
            else if (token != null)
            {
                return(controller.ConfirmEmail(fakeService, fakeContext._configuration, email, token));
            }
            else if (password != null && confirmPassword == null)
            {
                var loginCreateDTO = new LoginCreateDTO
                {
                    Email    = email,
                    Password = password
                };
                return(controller.SignIn(fakeService, loginCreateDTO));
            }
            else
            {
                var forgotPasswordDTO = new ForgotPasswordDTO
                {
                    Email = email
                };
                return(controller.ForgotPassword(fakeService, forgotPasswordDTO));
            }
        }
コード例 #8
0
        public async Task <ResultDTO> Register(RegisterCreateDTO registerDTO)
        {
            var user = await _userManager.FindByEmailAsync(registerDTO.Email);

            if (user != null)
            {
                return(new ResultDTO(false, "User already exist!", null));
            }

            user = User.Create(registerDTO.FullName, registerDTO.Email, registerDTO.Email);

            var result = await _userManager.CreateAsync(user, registerDTO.Password);

            if (!result.Succeeded)
            {
                return(new ResultDTO(false, result.ToString(), null));
            }

            await CreateAndSendEmailConfirm(registerDTO.Email, user).ConfigureAwait(false);

            return(new ResultDTO(true, "User account created sucessfully, please confirm your email.", null));
        }
コード例 #9
0
        public void Check_ConfirmPassowrd_Greater_Than_7_Chars(string fullName, string email, string password)
        {
            RegisterCreateDTO _registerCreateDTO = CreateRegister(fullName, email, password, new string('*', 101));

            Assert.IsTrue(_registerCreateDTO.Invalid);
        }
コード例 #10
0
        public void Check_Password_Smaller_Than_101_Chars(string fullName, string email, string confirmPassword)
        {
            RegisterCreateDTO _registerCreateDTO = CreateRegister(fullName, email, new string('*', 101), confirmPassword);

            Assert.IsTrue(_registerCreateDTO.Invalid);
        }
コード例 #11
0
        public void Check_FullName_Smaller_Than_Or_Equals_100(string email, string password, string confirmPassword)
        {
            RegisterCreateDTO _registerCreateDTO = CreateRegister(new string('*', 101), email, password, confirmPassword);

            Assert.IsTrue(_registerCreateDTO.Invalid);
        }
コード例 #12
0
 public async Task <IActionResult> Create([FromBody] RegisterCreateDTO dto)
 {
     return(await _controllerHelper.CreateItem <RegisterCreateDTO>(this, _repo, dto));
 }