public async Task DeveGarantirQueJurosSejaCalculado() { var calculo = _interestApplication.Calculate(100, 24) .GetAwaiter().GetResult(); Assert.False(calculo.IsNone); }
public async Task <ActionResult <ApiResponse> > Calculate([FromQuery] double initialValue, double months) { var apiResponse = new ApiResponse(); try { var calculo = await _interestApplication.Calculate(initialValue, months); // Instâncias de Option<T> encapsulam um valor que pode ou não existir. Este valor só pode ser acessado através do método Match. // Ver mais ref. este pacote em: https://gabriel-schade-cardoso.gitbook.io/tango-br/tipos/introduction-1 if (calculo.IsSome) { double amount = calculo .Match((a) => amount = a, () => 0); return(Ok(apiResponse.AddSuccess(amount))); } return(BadRequest(apiResponse.AddFailure("Erro ao calcular os juros. Por favor, tente novamente."))); } catch (Exception e) { return(BadRequest(apiResponse.AddFailure(e.Message, e))); } }