Пример #1
0
        public void TestMethod1()
        {
            var listaContratos = DatosPruebaContrato.ContratoIND();
            var listaReglas    = DatosPruebaRegla.ReglaCambioNombrePosicionPreIND();

            // Act

            var contrato       = listaContratos.FirstOrDefault();
            var fechaInicioAux = contrato.GetType().GetProperty("FechaInicio").ToString();
            var re             = listaContratos.FirstOrDefault();

            EjecutarSalida.Inicio(contrato, new System.Collections.Generic.List <SalidaGenerica>()
            {
                new SalidaGenerica
                {
                    NombrePropiedad = "Region",
                    Valor           = "Costa",
                },
                new SalidaGenerica
                {
                    NombrePropiedad = "Version",
                    Valor           = "1000000",
                },
                new SalidaGenerica
                {
                    NombrePropiedad = "DeducibleTotal",
                    Valor           = "55.23",
                },
                new SalidaGenerica
                {
                    NombrePropiedad = "FechaInicio",
                    Valor           = "20/20/2019",
                },
                new SalidaGenerica
                {
                    NombrePropiedad = "EsDeducibleAnual",
                    Valor           = "true",
                }
            });

            // Assert
            Assert.AreEqual("Costa", contrato.GetType().GetProperty("Region").ToString());
            Assert.AreEqual(1000000, contrato.GetType().GetProperty("Version").ToString());
            Assert.AreEqual(55.23, contrato.GetType().GetProperty("DeducibleTotal").ToString());
            if (contrato.GetType().GetProperty("FechaInicio").ToString() != fechaInicioAux)
            {
                Assert.AreEqual("10/09/2019 00:00:00", contrato.GetType().GetProperty("FechaInicio").ToString());
            }

            Assert.AreEqual(true, contrato.GetType().GetProperty("EsDeducibleAnual").ToString());
        }
        public void ValidarReglaCambioNombrePosicionDesconocidaContratoIND()
        {
            var listaContratos = DatosPruebaContrato.ContratoIND();
            var listaReglas    = DatosPruebaRegla.ReglaCambioNombrePosicionDesconocidaIND();

            try
            {
                var gestor = new GestorReglaContrato <Contrato>(listaReglas, listaContratos);
                var listaContratosRespuesta = gestor.AplicarReglasContratoCobertura(out var mensajes);
                Assert.AreEqual("Ideal 4d Sierra", listaContratosRespuesta.FirstOrDefault().NombrePlan);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        public void ValidarReglaCambioNombreSobreescribirContratoIND()
        {
            var listaContratos = DatosPruebaContrato.ContratoIND();
            var listaReglas    = DatosPruebaRegla.ReglaCambioNombreSobreescribirIND();

            try
            {
                var gestor = new GestorReglaContrato <Contrato>(listaReglas, listaContratos);
                var listaContratosRespuesta = gestor.AplicarReglasContratoCobertura(out var mensajes);
                Assert.AreEqual("Producto Individual -", listaContratosRespuesta.FirstOrDefault().NombrePlan);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        public void ValidarReglaCambioObservacionPosicionDesconocidaPlanContratoIND()
        {
            var listaContratos = DatosPruebaContrato.ContratoIND();
            var listaReglas    = DatosPruebaRegla.ReglaCambioObservacionPosicionDesconocidaIND();

            try
            {
                var gestor = new GestorReglaContrato <Contrato>(listaReglas, listaContratos);
                var listaContratosRespuesta = gestor.AplicarReglasContratoCobertura(out var mensajes);
                Assert.AreEqual("Contrato impago, favor comuníquese con Saludsa al 6020920 o escribe al [email protected]", listaContratosRespuesta.FirstOrDefault().Observaciones);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        public void ValidarReglaEntradaBeneficiarioNull()
        {
            var listaContratos = DatosPruebaContrato.ContratoIND();
            var listaReglas    = DatosPruebaRegla.ReglaEntradaBeneficiarioNull();

            try
            {
                var gestor = new GestorReglaContrato <Contrato>(listaReglas, listaContratos);
                var listaContratosRespuesta = gestor.AplicarReglasContratoCobertura(out var mensajes);
                Assert.AreEqual(mensajes.Count, 0);
                Assert.AreEqual(listaContratosRespuesta[0].NombrePlan, "Producto Individual");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        public void ValidarReglaCodigoPlanContratoINDFueraRango()
        {
            var listaContratos = DatosPruebaContrato.ContratoIND();
            var listaReglas    = DatosPruebaRegla.ReglaCodigoPlan1PrepFueraRango();

            try
            {
                var gestor = new GestorReglaContrato <Contrato>(listaReglas, listaContratos);
                var listaContratosRespuesta = gestor.AplicarReglasContratoCobertura(out var mensajes);
                Assert.IsTrue(mensajes.Count == 0);
                Assert.IsTrue(listaContratosRespuesta[0].NombrePlan.Equals("Ideal 4d Sierra", StringComparison.InvariantCultureIgnoreCase));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        public void ValidarReglaDeducibleTotal2PrepContratoIND()
        {
            var listaContratos = DatosPruebaContrato.ContratoIND();
            var listaReglas    = DatosPruebaRegla.ReglaDeducibleTotal2Prep();

            try
            {
                var gestor = new GestorReglaContrato <Contrato>(listaReglas, listaContratos);
                var listaContratosRespuesta = gestor.AplicarReglasContratoCobertura(out var mensajes);
                Assert.IsTrue(mensajes.Count == 0);
                Assert.IsTrue(listaContratosRespuesta[0].NombrePlan.Equals("Producto Individual", StringComparison.InvariantCultureIgnoreCase));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }