public void EnsureControllerPostMethodCallsPostTokenUseCase() { var response = new GenerateTokenResponse(); _mockPostTokenUseCase.Setup(x => x.Execute(It.IsAny <TokenRequestObject>())).Returns(response); _classUnderTest.GenerateToken(It.IsAny <TokenRequestObject>()); _mockPostTokenUseCase.Verify(x => x.Execute(It.IsAny <TokenRequestObject>()), Times.Once); }
public void ControllerPostMethodShouldReturn201StatusCode() { var response = new GenerateTokenResponse(); _mockPostTokenUseCase.Setup(x => x.Execute(It.IsAny <TokenRequestObject>())).Returns(response); var result = _classUnderTest.GenerateToken(It.IsAny <TokenRequestObject>()) as CreatedAtActionResult; result.Should().NotBeNull(); result.StatusCode.Should().Be(201); }
public HttpResponseMessage Login(LoginRequest model) { CheckCredentialResponse checkResp = _router.Query <CheckCredentialRequest, CheckCredentialResponse>(new CheckCredentialRequest() { Username = model.Username, Password = model.Password }); if (checkResp.PrincipalId != default(Guid)) { return(Request.CreateResponse(HttpStatusCode.Unauthorized)); } if (!checkResp.Success) { _router.Push <LoginAttemptEvent>(evt => { evt.PrincipalId = checkResp.PrincipalId; evt.Browser = Context.Client.UA.Family; evt.System = Context.Client.OS.Family; evt.Device = $"{Context.Client.Device.Family} {Context.Client.Device.Brand} {Context.Client.Device.Model}"; evt.RemoteAddress = Request.GetOwinContext().Request.RemoteIpAddress; }); return(Request.CreateResponse(HttpStatusCode.Unauthorized)); } GenerateTokenResponse tokenResp = _router.Query <GenerateTokenRequest, GenerateTokenResponse>(new GenerateTokenRequest() { Key = Context.ServerConfig.AuthConfig.TokenKey, Algorithm = Context.ServerConfig.AuthConfig.TokenAlgorithm, Tokens = Context.ServerConfig.AuthConfig.TokenSpecs.Select(x => new Token() { Type = x.Type, Expiration = Context.Clock.UtcNow.Add(x.Duration).UtcDateTime }) }); return(Request.CreateResponse(HttpStatusCode.OK, new LoginResponse() { Tokens = tokenResp.Tokens.Select(x => x.ToString()) })); }
public HttpResponseMessage ResetPassword([FromUri] string token, [FromBody] string password) { Token resetToken = Token.Parse(token); DecodeTokenResponse decodeResp = _router.Query <DecodeTokenRequest, DecodeTokenResponse>( new DecodeTokenRequest() { Key = Context.ServerConfig.AuthConfig.TokenKey, Algorithm = Context.ServerConfig.AuthConfig.TokenAlgorithm, Data = Convert.FromBase64String(resetToken.Data), IV = Convert.FromBase64String(resetToken.InitValue) }); if (Context.Clock.UtcNow > decodeResp.Token.Expiration) { return(Request.CreateResponse(HttpStatusCode.Unauthorized)); } _router.Command(new SetPasswordCommand() { PrincipalId = resetToken.PrincipalId, Password = password }); GenerateTokenResponse tokenResp = _router.Query <GenerateTokenRequest, GenerateTokenResponse>(new GenerateTokenRequest() { Key = Context.ServerConfig.AuthConfig.TokenKey, Algorithm = Context.ServerConfig.AuthConfig.TokenAlgorithm, Tokens = Context.ServerConfig.AuthConfig.TokenSpecs.Select(x => new Token() { Type = x.Type, Expiration = Context.Clock.UtcNow.Add(x.Duration).UtcDateTime }) }); return(Request.CreateResponse(HttpStatusCode.OK, new LoginResponse() { Tokens = tokenResp.Tokens.Select(x => x.ToString()) })); }
protected OauthAutenticationApiCaller(Uri apiUri, GenerateTokenResponse token) { ApiUri = apiUri; Token = token; }
public MoipAccountsApi(Uri apiUri, GenerateTokenResponse token) : base(apiUri, token) { }