public void LoginUser_VerifyRepository() { var mockBlogUserRepo = new MockIBlogUserRepository(); var interactor = new LoginUserInteractor(mockBlogUserRepo); var param_request = MakeRequest("Poptart"); mockBlogUserRepo.StubList(new List <BlogUser>()); interactor.LoginUser(param_request); mockBlogUserRepo.VerifyList(); }
public void LoginUser_UserNameDoesNotExists_ReturnsExpectedLoginUserResponse() { var stubBlogUserRepo = new StubIBlogUserRepository(); var interactor = new LoginUserInteractor(stubBlogUserRepo); stubBlogUserRepo.StubList(new List <BlogUser>()); var expected = MakeResponse(null, false); var param_request = MakeRequest("Poptart"); var actual = interactor.LoginUser(param_request); Assert.Equal(expected.SystemLoginSuccessful, actual.SystemLoginSuccessful); }
public void Execute_EmailAddressNotFound_UserNotLoggedIn() { var emailQuery = new Mock <FindUserQueryByEmail>(); emailQuery.Setup(x => x.Execute(_emailAddress)).Returns((User)null); var interactor = new LoginUserInteractor(emailQuery.Object); var result = interactor.Execute(new LoginRequest { EmailAddress = _emailAddress, Password = "******" }); Assert.Equal("User Not Logged In", result.ResponseMessage); }
public void LoginUser_UserNameExists_ReturnsExpectedLoginUserResponse() { var stubBlogUserRepo = new StubIBlogUserRepository(); var interactor = new LoginUserInteractor(stubBlogUserRepo); var stub_blogUser = new BlogUserFactory().Create(); var stub_list = new List <BlogUser> { stub_blogUser }; stubBlogUserRepo.StubList(stub_list); var expected = MakeResponse(stub_blogUser, true); var param_request = MakeRequest(stub_blogUser.UserName); var actual = interactor.LoginUser(param_request); Assert.Equal(expected.SystemLoginSuccessful, actual.SystemLoginSuccessful); Assert.Equal(expected.User, actual.User); }
public void Execute_PasswordNotVerified_UserNotLoggedIn() { BCryptPasswordHash pwh = new BCryptPasswordHash(); var hashedPassword = pwh.HashPassword("AReallyStringPassword"); var emailQuery = new Mock <FindUserQueryByEmail>(); emailQuery.Setup(x => x.Execute(_emailAddress)).Returns(new User { EmailAddress = _emailAddress, PasswordHash = hashedPassword }); var interactor = new LoginUserInteractor(emailQuery.Object); var result = interactor.Execute(new LoginRequest { EmailAddress = _emailAddress, Password = "******" }); Assert.Equal("User Not Logged In", result.ResponseMessage); }
public LoginController(IConfiguration configuration, LoginUserInteractor interactor) { _configuration = configuration; _interactor = interactor; }