public async void Handle_GivenUnknownCredentials_ShouldFail() { // arrange Mock <UserManager <AppUser> > userManager = new Mock <UserManager <AppUser> >(); userManager.Setup(i => i.FindByNameAsync(It.IsAny <string>())).ReturnsAsync((AppUser)null); List <Claim> claims = new List <Claim>(); var mockUserRepository = new Mock <IUserRepository>(); mockUserRepository.Setup(repo => repo.SignIn(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <bool>())).ReturnsAsync(new Core.DTO.GatewayResponses.Repositories.SignInResponse(null, false)); var useCase = new SignInUseCase(mockUserRepository.Object); var mockOutputPort = new Mock <IOutputPort <Core.DTO.UseCaseResponses.SignInResponse> >(); mockOutputPort.Setup(outputPort => outputPort.Handle(It.IsAny <Core.DTO.UseCaseResponses.SignInResponse>())); // act var response = await useCase.Handle(new SignInRequest("", "password", true, true, false), mockOutputPort.Object); // assert Assert.False(response); mockUserRepository.Verify(factory => factory.FindByName(""), Times.Never); mockUserRepository.Verify(factory => factory.CheckPassword(It.IsAny <string>(), It.IsAny <string>()), Times.Never); mockOutputPort.VerifyAll(); }
public AccountController( SignInUseCase signInUseCase, SignUpUseCase signUpUseCase, DeleteAccountUseCase deleteAccountUseCase) { _signInUseCase = signInUseCase; _signUpUseCase = signUpUseCase; _deleteAccountUseCase = deleteAccountUseCase; }
SignInUseCase GetUseCase(SignInUseCaseConfig config) { Mock <IValidator <UserLoginModel> > validatorMock = new Mock <IValidator <UserLoginModel> >(); validatorMock.Setup(mock => mock.Validate(It.IsAny <UserLoginModel>())).Returns(config.ValidationResult); Mock <IIdentityProvider> identityProviderMock = new Mock <IIdentityProvider>(); identityProviderMock.Setup(mock => mock.CheckSignInAsync(It.IsAny <string>(), It.IsAny <string>())).Returns(Task.FromResult(config.DesiredSignInResult)); config.SignInExecutorMock ??= new Mock <ISignInExecutor>(); Mock <INavigator> navigatorMock = new Mock <INavigator>(); navigatorMock.Setup(mock => mock.NavigateTo(It.IsAny <NavigationLocation>())).Callback <NavigationLocation>((obj) => navigatedLocation = obj); config.ErrorCollectorMock ??= new Mock <IErrorCollector>(); SignInUseCase useCase = new SignInUseCase(validatorMock.Object, identityProviderMock.Object, config.SignInExecutorMock.Object, navigatorMock.Object, config.ErrorCollectorMock.Object, new SignInErrorCreator(new FailedSignInMessageConverter())); return(useCase); }
public AccountController(SignInUseCase useCase, ILogger <AccountController> logger, ModelStateUpdater modelStateUpdater) { this.useCase = useCase; this.logger = logger; this.modelStateUpdater = modelStateUpdater; }