public async Task CreateTokenAsync() { var user = DataHelper.GetUser("test"); _userRepository. Setup(x => x.GetAsync(It.IsAny <Expression <Func <User, bool> > >())).Returns(() => Task.FromResult(user)); _userRepository.Setup(x => x.GetClaims(It.IsAny <int>())) .Returns(new List <OperationClaim>() { new OperationClaim() { Id = 1, Name = "test" } }); _tokenHelper. Setup(x => x.CreateToken <SFwToken>(It.IsAny <User>(), It.IsAny <List <OperationClaim> >())). Returns(() => new SFwToken() { Expiration = DateTime.Now.AddMinutes(10), ExternalUserId = "1111111", OnBehalfOf = "true", Provider = AuthenticationProviderType.Person, Token = "User Token" }); var service = new PersonAuthenticationProvider( AuthenticationProviderType.Person, _userRepository.Object, _mobileLoginRepository.Object, _tokenHelper.Object, _smsService.Object); var command = new VerifyOtpCommand() { Code = 1, ExternalUserId = "111", Provider = AuthenticationProviderType.Person, ProviderSubType = "Person" }; var result = await service.CreateToken(command); Assert.That(result.Token, Is.EqualTo("User Token")); }
public async Task <IDataResult <DArchToken> > Handle(VerifyOtpCommand request, CancellationToken cancellationToken) { var provider = _coordinator.SelectProvider(request.Provider); return(await provider.Verify(request)); }