public void Debitar_valor_em_conta() { var debitoCommand = new DebitoCommand(_contaId, _valor); var contaRepositorioMock = new Mock <IContaRepositorio>(); contaRepositorioMock.Setup(c => c.ObterPorId(_contaId)).Returns(_contaFake); var contaServico = new MovimentacaoDominioServico(contaRepositorioMock.Object); contaServico.Debitar(debitoCommand); Assert.Equal(_saldoAntigo.Valor - _valor, _contaFake.Saldo.Valor); }
public void Nao_debitar_valor_em_conta_se_saldo_insuficiente() { _valor = 1200; var debitoCommand = new DebitoCommand(_contaId, _valor); var contaRepositorioMock = new Mock <IContaRepositorio>(); contaRepositorioMock.Setup(c => c.ObterPorId(_contaId)).Returns(_contaFake); contaRepositorioMock.Setup(c => c.Editar(_contaFake)); var contaServico = new MovimentacaoDominioServico(contaRepositorioMock.Object); contaServico.Debitar(debitoCommand); Assert.Equal(_saldoAntigo, _contaFake.Saldo); }
public void Transeferir_valor_entre_contas() { var contaDebitoId = 1; var contaCreditoId = 2; var valor = 99.99M; var contaDebito = Fake.CriarConta(); var saldoAnteriorContaDebito = contaDebito.Saldo; var contaCredito = Fake.CriarConta(); var saldoAnteriorContaCredito = contaCredito.Saldo; var transferenciaCommand = new TransferenciaCommand(contaDebitoId, contaCreditoId, valor); var contaRepositorioMock = new Mock <IContaRepositorio>(); contaRepositorioMock.Setup(c => c.ObterPorId(contaDebitoId)).Returns(contaDebito); contaRepositorioMock.Setup(c => c.ObterPorId(contaCreditoId)).Returns(contaCredito); var contaServico = new MovimentacaoDominioServico(contaRepositorioMock.Object); contaServico.Transferir(transferenciaCommand); Assert.Equal(saldoAnteriorContaDebito.Valor - valor, contaDebito.Saldo.Valor); Assert.Equal(saldoAnteriorContaCredito.Valor + valor, contaCredito.Saldo.Valor); }