public async void TestaDesfazimento() { var requestEGift = new GerarCompraRequest() { GerarEGift = GerarEGiftDtoPadrao() }; var responseEGift = await ObterService().GerarCodigo(requestEGift); Assert.NotEmpty(responseEGift.EGift.RequisicaoId); var request = new DesfazimentoRequest() { RequisicaoId = responseEGift.EGift.RequisicaoId }; var response = await ObterService().Desfazimento(request); Assert.True(response.Valido); }
public async Task <DesfazimentoResponse> Desfazimento(DesfazimentoRequest request) { var response = new DesfazimentoResponse(); try { var validationResult = request.Validate(); if (!validationResult.IsValid) { response.Valido = false; foreach (var failure in validationResult.Errors) { response.AdicionarMensagemErro(TipoMensagem.Validacao, failure.ErrorMessage); } } else { var desfazimentoResponse = await _httpService.DesfazimentoEGift(new DesfazimentoEGiftRequest() { RequisicaoId = request.RequisicaoId }); response.Valido = true; return(response); } } catch (ApplicationException appEx) { response.Valido = false; response.AdicionarMensagemErro(TipoMensagem.ErroNegocio, appEx.Message); } catch (Exception ex) { response.Valido = false; response.AdicionarMensagemErro(TipoMensagem.ErroAplicacao, ex.StackTrace); } return(response); }