public void ObterCoordenadasTest()
        {
            IList <EnderecoEntity> l = new List <EnderecoEntity>();

            l.Add(new EnderecoEntity {
                Bairro = "Mirandopolis", Cidade = "São Paulo", Estado = "SP", Numero = "14", Rua = "Orissanga", Cep = "04052030"
            });

            var r = _target.ObterCoordenadas(l);

            Assert.IsTrue(r.Count > 0);
        }
        public ResultadoCalculoV1 CalcularRota(IList <DadosEntradaV1> entrada, TiposCalculoRota tc)
        {
            if (entrada.Count < 2)
            {
                throw new CalculoRotaBusinessException("entrada deve conter ao menos 2 registros!");
            }

            var map  = new MapperHelper <DadosEntradaV1, EnderecoEntity>();
            var map2 = new MapperHelper <ResultadoCalculoRotaEntity, ResultadoCalculoV1>();

            var enderecos = map.ConvertToList(entrada);

            var coordenadas = _data.ObterCoordenadas(enderecos);
            var r           = _data.CalcularRota(coordenadas, tc);

            return(map2.Convert(r));
        }