public async Task <string> ObterTokenAsync(Tra tra) { if (HealthCheck()) { if (!VerificarTokenExiste(tra)) { return(_accessToken.access_token); } try { await ObterTokenParceiro(tra); GravarToken(_accessToken.access_token, _accessToken.expires_in, tra); } catch (Exception err) { throw new Exception($"Não foi possível obter o Token! + {err.Message}"); } return(_accessToken.access_token); } else { await ObterTokenParceiro(tra); return(_accessToken.access_token); } }
private async Task RetornarToken(Tra tra) { string hostIdentityServer = tra.Url; string usuario = tra.Username; string senha = tra.Password; _accessToken = ObterTokenPorUsuario(hostIdentityServer, usuario, senha); }
public async Task Transaction_GetOne_ReturnsOkObjectResultOnExistingIndex_Test() { var actual = await Tra.GetOne(2); await Db.Connection.CloseAsync(); Assert.IsInstanceOf <OkObjectResult>(actual); }
public async Task Transaction_DeleteAll_ReturnsValue_Test() { var expected = await Tra.DeleteAll(); await Db.Connection.CloseAsync(); Assert.IsNotNull(expected); }
public async Task Transaction_GetOne_ReturnsNotFoundResultOnNullIndex_Test() { var actual = await Tra.GetOne(999); await Db.Connection.CloseAsync(); Assert.IsInstanceOf <NotFoundResult>(actual); }
public async Task Transaction_GetOne_ReturnsValue_Test() { var expected = await Tra.GetOne(1); await Db.Connection.CloseAsync(); Assert.IsNotNull(expected); }
private void GravarToken(string token, string expireTime, Tra tra) { using (ConnectionMultiplexer connectionRedis = ConnectionMultiplexer.Connect("localhost:6379")) { IDatabase clientRedis = connectionRedis.GetDatabase(); clientRedis.StringSet(tra.CodDte, token); clientRedis.KeyExpire(tra.CodDte, TimeSpan.FromSeconds(ConverterTempo(expireTime))); connectionRedis.Close(); } }
private bool VerificarTokenExiste(Tra tra) { using (ConnectionMultiplexer connectionRedis = ConnectionMultiplexer.Connect("localhost:6379")) { IDatabase clientRedis = connectionRedis.GetDatabase(); _accessToken.access_token = clientRedis.StringGet(tra.CodDte); var tempoToken = clientRedis.KeyTimeToLive(tra.CodDte); return(string.IsNullOrEmpty(_accessToken.access_token)); } }
public async Task Transaction_Put_ReturnsOkObjectResultOnExistingIndex_Test() { TransactionData body = new TransactionData(); body.Time_Stamp = DateTime.Now; var actual = await Tra.PutOne(2, body); await Db.Connection.CloseAsync(); Assert.IsInstanceOf <OkObjectResult>(actual); }
public async Task Transaction_Put_ReturnsNotFoundResultOnNullIndex_Test() { TransactionData body = new TransactionData(); body.Time_Stamp = DateTime.Now; var actual = await Tra.PutOne(999, body); await Db.Connection.CloseAsync(); Assert.IsInstanceOf <NotFoundResult>(actual); }
public async Task Transaction_Put_ReturnsValue_Test() { TransactionData body = new TransactionData(); body.Time_Stamp = DateTime.Now; var expected = await Tra.PutOne(1, body); await Db.Connection.CloseAsync(); Assert.IsNotNull(expected); }
private async Task ObterTokenParceiro(Tra tra) { var policy = Policy.Handle <Exception>(e => { Console.WriteLine("Tentando obter Token"); return(true); }).WaitAndRetryAsync(3, i => TimeSpan.FromTicks(5)); await policy.ExecuteAsync(async() => { await RetornarToken(tra); }); }