Esempio n. 1
0
        public void TestDeveriaCalcularATarifaCorretamente(decimal value, decimal expected)
        {
            var contaMock = new Mock <IContaCorrente>();

            contaMock.Setup(x => x.Saldo).Returns(0);

            var deposito = new Deposito(contaMock.Object, DateTime.Now, 0, value, value);

            var tarifa = deposito.CalcularTarifa();

            Assert.Equal(expected, tarifa.Valor);
        }
Esempio n. 2
0
        public async Task <IDeposito> DepositarAsync(int contaId, decimal valor)
        {
            var contaCorrente = await DoFindContaAsync(contaId);

            var saldoAnterior = contaCorrente.Saldo;

            contaCorrente.Creditar(valor);

            var transacao = new Deposito(contaCorrente, DateTime.Now, saldoAnterior, valor, contaCorrente.Saldo);

            transacao.CalcularTarifa();

            await this.transacaoRepository.SaveAsync(transacao);

            return(transacao);
        }