public async Task ObterPesoMedioPorEstado_EstadoVazioOuNulo_ThrowsException()
        {
            var clienteRepository = new Mock <IRepository <Cliente> >();
            var clienteAppService = new ClienteAppService(clienteRepository.Object, mapper);

            var ex = await Assert.ThrowsAsync <Exception>(() => clienteAppService.ObterPesoMedioPorEstado(""));

            var ex2 = await Assert.ThrowsAsync <Exception>(() => clienteAppService.ObterPesoMedioPorEstado(null));

            Assert.Equal("Estado não pode estar vazio ou nulo.", ex.Message);
            Assert.Equal("Estado não pode estar vazio ou nulo.", ex2.Message);
        }
        public async Task ObterPesoMedioPorEstado_Valido_RetornaPesoMedio()
        {
            var clienteRepository = new Mock <IRepository <Cliente> >();

            clienteRepository.Setup(c => c.ReadAll())
            .Returns(Task.FromResult((IEnumerable <Cliente>) new List <Cliente>
            {
                new Cliente("Levi Juan Henrique da Rosa", 18, "837.218.376-73", "33.171.161-8", new DateTime(2001, 02, 27), "Araxá", "MG", "Peixes", "Giovanna Bianca Cristiane", "Hugo Antonio Roberto da Rosa", "*****@*****.**", "jqAYDrlOk5", "38183-044", 715, "(34) 3670-2306", "(34) 99963-1139", "1,73", 78, "A-", "Vermelho"),
                new Cliente("Renan Caio Victor Caldeira", 51, "569.980.286-01", "32.273.285-2", new DateTime(1965, 08, 13), "Ituiutaba", "MG", "Leão", "Tereza Antônia", "Ruan Yuri Caldeira", "*****@*****.**", "XAbUybYUDp", "38304-120", 684, "(34) 2528-6956", "(34) 99812-7018", "1,98", 91, "O+", "Vermelho"),
                new Cliente("Sebastiana Maitê Ribeiro", 51, "206.334.456-65", "20.840.528-8", new DateTime(1968, 12, 26), "Passos", "MG", "Capricórnio", "Joana Rebeca Isabelle", "Cláudio Henry Ribeiro", "*****@*****.**", "WDljFP7aqa", "37902-340", 728, "(35) 2615-6221", "(35) 99290-5767", "1,65", 71, "B-", "Verde")
            }));

            var clienteAppService = new ClienteAppService(clienteRepository.Object, mapper);

            var pesoMedio = await clienteAppService.ObterPesoMedioPorEstado("MG");

            Assert.Equal(80, pesoMedio);
        }
        public async Task <ActionResult <long> > ObterPesoMedioPorEstado(string estado)
        {
            var pesoMedio = await ClienteAppService.ObterPesoMedioPorEstado(estado);

            return(pesoMedio);
        }