Example #1
0
        public void DeveSerCapazDeRetornarTiposDePagamentoPorId()
        {
            var tiposPagamento = new Dictionary <string, FormaPagamento>()
            {
                { "1", FormaPagamento.CartaoCreditoVisa },
                { "2", FormaPagamento.CartaoCreditoMaster },
                { "3", FormaPagamento.Boleto }
            };

            foreach (var formaPagamento in tiposPagamento)
            {
                FormaPagamento.ObterPorId(formaPagamento.Key).Should().BeSameAs(formaPagamento.Value);
            }
        }
        public ActionResult FinalizarCompra(CarroDeCompras carroDeCompras, string idFormaPagamento)
        {
            if (carroDeCompras.CompraPodeSerFinalizada())
            {
                var pedido = carroDeCompras.FinalizarCompra(FormaPagamento.ObterPorId(idFormaPagamento));
                _pedidoService.IncluirPedido(pedido);
                TempData["Mensagem"] = "Pedido realizado com sucesso.";
            }
            else
            {
                TempData["Mensagem"] = "Estoque insuficiente para sua compra.";
            }

            return(RedirectToAction("Index"));
        }
Example #3
0
 public void DeveLancarExcecaoSeTentarObterUmaFormaDePagamentoInexistente()
 {
     FormaPagamento.ObterPorId("forma de pagamento inexistente");
 }