public void Setup() { _userRepository = new Mock <IUserRepository>(); _tokenHelper = new Mock <ITokenHelper>(); loginUserQueryHandler = new LoginUserQueryHandler(_userRepository.Object, _tokenHelper.Object); registerUserCommandHandler = new RegisterUserCommandHandler(_userRepository.Object); forgotPasswordCommandHandler = new ForgotPasswordCommandHandler(_userRepository.Object); }
public async Task GivenLoginUserQueryHandler_WhenIncorrectLoginInfoProvided_ThenShouldRaiseException() { _mockUserManager.FindByEmailAsync(_query.Email).ReturnsNullForAnyArgs(); var loginUserQueryHandler = new LoginUserQueryHandler(_mockUserManager, _mockJwtGenerator, _mockEventBus); await Assert.ThrowsAsync <RestException>(() => loginUserQueryHandler.Handle(_query, CancellationToken.None)); }
public async Task GivenLoginUserQueryHandler_WhenCheckingPasswordFails_ThenShouldThrowRestException() { _mockUserManager.FindByEmailAsync(_query.Email).ReturnsForAnyArgs(_user); _mockUserManager.CheckPasswordAsync(_user, _query.Password).ReturnsForAnyArgs(false); var loginUserQueryHandler = new LoginUserQueryHandler(_mockUserManager, _mockJwtGenerator, _mockEventBus); await Assert.ThrowsAsync <RestException>(() => loginUserQueryHandler.Handle(_query, CancellationToken.None)); }
public LoginUserTest() { // Arrange Mediator = new Mock <IMediator>(); SignInManager = new Mock <MockSignInManager>(); UserManager = new Mock <MockUserManager>(); Mapper = new Mapper(new MapperConfiguration(cfg => cfg.AddProfile(new MappingProfile()))); Logger = new Mock <ILogger <LoginUserQueryHandler> >(); Handler = new LoginUserQueryHandler(Mediator.Object, SignInManager.Object, UserManager.Object, Mapper, Logger.Object); }
public void Setup() { _userRepository = new Mock <IUserRepository>(); _tokenHelper = new Mock <ITokenHelper>(); _mediator = new Mock <IMediator>(); _cacheManager = new Mock <ICacheManager>(); _loginUserQueryHandler = new LoginUserQueryHandler(_userRepository.Object, _tokenHelper.Object, _mediator.Object, _cacheManager.Object); _registerUserCommandHandler = new RegisterUserCommandHandler(_userRepository.Object); _forgotPasswordCommandHandler = new ForgotPasswordCommandHandler(_userRepository.Object); }
GivenLoginUserQueryHandler_WhenCorrectLoginInfoProvided_ThenShouldCallUserManagerToCheckPassword() { _mockUserManager.FindByEmailAsync(_query.Email).ReturnsForAnyArgs(_user); _mockUserManager.CheckPasswordAsync(_user, _query.Password).ReturnsForAnyArgs(true); var loginUserQueryHandler = new LoginUserQueryHandler(_mockUserManager, _mockJwtGenerator, _mockEventBus); await loginUserQueryHandler.Handle(_query, CancellationToken.None); await _mockUserManager.Received().CheckPasswordAsync(Arg.Any <AppUser>(), Arg.Any <string>()); }
public async Task GivenLoginUserQueryHandler_WhenUserAuthenticated_ThenShouldPublishAuthenticationLogEvent() { _mockUserManager.FindByEmailAsync(_query.Email).ReturnsForAnyArgs(_user); _mockUserManager.CheckPasswordAsync(_user, _query.Password).ReturnsForAnyArgs(true); var loginUserQueryHandler = new LoginUserQueryHandler(_mockUserManager, _mockJwtGenerator, _mockEventBus); await loginUserQueryHandler.Handle(_query, CancellationToken.None); _mockEventBus.Received().Publish(Arg.Any <AuthenticationLogEvent>()); }
public async Task GivenLoginUserQueryHandler_WhenCorrectLoginInfoProvided_ThenShouldAuthenticateUser() { _mockUserManager.FindByEmailAsync(_query.Email).ReturnsForAnyArgs(_user); _mockUserManager.CheckPasswordAsync(_user, _query.Password).ReturnsForAnyArgs(true); var loginUserQueryHandler = new LoginUserQueryHandler(_mockUserManager, _mockJwtGenerator, _mockEventBus); var authenticatedUser = await loginUserQueryHandler.Handle(_query, CancellationToken.None); Assert.NotNull(authenticatedUser); Assert.Equal(authenticatedUser.Email, _query.Email); }
public void SetUp() { _service = new Mock <ILoginUserService>(); _commonService = new Mock <ICommonService>(); _unitOfWork = new Mock <IUnitOfWork>(); _sut = new LoginUserQueryHandler(_service.Object, _commonService.Object, _unitOfWork.Object); _query = new LoginUserQuery { Email = "email", Password = "******" }; _user = new User("email", "organizationId"); _service.Setup(x => x.GetUserByEmail(_query.Email, default)) .ReturnsAsync(_user); }
GivenLoginUserQueryHandler_WhenCheckingPasswordFails_ThenShouldPublishLogErrorEvent() { _mockUserManager.FindByEmailAsync(_query.Email).ReturnsForAnyArgs(_user); _mockUserManager.CheckPasswordAsync(_user, _query.Password).ReturnsForAnyArgs(false); var loginUserQueryHandler = new LoginUserQueryHandler(_mockUserManager, _mockJwtGenerator, _mockEventBus); try { await loginUserQueryHandler.Handle(_query, CancellationToken.None); } catch { _mockEventBus.Received().Publish(Arg.Any <ErrorLogEvent>()); } }