public void Service_Conta_EfetuarTransferencia_DevePassar() { //Arrange _conta = ContaObjectMother.GetContaValida(); Conta contaDestino = ContaObjectMother.GetContaComMovimentacao(); contaDestino.Id = 2; int idContaOrigem = 1; int idContaDestino = 2; _repositoryFake.Setup(x => x.GetById(idContaOrigem)).Returns(_conta); _repositoryFake.Setup(x => x.GetById(idContaDestino)).Returns(contaDestino); _repositoryFake.Setup(x => x.Update(_conta)).Returns(true); _repositoryFake.Setup(x => x.Update(contaDestino)).Returns(true); //Action _service.EfetuarTrasferencia(_conta.Id, contaDestino.Id, 1000); //Verify _repositoryFake.Verify(x => x.GetById(_conta.Id)); _repositoryFake.Verify(x => x.Update(_conta)); _repositoryFake.Verify(x => x.Update(contaDestino)); _conta.SaldoTotal.Should().Be(ContaObjectMother.GetContaValida().SaldoTotal - 1000); contaDestino.SaldoTotal.Should().Be(ContaObjectMother.GetContaComMovimentacao().SaldoTotal + 1000); }
public IHttpActionResult EfetuarTransferencia(int idOrigem, int idDestino, [FromBody] double valor) { TraceLogManager.Info("Efetuando Transferência da Conta!"); return(HandleCallback(() => _contaService.EfetuarTrasferencia(idOrigem, idDestino, valor))); }