public async Task <ResponseDiv> DivAsync(RequestDiv requestDiv, bool save, string id, CancellationToken ct = default(CancellationToken)) { var resDiv = Math.Abs(requestDiv.Dividend) / Math.Abs(requestDiv.Divisor); var remDiv = Math.Abs(requestDiv.Dividend) % Math.Abs(requestDiv.Divisor); if (save) { await _operationRepository.AddAsync(new Model.Entities.Operation() { IdHeader = id, OperationType = "Div", Date = DateTime.Now.ToString(), Calculation = $"{Math.Abs(requestDiv.Dividend)} / ({ Math.Abs(requestDiv.Divisor)}) = {resDiv}" }); await _operationRepository.AddAsync(new Model.Entities.Operation() { IdHeader = id, OperationType = "Div", Date = DateTime.Now.ToString(), Calculation = $"{Math.Abs(requestDiv.Dividend)} % ({ Math.Abs(requestDiv.Divisor)}) = {remDiv}" }); } return(new ResponseDiv() { Quotient = resDiv, Remainder = remDiv }); }
internal string Div(int dividendo, int divisor) { var requestDiv = new RequestDiv { Dividend = dividendo, Divisor = divisor }; var result = _client.Post <ResponseDiv>("/div", requestDiv); return((string)result.RawData); }
public async Task Task_Div_Numbers() { RequestDiv requestDiv = new RequestDiv() { Dividend = 11, Divisor = 2 }; string strPayload = JsonConvert.SerializeObject(requestDiv); HttpContent content = new StringContent(strPayload, Encoding.UTF8, "application/json"); var response = await _client.PostAsync("api/v1/calculator/div", content); response.EnsureSuccessStatusCode(); var responseString = await response.Content.ReadAsStringAsync(); Assert.Equal("{\"quotient\":5,\"remainder\":1}", responseString); }
public async Task <IActionResult> Div([FromBody] RequestDiv requestDiv, CancellationToken ct = default(CancellationToken)) { try { bool save = Request.Headers.ContainsKey("X-Evl-Tracking-Id"); var id = save ? Request.Headers["X-Evl-Tracking-Id"].ToString() : null; var response = await _calculatorSupervisor.DivAsync(requestDiv, save, id, ct); return(Ok(response)); } catch (Exception ex) { var response = new ResponseCanonic() { ErrorCode = Enum.GetName(typeof(HttpStatusCode), HttpStatusCode.InternalServerError), ErrorStatus = (int)HttpStatusCode.InternalServerError, ErrorMessage = ex.Message }; return(StatusCode((int)HttpStatusCode.InternalServerError, response)); } }