示例#1
0
 public ParcelaFaturaReemitidaBuilder Padrao()
 {
     ComIdentificador(IdentificadoresPadrao.Identificador);
     ComIdentificadorNegocio(IdentificadoresPadrao.IdentificadorNegocio);
     ComDataExecucaoEvento(IdentificadoresPadrao.DataExecucaoEvento);
     Com(ParcelaBuilder.UmBuilder().Padrao());
     return(this);
 }
示例#2
0
 public void FixtureSetUp()
 {
     _parcela = ParcelaBuilder.UmBuilder()
                .Com(ParcelaIdBuilder.UmBuilder().ComNumeroParcela(-1)
                     .ComIdentificadorExternoCobertura(IdentificadoresPadrao.ItemCertificadoApoliceId.ToString()))
                .Com(VigenciaBuilder.UmBuilder())
                .Com(ValorBuilder.UmBuilder())
                .Build();
 }
示例#3
0
        public void DadoUmPremioComItemCertificadoApoliceInvalidoDeveSerGeradoUmErro()
        {
            _emissaoPremio = ParcelaEmitidaBuilder.UmBuilder()
                             .ComIdentificador(IdentificadoresPadrao.Identificador)
                             .ComDataExecucaoEvento(IdentificadoresPadrao.DataExecucaoEvento)
                             .Com(ParcelaBuilder.UmBuilder()
                                  .Com(ParcelaIdBuilder.UmBuilder().ComIdentificadorExternoCobertura(string.Empty))
                                  .Com(ValorBuilder.UmBuilder().Padrao())
                                  ).Build();

            Assert.That(() => GetInstance <EventoPremioFactory>().Fabricar(_emissaoPremio), GeraErro("O ItemCerficadoApolice não foi informado"));
        }
 private IParcelaEmitida ObterContratoEmissaoPremio()
 {
     return(ParcelaEmitidaBuilder.UmBuilder()
            .ComIdentificador(Guid.NewGuid())
            .ComIdentificadorNegocio(_proposta.IdentificadorNegocio)
            .ComDataExecucaoEvento(_proposta.DataExecucaoEvento)
            .Com(ParcelaBuilder.UmBuilder()
                 .Com(ParcelaIdBuilder.UmBuilder()
                      .ComIdentificadorExternoCobertura(cobertura.IdentificadorExterno)
                      .ComNumeroParcela(IdentificadoresPadrao.NumeroParcela))
                 .Com(ValorBuilder.UmBuilder().Padrao())
                 .Com(VigenciaBuilder.UmBuilder().Padrao()))
            .Build());
 }
示例#5
0
        public void DadoUmPremioComNumeroParcelaInvalidoDeveSerGeradoUmErro()
        {
            _emissaoPremio = ParcelaEmitidaBuilder.UmBuilder()
                             .ComIdentificador(IdentificadoresPadrao.Identificador)
                             .ComDataExecucaoEvento(IdentificadoresPadrao.DataExecucaoEvento)
                             .Com(ParcelaBuilder.UmBuilder()
                                  .Com(VigenciaBuilder.UmBuilder().Padrao())
                                  .Com(ValorBuilder.UmBuilder().Padrao())
                                  .Com(ParcelaIdBuilder.UmBuilder()
                                       .ComNumeroParcela(int.MinValue)))
                             .Build();

            Assert.That(() => GetInstance <EventoPremioFactory>().Fabricar(_emissaoPremio), GeraErro("O número da Parcela não foi informado."));
        }
        private IParcelaAjustada ObterContratoAjustepremio()
        {
            var cobertura = _proposta.Produtos.First().Coberturas.First();

            return(ParcelaAjustadaBuilder.UmBuilder()
                   .ComIdentificador(Guid.NewGuid())
                   .ComDataExecucao(_proposta.DataExecucaoEvento)
                   .Com(ParcelaBuilder.UmBuilder()
                        .Com(ParcelaIdBuilder.UmBuilder()
                             .ComIdentificadorExternoCobertura(cobertura.IdentificadorExterno)
                             .ComNumeroParcela(IdentificadoresPadrao.NumeroParcela))
                        .Com(ValorBuilder.UmBuilder().Padrao())
                        .Com(VigenciaBuilder.UmBuilder().Padrao()))
                   .Build());
        }
示例#7
0
        public IParcelaFaturaReemitida ObterContratoEmissaoPremio()
        {
            var parcela = ParcelaFaturaReemitidaBuilder.UmBuilder()
                          .ComIdentificador(Guid.NewGuid())
                          .ComIdentificadorNegocio(IdentificadoresPadrao.IdentificadorNegocio)
                          .ComDataExecucaoEvento(IdentificadoresPadrao.Competencia)
                          .Com(ParcelaBuilder.UmBuilder()
                               .Com(ParcelaIdBuilder.UmBuilder()
                                    .ComIdentificadorExternoCobertura(IdentificadoresPadrao.ItemCertificadoApoliceId.ToString())
                                    .ComNumeroParcela(IdentificadoresPadrao.NumeroParcela))
                               .Com(ValorBuilder.UmBuilder().Padrao())
                               .Com(VigenciaBuilder.UmBuilder().Padrao()))
                          .Build();

            return(parcela);
        }
示例#8
0
        public void DadoUmPremioComDataCompetenciaMenorQueADataDeInicioDaVigenciaDeveSerGeradoUmErro()
        {
            _emissaoPremio = ParcelaEmitidaBuilder.UmBuilder()
                             .ComIdentificador(IdentificadoresPadrao.Identificador)
                             .ComDataExecucaoEvento(IdentificadoresPadrao.DataExecucaoEvento)
                             .Com(ParcelaBuilder.UmBuilder()
                                  .Com(ParcelaIdBuilder.UmBuilder())
                                  .Com(ValorBuilder.UmBuilder().Padrao())
                                  .Com(VigenciaBuilder.UmBuilder()
                                       .ComCompetencia(new DateTime(2017, 03, 01))
                                       .ComDataInicio(new DateTime(2017, 06, 01))
                                       .ComDataFim(new DateTime(2017, 12, 01))))
                             .Build();

            Assert.That(() => GetInstance <EventoPremioFactory>().Fabricar(_emissaoPremio), GeraErro("A data de competência inválida, a data não pode estar fora do período de Vigência."));
        }
示例#9
0
        public void DadoUmaEmissaoPremioDeveAdicionarListaProvisoes()
        {
            _emissaoPremio = ParcelaEmitidaBuilder.UmBuilder()
                             .ComIdentificador(IdentificadoresPadrao.Identificador)
                             .ComIdentificadorNegocio(IdentificadoresPadrao.IdentificadorNegocio)
                             .ComDataExecucaoEvento(IdentificadoresPadrao.DataExecucaoEvento)
                             .Com(ParcelaBuilder.UmBuilder().Padrao())
                             .Build();

            MovimentoProvisaoBuilder[] provisoes = { MovimentoProvisaoBuilder.UmBuilder().Padrao(), MovimentoProvisaoBuilder.UmBuilder().Padrao() };

            _evento = EventoParcelaEmitidaBuilder.UmEvento()
                      .Com(PremioBuilder.Um().Padrao()
                           .Com(provisoes)).Build();

            _emissaoPremio.Parcelas.ForEach(p => p.MovimentoToProvisao(_evento));

            var parcela = _emissaoPremio.Parcelas.First();

            Assert.That(provisoes.Count(), Is.EqualTo(_evento.Premios.First().MovimentosProvisao.Count()));
            Assert.That(provisoes.Count(), Is.EqualTo(parcela.Provisoes.Count()));
        }
 private void ObterCancelamento()
 {
     _parcelaCancelada = ParcelaCanceladaBuilder.UmBuilder().Padrao().Com(ParcelaBuilder.UmBuilder())
                         .ComDataExecucaoEvento(IdentificadoresPadrao.Competencia).Build();
 }
示例#11
0
        public void ValidarValores()
        {
            var parcela = ParcelaBuilder.UmBuilder().Com(ParcelaIdBuilder.UmBuilder()).Build();

            Assert.That(() => parcela.Validar(), GeraErro($"A ParcelaId: { parcela.ParcelaId.ParcelaId}, com valores inválidos."));
        }
示例#12
0
        public void ValidarVigencia()
        {
            var parcela = ParcelaBuilder.UmBuilder().Com(ParcelaIdBuilder.UmBuilder()).Com(ValorBuilder.UmBuilder()).Build();

            Assert.That(() => parcela.Validar(), GeraErro($"A ParcelaId: { parcela.ParcelaId.ParcelaId}, com vigência inválida."));
        }
示例#13
0
        public void ValidarParcelaId()
        {
            var parcela = ParcelaBuilder.UmBuilder().Build();

            Assert.That(() => parcela.Validar(), GeraErro("A ParcelaId não foi informada."));
        }
示例#14
0
        public void ValidarIdentificadorExterno()
        {
            var parcela = ParcelaBuilder.UmBuilder().Com(ParcelaIdBuilder.UmBuilder()).Com(VigenciaBuilder.UmBuilder()).Com(ValorBuilder.UmBuilder()).Build();

            Assert.That(() => parcela.Validar(), GeraErro($"A ParcelaId: { parcela.ParcelaId.ParcelaId}, com vigência com Identificador Externo inválido."));
        }