public async Task CalcularSemEnderecoTest() { var calcularRota = new CalcularRota(); var calcularRotaModel = new CalcularRotaModel(); var rota = await calcularRota.Calcular(mapLinkApiFactory, calcularRotaModel); }
private async Task<HttpResponseMessage> CalcularRota(string version, CalcularRotaModel calcularRotaModel) { try { ValidarModel(); var mapLinkAPI = mapLinkFactory.CreateFactory(version); var rotaModel = await calcularRota.Calcular(mapLinkAPI, calcularRotaModel); return Request.CreateResponse(HttpStatusCode.OK, rotaModel); } catch (Exception ex) { return Request.CreateResponse(HttpStatusCode.OK, new { Status = "Erro", Message = ex.Message }); } }
public async Task CalcularTest() { var calcularRota = new CalcularRota(); var calcularRotaModel = new CalcularRotaModel(); calcularRotaModel.Enderecos = new List<EnderecoModel>(); calcularRotaModel.Enderecos.Add(new EnderecoModel()); calcularRotaModel.Enderecos.Add(new EnderecoModel()); var rota = await calcularRota.Calcular(mapLinkApiFactory, calcularRotaModel); Assert.AreEqual(rota.CustoCombustivel, rotaModel.CustoCombustivel); Assert.AreEqual(rota.CustoTotal, rotaModel.CustoTotal); Assert.AreEqual(rota.Distancia, rotaModel.Distancia); Assert.AreEqual(rota.TempoTotal, rotaModel.TempoTotal); }
public async Task PostTest() { var controller = new CalculaRotaController(mapLinkFactory, calcularRota); controller.Request = new HttpRequestMessage(); controller.Request.SetConfiguration(new HttpConfiguration()); var calcularRotaModel = new CalcularRotaModel(); var post = controller.Post("v0", calcularRotaModel); var model = await post.Result.Content.ReadAsAsync<RotaModel>(); Assert.AreEqual(post.Result.StatusCode, HttpStatusCode.OK); Assert.AreEqual(model.TempoTotal, rotaModel.TempoTotal); Assert.AreEqual(model.CustoTotal, rotaModel.CustoTotal); Assert.AreEqual(model.CustoCombustivel, rotaModel.CustoCombustivel); Assert.AreEqual(model.Distancia, rotaModel.Distancia); }
public async Task<RotaModel> Calcular(AbstractMapLinkApiFactory mapLinkFactory, CalcularRotaModel calcularRotaModel) { var coordendas = await ObterCoordenadas(mapLinkFactory, calcularRotaModel.Enderecos); return await ObterRota(mapLinkFactory, coordendas, calcularRotaModel.KmLitro, calcularRotaModel.Veiculo); }