Beispiel #1
0
        public static ContaDTO Depositar(int indiceConta, double valorDeposito)
        {
            ContaService.Depositar(indiceConta, valorDeposito);
            Conta conta = ContaService.ObterConta(indiceConta);

            return(Mapping.ContaToContaDTO(conta));
        }
        private static void Depositar(double valor)
        {
            Console.WriteLine("Digite o nome do beneficiário para deposito");
            string nome = Console.ReadLine();

            var    conta    = contaService.Buscar(nome);
            string mensagem = contaService.Depositar(valor, conta);

            Console.WriteLine(mensagem);
        }
Beispiel #3
0
        public Mutation(IContexto contexto)
        {
            Field <ContaCorrenteType>(
                "sacar",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <IntGraphType> > {
                Name = "conta"
            },
                    new QueryArgument <NonNullGraphType <FloatGraphType> > {
                Name = "valor"
            }
                    ),
                resolve: context =>
            {
                var conta = context.GetArgument <int>("conta");
                var valor = context.GetArgument <double>("valor");

                var sConta        = new ContaService(contexto);
                var contaCorrente = sConta.Conta(conta);

                if (contaCorrente == null)
                {
                    context.Errors.Add(new ExecutionError("Conta Inexistente"));
                    return(null);
                }
                else if (contaCorrente.Saldo < valor)
                {
                    context.Errors.Add(new ExecutionError("Saldo Insuficiente"));
                    return(null);
                }

                return(sConta.Sacar(conta, valor));
            }
                );

            Field <ContaCorrenteType>(
                "depositar",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <IntGraphType> > {
                Name = "conta"
            },
                    new QueryArgument <NonNullGraphType <FloatGraphType> > {
                Name = "valor"
            }
                    ),
                resolve: context =>
            {
                var conta = context.GetArgument <int>("conta");
                var valor = context.GetArgument <double>("valor");

                var sConta = new ContaService(contexto);
                return(sConta.Depositar(conta, valor));
            }
                );
        }
        public void DeveRetornarSaldoCorreto()
        {
            sConta.Depositar(3, 100d);
            var param = new GraphQLQuery
            {
                Query = @"query { saldo(conta: 3) }"
            };
            var result = this._controller.Post(param).Result;

            if (result != null)
            {
                var dados = ((ExecutionResult)((OkObjectResult)result).Value).Data as Dictionary <string, object>;
                if (dados.Count > 0)
                {
                    var saldo = Convert.ToDouble(dados["saldo"]);
                    Assert.AreEqual(100d, saldo);
                }
            }
            else
            {
                Assert.Fail("Falha ao retornar dados");
            }
        }
Beispiel #5
0
        public async Task <IActionResult> Depositar(HelperContaDto contaDeposito)
        {
            try
            {
                var conta = await _service.Depositar(contaDeposito);

                return(Ok(conta));
            }
            catch (NotFoundException e)
            {
                return(this.StatusCode(StatusCodes.Status404NotFound, $"{e.Message}"));
            }
            catch (ArgumentException e)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, $"{e.Message}"));
            }
        }
        public void Depositar_Deve_Retornar_Valor_Atualizado()
        {
            //Arrange
            var numeroConta      = 123;
            var contaContextFake = new ContaRepositoryFake();
            var contaService     = new ContaService(contaContextFake);

            contaContextFake._contasSalvas.Add(new ContaCliente()
            {
                Conta = numeroConta, Saldo = 0
            });

            //Act
            var resultado = contaService.Depositar(numeroConta, 200.50);

            //Assert
            Assert.AreEqual(200.50, resultado.Conta.Saldo);
        }
        public void NaoDeve_Depositar_ValorNegativo()
        {
            //Arrange
            var numeroConta      = 123;
            var contaContextFake = new ContaRepositoryFake();
            var contaService     = new ContaService(contaContextFake);

            contaContextFake._contasSalvas.Add(new ContaCliente()
            {
                Conta = numeroConta, Saldo = 500
            });

            //Act
            var resultado = contaService.Depositar(numeroConta, -2);

            //Assert
            Assert.AreEqual(enResultado.Falha, resultado.Resultado);
            Assert.AreEqual("Não é possível depositar valores negativos ou iguais a zero.", resultado.Mensagem);
        }
Beispiel #8
0
        public void DepositoComContaValidaDeveRetornarSaldo()
        {
            var conta = sConta.Depositar(1, 100d);

            Assert.IsNotNull(conta);
        }