Пример #1
0
        public void VerificaValorBanhoFimDeSemanaTest()
        {
            var meuCaninoFeliz = new MeuCaninoFeliz();
            var vaiRex         = new VaiRex();
            var chowChawgas    = new ChowChawgas();

            var dataFimDeSemana   = new DateTime(2020, 07, 18);
            var quantCaesPequenos = 2;
            var quantCaesGrandes  = 1;

            // Action
            // Calcula o valor total dos banhos em cada petshop
            meuCaninoFeliz.CalcularValorBanho(dataFimDeSemana, quantCaesPequenos, quantCaesGrandes);
            vaiRex.CalcularValorBanho(dataFimDeSemana, quantCaesPequenos, quantCaesGrandes);
            chowChawgas.CalcularValorBanho(dataFimDeSemana, quantCaesPequenos, quantCaesGrandes);

            // Verifica qual é o melhor petshop
            var melhorPetshop = Petshop.ComparaValores(meuCaninoFeliz, vaiRex, chowChawgas);

            // Assert
            Assert.AreEqual(96, meuCaninoFeliz.valorTotal);
            Assert.AreEqual(95, vaiRex.valorTotal);
            Assert.AreEqual(105, chowChawgas.valorTotal);

            Assert.AreEqual(melhorPetshop, vaiRex);
        }
Пример #2
0
        public ActionResult Get(string dataDoBanho, int caesPequenos, int caesGrandes)
        {
            if (string.IsNullOrEmpty(dataDoBanho))
            {
                return(new JsonResult(new {
                    Response = "Favor informar o dia do banho e a quantidade de caes pequenos e grandes "
                }));
            }

            var data = Convert.ToDateTime(dataDoBanho);

            var vaiRex         = new VaiRex();
            var meuCaninoFeliz = new MeuCaninoFeliz();
            var chowChawgas    = new ChowChawgas();

            // Calcula o valor total do banho
            vaiRex.CalcularValorBanho(data, caesPequenos, caesGrandes);
            meuCaninoFeliz.CalcularValorBanho(data, caesPequenos, caesGrandes);
            chowChawgas.CalcularValorBanho(data, caesPequenos, caesGrandes);

            Petshop melhorPetshop = Petshop.ComparaValores(vaiRex, meuCaninoFeliz, chowChawgas);

            return(new JsonResult(new
            {
                nome = melhorPetshop.nome,
                valorTotal = melhorPetshop.valorTotal,
                distanciaEmKm = melhorPetshop.distanciaEmQuilometros
            }));
        }