public void Conta_Aplicacao_Transferir_Sucesso() { Mock <Conta> contaMovimentadaMock = new Mock <Conta>(); long idParaBuscarConta = 1; long idParaBuscarContaMovimentada = 2; double valor = 10; _contaRepositorioMoq.Setup(crm => crm.Buscar(idParaBuscarConta)).Returns(_contaMoq.Object); _contaRepositorioMoq.Setup(crm => crm.Buscar(idParaBuscarContaMovimentada)).Returns(contaMovimentadaMock.Object); _contaRepositorioMoq.Setup(crm => crm.Editar(_contaMoq.Object)); _contaRepositorioMoq.Setup(crm => crm.Editar(contaMovimentadaMock.Object)); _contaMoq.Setup(c => c.Transferir(contaMovimentadaMock.Object, valor)); var contaResposta = _contaServico.Transferir(idParaBuscarConta, idParaBuscarContaMovimentada, valor); contaResposta.Should().NotBeNull(); contaResposta.Should().Be(_contaMoq.Object); _contaRepositorioMoq.Verify(crm => crm.Buscar(idParaBuscarConta)); _contaRepositorioMoq.Verify(crm => crm.Buscar(idParaBuscarContaMovimentada)); _contaRepositorioMoq.Verify(crm => crm.Editar(_contaMoq.Object)); _contaRepositorioMoq.Verify(crm => crm.Editar(contaMovimentadaMock.Object)); }