Exemple #1
0
 public void Remover(StatusTransacao status)
 {
     using (var context = new TechVirtusProvaContext())
     {
         context.StatusTransacoes.Remove(status);
         context.SaveChanges();
     }
 }
Exemple #2
0
 public void Adicionar(StatusTransacao status)
 {
     using (var context = new TechVirtusProvaContext())
     {
         context.StatusTransacoes.Add(status);
         context.SaveChanges();
     }
 }
Exemple #3
0
 public void Atuaizar(StatusTransacao status)
 {
     using (var context = new TechVirtusProvaContext())
     {
         context.Entry(status).State = Microsoft.Data.Entity.EntityState.Modified;
         context.SaveChanges();
     }
 }
Exemple #4
0
        public void Erro()
        {
            if (Status == StatusTransacao.Processado || Status == StatusTransacao.Erro)
            {
                throw new ProcessoFormaPagamentoJaFinalizadoException();
            }

            Status = StatusTransacao.Erro;
        }
        public string excluirStatusTransacao(StatusTransacao s)
        {
            string erro = null;
            try
            {
                db.StatusTransacao.DeleteObject(s);
                db.SaveChanges();

            }

            catch (Exception ex)
            {
                erro = ex.Message;
            }

            return erro;
        }
        public string excluirStatusTransacao(StatusTransacao s)
        {
            string erro = null;
            try
            {
                db.StatusTransacao.DeleteObject(s);
                db.SaveChanges();

            }

            catch (Exception ex)
            {
                erro = ex.Message;
            }

            return erro;
        }
        public string editarStatusTransacao(StatusTransacao s)
        {
            string erro = null;
            try
            {

                if (s.EntityState == System.Data.EntityState.Detached)
                    db.StatusTransacao.Attach(s);
                db.ObjectStateManager.ChangeObjectState(s, System.Data.EntityState.Modified);
                db.SaveChanges();

            }

            catch (Exception ex)
            {
                erro = ex.Message;
            }

            return erro;
        }
        public string editarStatusTransacao(StatusTransacao s)
        {
            string erro = null;
            try
            {

                if (s.EntityState == System.Data.EntityState.Detached)
                    db.StatusTransacao.Attach(s);
                db.ObjectStateManager.ChangeObjectState(s, System.Data.EntityState.Modified);
                db.SaveChanges();

            }

            catch (Exception ex)
            {
                erro = ex.Message;
            }

            return erro;
        }
Exemple #9
0
        public void StatusProcessamentoDeveSerIgualDeAcordoComSolicitado([Values(StatusTransacao.Processando,
                                                                                 StatusTransacao.Processado, StatusTransacao.Erro)] StatusTransacao statusTransacao)
        {
            var cobranca = _cobrancaBoleto;

            if (statusTransacao == StatusTransacao.Processando)
            {
                cobranca = CobrancaBuilder.BuildCobrancaCartao();
            }
            else if (statusTransacao == StatusTransacao.Processado)
            {
                _cobrancaBoleto.FinalizaProcessamentoFormaPagamento();
            }
            else if (statusTransacao == StatusTransacao.Erro)
            {
                _cobrancaBoleto.ErroCriarTransacao();
            }

            Assert.AreEqual(cobranca.Transacao.Status, statusTransacao);
        }
Exemple #10
0
        public void AoMudarStatusFormaPagamentoDeveAdicionarEventoNaCobranca([Values(StatusTransacao.Processado, StatusTransacao.Erro)] StatusTransacao statusTransacao)
        {
            if (statusTransacao == StatusTransacao.Processado)
            {
                _cobrancaBoleto.FinalizaProcessamentoFormaPagamento();

                Assert.AreEqual(_cobrancaBoleto.Events
                                .Where(e => e is FormaPagamentoProcessadaEvent)
                                .Cast <FormaPagamentoProcessadaEvent>()
                                .SingleOrDefault()?.Cobranca, _cobrancaBoleto);
            }
            else if (statusTransacao == StatusTransacao.Erro)
            {
                _cobrancaBoleto.ErroCriarTransacao();

                Assert.AreEqual(_cobrancaBoleto.Events
                                .Where(e => e is FalhaAoProcessarFormaPagamentoEvent)
                                .Cast <FalhaAoProcessarFormaPagamentoEvent>()
                                .SingleOrDefault()?.Cobranca, _cobrancaBoleto);
            }
        }
Exemple #11
0
 private Transacao(FormaPagamento formaPagamento)
 {
     FormaPagamento = formaPagamento;
     Status         = StatusTransacao.Processando;
 }
Exemple #12
0
 public void AoTentarMudarStatusFormaPagamentoQuandoStatusNaoForPermitidoDeveLancarExcecao([Values(StatusTransacao.Processando,
                                                                                                   StatusTransacao.Processado, StatusTransacao.Erro)] StatusTransacao statusTransacao)
 {
     if (statusTransacao == StatusTransacao.Processado)
     {
         _cobrancaBoleto.FinalizaProcessamentoFormaPagamento();
         Assert.Throws <ProcessoFormaPagamentoJaFinalizadoException>(() => _cobrancaBoleto.FinalizaProcessamentoFormaPagamento());
         Assert.Throws <ProcessoFormaPagamentoJaFinalizadoException>(() => _cobrancaBoleto.ErroCriarTransacao());
     }
     else if (statusTransacao == StatusTransacao.Erro)
     {
         _cobrancaBoleto.ErroCriarTransacao();
         Assert.Throws <ProcessoFormaPagamentoJaFinalizadoException>(() => _cobrancaBoleto.FinalizaProcessamentoFormaPagamento());
         Assert.Throws <ProcessoFormaPagamentoJaFinalizadoException>(() => _cobrancaBoleto.ErroCriarTransacao());
     }
 }