예제 #1
0
        public void SendResetPasswordEmailValidResult()
        {
            UserServiceMocker mocker = new UserServiceMocker();

            mocker.RepoMock.Setup(r => r.GetSingle(It.IsAny <Expression <Func <UserEntity, bool> > >()))
            .Returns(() => Task.FromResult <UserEntity>(new UserEntity()));

            IUserBLService service = mocker.GetService();

            var result = service.SendResetPasswordEmail("*****@*****.**");

            Assert.True(result.Result.IsOk);
            Assert.Equal(DateTime.Today.AddDays(30), result.Result.Content.ExpirationDate);
        }
예제 #2
0
        public void SendResetPasswordEmailNullUser()
        {
            UserServiceMocker mocker = new UserServiceMocker();

            mocker.RepoMock.Setup(r => r.GetSingle(It.IsAny <Expression <Func <UserEntity, bool> > >()))
            .Returns(() => Task.FromResult <UserEntity>(null));

            IUserBLService service = mocker.GetService();

            var result = service.SendResetPasswordEmail("*****@*****.**");

            Assert.Equal(ErrorStatus.ObjectNotFound, result.Result.Error.Status);
            Assert.Equal("User not found", result.Result.Error.Message);
        }
예제 #3
0
        public void ResetPasswordEmailValidResult()
        {
            UserServiceMocker mocker = new UserServiceMocker();

            mocker.RepoMock.Setup(r => r.GetSingle(It.IsAny <Expression <Func <UserEntity, bool> > >()))
            .Returns(() => Task.FromResult <UserEntity>(new UserEntity()));
            mocker.SystemCodeRepositoryMock.Setup(r => r.GetSingle(It.IsAny <Expression <Func <SystemCodeEntity, bool> > >()))
            .Returns(() => Task.FromResult <SystemCodeEntity>(new SystemCodeEntity()));

            IUserBLService service = mocker.GetService();

            var result = service.SendResetPasswordEmail("*****@*****.**");

            Assert.True(result.Result.IsOk);
        }
예제 #4
0
        public void SendResetPasswordEmailUnhandledException()
        {
            UserServiceMocker mocker = new UserServiceMocker();

            mocker.RepoMock.Setup(r => r.GetSingle(It.IsAny <Expression <Func <UserEntity, bool> > >()))
            .Returns(() => Task.FromResult <UserEntity>(new UserEntity()));
            mocker.SystemCodeRepositoryMock.Setup(r => r.Commit()).Throws(new Exception("testexception"));

            IUserBLService service = mocker.GetService();

            var result = service.SendResetPasswordEmail("*****@*****.**");

            Assert.Equal(ErrorStatus.InternalServer, result.Result.Error.Status);
            Assert.Equal("testexception", result.Result.Error.Message);
        }
예제 #5
0
        public async Task <IActionResult> ResetPassword([FromQuery] string email)
        {
            var result = await _userService.SendResetPasswordEmail(email);

            return(WrapResponse(result, HttpStatusCode.OK));
        }