public ActionResult Add(CustoChamada custoChamada) { try { _custoChamadaServiceService.Add(custoChamada); return(Created("api/ddds", custoChamada)); } catch (Exception ex) { return(BadRequest(ex.ToString())); } }
public void CustoChamadaService_Add_Return_ThrowsException() { var custoChamada = new CustoChamada { Id = 1, DDDOrigemId = 1, DDDDestinoId = 1, CustoMinuto = 1.9M }; Assert.Throws <Exception>(() => _serviceMock.Add(custoChamada)); }
public void CustoChamadaService_Add_Return_Be_Sucess() { var custoChamada = new CustoChamada { Id = 1, DDDOrigemId = 1, DDDDestinoId = 2, CustoMinuto = 1.9M }; _serviceMock.Add(custoChamada); _custoChamadaRepositoryMock.Verify(r => r.Add( It.Is <CustoChamada>(v => v.Id == custoChamada.Id))); }
public void CustoChamada_Save_Changes_Is_Called() { var custoChamada = new CustoChamada { Id = 1, DDDOrigemId = 1, DDDDestinoId = 2, CustoMinuto = 1.90M }; _custoChamadaRepository.Add(custoChamada); var retorno = _custoChamadaRepository.GetById(1); //Assert Assert.NotNull(retorno); Assert.IsAssignableFrom <CustoChamada>(retorno); }
private void BindCustoChamadas() { var custoChamada1 = new CustoChamada { Id = 1, DDDOrigemId = 1, DDDDestinoId = 2, CustoMinuto = 1.9M }; var custoChamada2 = new CustoChamada { Id = 2, DDDOrigemId = 1, DDDDestinoId = 3, CustoMinuto = 1.7M }; _custoChamadaServiceMock.Setup(x => x.Get(1, 2)).Returns(custoChamada1); _custoChamadaServiceMock.Setup(x => x.Get(1, 3)).Returns(custoChamada2); }
public async Task Post_Returns_Created_Response() { var ddd = new CustoChamada { DDDOrigemId = 1, DDDDestinoId = 2, CustoMinuto = 2.5M }; HttpContent httpContent = new StringContent(JsonConvert.SerializeObject(ddd), Encoding.UTF8); httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json"); var postRequest = new HttpRequestMessage(HttpMethod.Post, "/api/custochamadas"); postRequest.Content = httpContent; var response = await _client.SendAsync(postRequest); response.EnsureSuccessStatusCode(); response.StatusCode.Should().Be(HttpStatusCode.Created); }
public void Simular(SimulacaoChamada simulacaoChamada) { Validar(simulacaoChamada); if (Erros.Count > 0) { throw new Exception(string.Join(". ", Erros.ToArray())); } simulacaoChamada.DDDOrigem = _dddService.GetById(simulacaoChamada.DDDOrigemId); simulacaoChamada.DDDDestino = _dddService.GetById(simulacaoChamada.DDDDestinoId); // Buscar Plano simulacaoChamada.Plano = _planoService.GetById(simulacaoChamada.PlanoId); // Buscar Custo Chamada CustoChamada custoChamada = _custoChamadaService.Get(simulacaoChamada.DDDOrigemId, simulacaoChamada.DDDDestinoId); if (custoChamada != null) { //Custo sem fale mais simulacaoChamada.CustoSemFaleMais = simulacaoChamada.Tempo * custoChamada.CustoMinuto; // Custo com fale mais if (simulacaoChamada.Tempo > simulacaoChamada.Plano.TempoMinutos) { // obter total de minutos excedentes do plano selecionado int minutosExcedente = simulacaoChamada.Tempo - simulacaoChamada.Plano.TempoMinutos; // calcular custo com fale mais simulacaoChamada.CustoComFaleMais = minutosExcedente * custoChamada.CustoMinuto; // adicionar acrescimo simulacaoChamada.CustoComFaleMais = Convert.ToDecimal(simulacaoChamada.CustoComFaleMais) + Convert.ToDecimal(simulacaoChamada.CustoComFaleMais) * simulacaoChamada.Plano.CustoAdicionalMinuto / 100; } else { simulacaoChamada.CustoComFaleMais = 0; } } }