Example #1
0
        public async Task E_Possivel_Realizar_Cotroller_BadRequest()
        {
            var serviceMock = new Mock <IPagamentoService>();
            var Valor       = Faker.RandomNumber.Next(0, 10000);
            var cartao      = new cartao
            {
                titular        = Faker.Name.FullName(),
                numero         = Faker.Name.FullName(),
                cvv            = Faker.Name.FullName(),
                bandeira       = Faker.Name.FullName(),
                data_expiracao = Faker.Name.FullName()
            };

            _controller = new PagamentoController(serviceMock.Object);
            _controller.ModelState.AddModelError("Name", "É um campo obrigatório");
            Mock <IUrlHelper> url = new Mock <IUrlHelper>();

            url.Setup(x => x.Link(It.IsAny <string>(), It.IsAny <object>())).Returns("http://localhost:5000");
            _controller.Url = url.Object;
            var PagamentoDtoCreate = new PagamentoDtoCreate
            {
                Valor  = Valor,
                Cartao = cartao,
            };

            var result = await _controller.Post(PagamentoDtoCreate);

            ObjectResult resultValue = Assert.IsType <ObjectResult>(result);

            Assert.Equal(400, resultValue.StatusCode);
            Assert.Equal(resultValue.Value, "Ocorreu um Erro Desconhecido");
        }
Example #2
0
        public async Task E_Possivel_Realizar_Cotroller_OutRange()
        {
            var serviceMock = new Mock <IPagamentoService>();
            var Valor       = Faker.RandomNumber.Next(-10, 0);
            var cartao      = new cartao
            {
                titular        = Faker.Name.FullName(),
                numero         = Faker.Name.FullName(),
                cvv            = Faker.Name.FullName(),
                bandeira       = Faker.Name.FullName(),
                data_expiracao = Faker.Name.FullName(),
            };

            _controller = new PagamentoController(serviceMock.Object);
            Mock <IUrlHelper> url = new Mock <IUrlHelper>();

            url.Setup(x => x.Link(It.IsAny <string>(), It.IsAny <object>())).Returns("http://localhost:5000");
            _controller.Url = url.Object;
            var PagamentoDtoCreate = new PagamentoDtoCreate
            {
                Valor  = Valor,
                Cartao = cartao,
            };

            var result = await _controller.Post(PagamentoDtoCreate);

            ObjectResult resultValue = Assert.IsType <ObjectResult>(result);

            Assert.Equal(412, resultValue.StatusCode);
            Assert.Equal(resultValue.Value, "Os valores informados não são válidos");
        }
Example #3
0
        public async Task E_Possivel_Realizar_Cotroller_Created()
        {
            var serviceMock = new Mock <IPagamentoService>();
            var Valor       = Faker.RandomNumber.Next(0, 10000);
            var cartao      = new cartao
            {
                titular        = Faker.Name.FullName(),
                numero         = Faker.Name.FullName(),
                cvv            = Faker.Name.FullName(),
                bandeira       = Faker.Name.FullName(),
                data_expiracao = Faker.Name.FullName(),
            };


            _controller = new PagamentoController(serviceMock.Object);
            Mock <IUrlHelper> url = new Mock <IUrlHelper>();

            url.Setup(x => x.Link(It.IsAny <string>(), It.IsAny <object>())).Returns("http://localhost:5000");
            _controller.Url = url.Object;
            var PagamentoDtoCreate = new PagamentoDtoCreate
            {
                Valor  = Valor,
                Cartao = cartao,
            };


            var result = await _controller.Post(PagamentoDtoCreate);

            Assert.True(result is OkObjectResult);

            var resultValue = ((OkObjectResult)result).Value as PagamentoDtoCreateResult;

            Assert.NotNull(resultValue);
            Assert.Equal(PagamentoDtoCreate.Valor, resultValue.Valor);
            Assert.Equal("Aprovado", resultValue.Estado);
        }
Example #4
0
        static void Main(string[] args)
        {
            /*Os bancos oferecem aos clientes a possibilidade de obter um cartão de crédito que pode ser utilizados para fazer compras.
             * Um cartão de crédito possui um número e uma data de validade.
             * Crie uma classe para modelar os objetos que representarão os cartões de crédito.
             * Crie dois objetos da classe Cartão De Credito.
             * Altere e imprima os atributos desses objetos.*/

            cartao cartao1 = new cartao();
            cartao cartao2 = new cartao();

            Console.WriteLine("Insira o número do primeiro cartão!");
            cartao1.num = int.Parse(Console.ReadLine());
            Console.WriteLine("Insira a validade (MM/AAAA) do primeiro cartão!");
            cartao1.valid = Console.ReadLine();

            Console.WriteLine("Insira o número do segundo cartão!");
            cartao2.num = int.Parse(Console.ReadLine());
            Console.WriteLine("Insira a validade (MM/AAAA) do segundo cartão!");
            cartao2.valid = Console.ReadLine();

            Console.WriteLine($"O primeiro cartão é o de nº {cartao1.num} e tem data de vencimento prevista para {cartao1.valid}");
            Console.WriteLine($"O segundo cartão é o de nº {cartao2.num} e data de vencimento prevista para {cartao2.valid}");
        }
Example #5
0
        public ActionResult RealizarPagamento()
        {
            //Metodos pra preencher Todos os campos para FINALIZAR a venda.

            //Pedir campos para preenchimento do cartão caso necessario.
            //OBS: Caso necessario já ter Cartão registrado ou cadastrar.

            //Capturando a Sessão.
            string sessionId = Session["id"].ToString();

            //Instanciando a Venda.
            venda venda   = new venda();
            var   escolha = Request.Form["radioFormaPagamento"];

            //Instanciando o ItemCarrinho
            List <ItemCarrinho> carrinho = new List <ItemCarrinho>();

            //Capturando a Sessão do Carrinho
            carrinho = (List <ItemCarrinho>)Session["Carrinho"];

            //Realizando Validação da conta.
            if ((sessionId != null))
            {
                venda.Conta = db.Conta.Find(Convert.ToInt32(sessionId));
            }
            else
            {
                return(RedirectToAction("Logar", "contas"));
            }

            //Preenchendo a Data da Venda  = "Agora".
            venda.dataVenda = DateTime.Now;


            //Percorrendo todos os itens do carrinho.
            foreach (ItemCarrinho itemCarrinho in carrinho)
            {
                venda.vlrTotal += (itemCarrinho.produto.preco * itemCarrinho.quantidade);
                //Gravando os dados no ItemCarrinho na base.
                db.ItemVenda.Add(itemCarrinho);
            }

            boleto boleto = new boleto();
            cartao cartao = new cartao();

            //Verificando quais os metodos para criar Boleto ou Capturar o Cartão.

            if (escolha == "Boleto")
            {
                //boleto = GerarBoleto();
            }
            if (escolha == "Cartao")//VERIFICAR PORQUE NAO RECUPERA O FORM.
            {
                cartao.numero          = Request.Form["NumeroCartao"];
                cartao.datevalidade    = Request.Form["Mes"] + Request.Form["Ano"];
                cartao.codigoseguranca = Request.Form["CodigoSeg"];
            }

            //Preenchendo a forma de pagamento.

            //Gravando os dados da Venda.
            db.venda.Add(venda);

            //Salvando Alterações.
            db.SaveChanges();


            //ESPAÇO PARA REALIZAR OS METODOS DE CRIAÇÂO DE BOLETO
            //EXEMPLO:
            //GerarBoleto(db.venda);
            //Abre o PDF.

            //Retorna compra de Sucesso ou mensagem de Erro.
            return(View());
        }