Ejemplo n.º 1
0
        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 });
     }            
 }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 5
0
 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);
 }