public async Task ResetPassword_Should_change_password_and_reset_pemisiontoken()
        {
            // arrange
            var user = UserBuilder.Create()
                       .WithEmail(HealthyJuicesConstants.DEFAULT_USER_LOGIN)
                       .WithPassword(RandomString)
                       .WithPermissionsToken(RandomString, DateTime.Today.AddDays(1))
                       .Active()
                       .Build(ArrangeRepositoryContext);

            var controller = new AuthorizationController(Mediator);
            var newPass    = "******";
            var dto        = new ResetPassword.Command(HealthyJuicesConstants.DEFAULT_USER_LOGIN, user.PermissionsToken.Token, newPass);

            // act
            await controller.ResetPasswordAsync(dto);

            // assert
            var subject = AssertRepositoryContext.Users.FirstOrDefault();

            subject.Should().NotBeNull();
            subject.Password.Salt.Should().NotBe(user.Password.Salt);
            subject.Password.Salt.Should().NotBe(user.Password.Text);

            subject.Password.CheckValidity(newPass).Should().BeTrue();

            subject.IsActive.Should().BeTrue();
            subject.PermissionsToken.Should().BeNull();

            MailerMock.VerifyNoOtherCalls();
        }
Example #2
0
        public async Task ResetPasswordAsync(ResetPasswordDto resetPasswordDto)
        {
            ResetPassword.Command command = _mapper.Map <ResetPassword.Command>(resetPasswordDto);
            await _mediator.Send(command);

            SendPasswordChangedInfo.Command emailCommand = _mapper.Map <SendPasswordChangedInfo.Command>(resetPasswordDto);
            await _mediator.Send(emailCommand);
        }
        public async Task <ActionResult> ResetPassword(ResetPassword.Command command)
        {
            var results = await Mediator.Send(command);

            if (!results.Succeeded)
            {
                return(BadRequest("Problem resetting password."));
            }
            return(Ok($"Your password has been reset - you can now login."));
        }
Example #4
0
        public async Task <ActionResult> ResetPassword(ResetPassword.Command command)
        {
            var result = await Mediator.Send(command);

            if (!result.Succeeded)
            {
                return(BadRequest("Problem resetting password"));
            }
            return(Ok("Password is reset- please login with your new passowrd"));
        }
Example #5
0
        public async Task <ActionResult> ResetPassword(ResetPassword.Command cmd)
        {
            var r = await _mediator.Send(cmd);

            var error = r.Error;

            if (error == null)
            {
                await EstablishSignedInIdentity(HttpContext, r.Aggregate);
            }

            return(this.OkOrError(r));
        }
Example #6
0
        public async Task Should_Rest_Password()
        {
            // Arrange
            var command = new ResetPassword.Command
            {
                Token           = "Token",
                Password        = UserSeedData.ValidPassword,
                UsernameOrEmail = "ludmilla"
            };

            // Act
            Unit result = await _handler.Handle(command, new CancellationToken());

            // Assert
            result.Should().BeEquivalentTo(Unit.Value);
        }
Example #7
0
        public void Should_Map_ResetPasswordCommand()
        {
            // Arrange
            var dto = new ResetPasswordDto
            {
                Password        = UserSeedData.ValidPassword,
                UsernameOrEmail = UserTestSeedData.Performer.UserName,
                Token           = "token%2B"
            };
            var expectedCommand = new ResetPassword.Command
            {
                Password        = dto.Password,
                UsernameOrEmail = dto.UsernameOrEmail,
                Token           = "token+"
            };

            // Act
            ResetPassword.Command command = _mapper.Map <ResetPassword.Command>(dto);

            // Assert
            command.Should().BeEquivalentTo(expectedCommand);
        }
Example #8
0
 public async Task <ActionResult <Unit> > ResetPassword(ResetPassword.Command command)
 {
     return(await Mediator.Send(command));
 }
Example #9
0
        public async Task <ActionResult <GenericResponse> > ResetPassword([FromRoute] string userId, [FromBody] ResetPassword.Command command)
        {
            command.UserId = userId;
            var result = await _mediator.Send(command);

            if (!result.Success)
            {
                return(BadRequest(result));
            }
            return(Ok(result));
        }
 public async Task ResetPasswordAsync([FromBody] ResetPassword.Command command)
 {
     await _mediator.Send(command);
 }