public void FixtureSetUp() { _portabilidade = PortabilidadeApropriadaBuilder.UmBuilder().Padrao().Build(); var premioAnterior = PremioBuilder.Um().Padrao().ComTipoMovimento((short)TipoMovimentoEnum.Inexistente).Build(); var retornoCobertura = CoberturaContratadaBuilder.Uma().Padrao().ComRegimeFinanceiro((short)TipoRegimeFinanceiroEnum.FundoAcumulacao); var movimento = MovimentoProvisaoBuilder.UmBuilder().Padrao(); _retornoMovimento = new List <MovimentoProvisao>() { movimento.Build() }; var retornoPremio = PremioBuilder.Um().Padrao() .Com(movimento) .Com(retornoCobertura) .Build(); MockingKernel.GetMock <IPremioService>() .Setup(x => x.CriarPremio(It.IsAny <Premio>(), It.IsAny <EventoPremio>())).Returns(Task.FromResult(retornoPremio)); MockingKernel.GetMock <ICoberturas>() .Setup(x => x.ObterPorItemCertificado(It.IsAny <long>())).Returns(Task.FromResult(retornoCobertura.Build())); MockingKernel.GetMock <ICalculadorProvisaoPremio>() .Setup(x => x.CriarProvisao(It.IsAny <Premio>())).Returns(_retornoMovimento.AsEnumerable()); MockingKernel.GetMock <IPremios>() .Setup(x => x.ObterPremioAnterior(It.IsAny <long>(), It.IsAny <int>())).Returns(Task.FromResult(premioAnterior)); _evento = MockingKernel.Get <EventoPremioFactory>().Fabricar(_portabilidade).Result; }
public void FixtureSetUp() { _parcelaAjustada = ParcelaAjustadaBuilder.UmBuilder().Padrao().Build(); var premioAnterior = PremioBuilder.Um().Padrao().ComTipoMovimento((short)TipoMovimentoEnum.Emissao).Build(); var retornoCobertura = CoberturaContratadaBuilder.Uma().Padrao(); var movimento = MovimentoProvisaoBuilder.UmBuilder().Padrao(); _retornoMovimento = new List <MovimentoProvisao>() { movimento.Build() }; var retornoPremio = PremioBuilder.Um().Padrao() .Com(movimento) .Com(retornoCobertura) .Build(); MockingKernel.GetMock <IPremioService>() .Setup(x => x.CriarPremio(It.IsAny <Premio>(), It.IsAny <EventoPremio>())).Returns(Task.FromResult(retornoPremio)); MockingKernel.GetMock <ICoberturas>() .Setup(x => x.ObterPorItemCertificado(It.IsAny <long>())).Returns(Task.FromResult(retornoCobertura.Build())); MockingKernel.GetMock <ICalculadorProvisaoPremio>() .Setup(x => x.CriarProvisao(It.IsAny <Premio>())).Returns(_retornoMovimento.AsEnumerable()); MockingKernel.GetMock <IPremios>() .Setup(x => x.ObterPremioAnterior(It.IsAny <long>(), It.IsAny <int>())).Returns(Task.FromResult(premioAnterior)); _evento = MockingKernel.Get <FabricarEventoPremio>().Com(_parcelaAjustada).Result; }
private void CriaEventoEmissaoPremio(TipoRegimeFinanceiroEnum regimeFinanceiro, params TipoProvisaoEnum[] tiposProvisao) { _evento = EventoEmissaoPremioBuilder.UmEvento() .Padrao() .Com(PremioBuilder.Um() .Com(CoberturaContratadaBuilder.Uma() .ComRegimeFinanceiro((short)regimeFinanceiro) .ComTiposProvisao(tiposProvisao))) .Build(); }
public void PremioAnteriorInvalido() { var premioAtual = PremioBuilder.Um().Padrao().ComTipoMovimento((short)TipoMovimentoEnum.Desapropriacao).Build(); premioAtual.InformaEvento(EventoDesParcelaApropriadaBuilder.UmBuilder().Padrao().Build()); var premioAnterior = PremioBuilder.Um().Padrao().ComTipoMovimento((short)TipoMovimentoEnum.Emissao).Build(); Assert.That(() => premioAtual.ValidaPremioAnterior(premioAnterior), GeraErro($"Impossivel validar movimento de {TipoMovimentoEnum.Desapropriacao} precedido de {TipoMovimentoEnum.Emissao}")); }
public void DadoUmPremioDeveSeCalcularPPNGRetornandoUmaListaDeProvisao() { _premio = PremioBuilder.Um().Padrao().Build(); _premio.InformaEvento(EventoEmissaoPremioBuilder.UmEvento().Padrao().Build()); var listaProvisao = _calculadorPPNG.CalcularProvisao(_premio); var qtdCompetencias = CalcularMeses(_premio.FimVigencia, _premio.EventoOperacional.DataExecucaoEvento) + 1; Assert.That(listaProvisao.ToList().Count, Is.EqualTo(qtdCompetencias)); }
public void AoCalcularUmaProvisaoDeUmProdutoPGBLDeveRetornarUmaListaVazia() { _premio = PremioBuilder.Um().Padrao() .Com(CoberturaContratadaBuilder.Uma().ComTipoItemProdutoId((int)TipoItemProdutoEnum.PGBL) .Com(HistoricoCoberturaContratadaBuilder.UmHistorico())) .Build(); _premio.InformaEvento(EventoEmissaoPremioBuilder.UmEvento().Padrao().Build()); _listaProvisao = _calculadorPmbac.CalculaProvisao(_premio, default(decimal)); Assert.That(_listaProvisao.Count, Is.EqualTo(0)); }
public void AoCalcularUmaProvisaoDeUmProdutoVidaIndividualDeveRetornarUmaListaDeProvisoes() { _premio = PremioBuilder.Um().Padrao() .Com(CoberturaContratadaBuilder.Uma().ComTipoItemProdutoId((int)TipoItemProdutoEnum.VidaIndividual) .Com(HistoricoCoberturaContratadaBuilder.UmHistorico())) .Build(); _premio.InformaEvento(EventoEmissaoPremioBuilder.UmEvento().Padrao().Build()); var result = _calculadorPmbac.CalculaProvisao(_premio, default(decimal)).First(); Assert.That(result.Valor, Is.Not.EqualTo(default(decimal))); }
private EventoAportePremio ObterEventoAporte(TipoRegimeFinanceiroEnum regimeFinanceiro, int parcela) { return(EventoAportePremioBuilder.UmEvento().ComIdentificador(_identificador).Padrao() .Com(PremioBuilder.Um().Padrao().ComNumeroParcela(parcela) .Com(CoberturaContratadaBuilder.Uma() .ComRegimeFinanceiro((short)regimeFinanceiro) .ComTiposProvisao(TipoProvisaoEnum.PMBAC, TipoProvisaoEnum.PEF) .ComId(_coberturaCadastrada.Id) .Com(HistoricoCoberturaContratadaBuilder.UmHistorico().ComDadosPadroes().ComId(_historicoId)) ) .Com(MovimentoProvisaoBuilder.UmBuilder().Padrao() .Com(ProvisaoCoberturaBuilder.UmBuilder()) ) .Com(PagamentoPremioBuilder.Um().Padrao()) ).Build()); }
public void SetUpFixture() { _premio = PremioBuilder.Um().Padrao() .Com(CoberturaContratadaBuilder.Uma().ComItemProdutoId((int)TipoItemProdutoEnum.VidaIndividual) .Com(HistoricoCoberturaContratadaBuilder.UmHistorico().ComDadosPadroes())) .Build(); _premio.InformaEvento(EventoEmissaoPremioBuilder.UmEvento().Padrao().Build()); _resultado = PmbacBuilder.UmBuilder().Padrao().Build(); _facade = new Mock <ICalculoFacade>(); _facade.Setup(x => x.CalcularPMBAC(It.IsAny <CoberturaContratada>(), It.IsAny <DateTime>(), It.IsAny <decimal>())).Returns(_resultado); _calculadorPmbac = new CalculadorProvisaoMatematicaBeneficioAConceder(_facade.Object); }
public void AoCalcularUmaProvisaoComMesDevigenciaIgualAoMesFimVigenciaDeveRetornarUmaProvisao() { _premio = PremioBuilder.Um().Padrao() .Com(CoberturaContratadaBuilder.Uma().Com(HistoricoCoberturaContratadaBuilder.UmHistorico())) .ComDataCompetencia(new DateTime(2017, 01, 01)) .ComFimVigencia(new DateTime(2017, 01, 31)) .Build(); _premio.InformaEvento(EventoEmissaoPremioBuilder.UmEvento().Padrao().Build()); var listaProvisao = _calculadorPPNG.CalcularProvisao(_premio); var qtdCompetencias = 1; Assert.That(qtdCompetencias, Is.EqualTo(listaProvisao.ToList().Count)); }
public new void FixtureSetUp() { _eventos = GetInstance <IEventosBase <EventoEmissaoPremio> >(); _eventoEmissao = EventoParcelaEmitidaBuilder .UmEventoComDataExecucao(_identificador, IdentificadoresPadrao.Competencia) .Padrao() .Com(PremioBuilder.Um().Padrao() .Com(CoberturaContratadaBuilder.Uma() .ComRegimeFinanceiro((short)TipoRegimeFinanceiroEnum.Capitalizacao) .ComTiposProvisao(TipoProvisaoEnum.PMBAC, TipoProvisaoEnum.PEF) .ComId(_coberturaCadastrada.Id) .Com(HistoricoCoberturaContratadaBuilder.UmHistorico().ComId(_historicoId).ComDadosPadroes())) .Com(MovimentoProvisaoBuilder.UmBuilder().Padrao() .Com(ProvisaoCoberturaBuilder.UmBuilder()))) .Build(); _eventos.Salvar(_eventoEmissao).Wait(); }
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())); }