Exemplo n.º 1
0
        static void Main(string[] args)
        {
            string texto;

            try
            {
                /*** SERVICIOS ***/
                // * Argumento
                IObtenedorTextoArgumentos obtenedorTextoPrimerArgumento = new ObtenedorTextoPrimerArgumento(args);
                // Archivo
                IValidadorArchivo   validadorArchivo   = new ValidarArchivoTexto();
                ILectorArchivoTexto lectorArchivoTexto = new LectorArchivoTexto(obtenedorTextoPrimerArgumento.ObtenerTextoArgumentos(), validadorArchivo);
                IObtenedorRegistrosArchivoListaStrings obtenedorContenidoArchivoListaStrings = new ObtenedorRegistrosArchivoListaStrings(lectorArchivoTexto);

                // * Procesamiento
                IDivisorLinea       divisorLinea       = new DivisorLineaDosCampos();
                IValidadorCamposCVS validadorCamposCVS = new ValidadorCamposEventos();
                //   Cadena de comparaciones
                IDeterminadorDiferenciaTiempo determinadorDiferenciaMes    = new DeterminadorDiferenciaMes(null);
                IDeterminadorDiferenciaTiempo determinadorDiferenciaDia    = new DeterminadorDiferenciaDia(determinadorDiferenciaMes);
                IDeterminadorDiferenciaTiempo determinadorDiferenciaHora   = new DeterminadorDiferenciaHora(determinadorDiferenciaDia);
                IDeterminadorDiferenciaTiempo determinadorDiferenciaMinuto = new DeterminadorDiferenciaMinuto(determinadorDiferenciaHora);
                IAnalizadorTextoEvento        analizadorEvento             = new AnalizadorTextoEvento(divisorLinea, validadorCamposCVS, determinadorDiferenciaMinuto);
                IPresentadorEventos           presentadorEventos           = new PresentadorEventos(obtenedorContenidoArchivoListaStrings.ObtenerRegistrosArchivo(), analizadorEvento);
                texto = presentadorEventos.PresentarEventos();
            }
            catch (Exception ex)
            {
                texto = $"Ha ocurrido un error: {ex.Message}";
            }
            //// Capa de presentación
            IDesplegador desplegador = new DesplegadorPantalla();

            desplegador.Desplegar(texto);
        }
Exemplo n.º 2
0
        public void AnalizarTextoEvento_AnalizarEventoFormatoInvalido_TextoEventoInvalido()
        {
            // Arrange
            var DOCdivisorLinea = new Mock <IDivisorLinea>();

            DOCdivisorLinea.Setup(s => s.DividirLinea(It.IsAny <string>())).Returns(new string[] { "a", "b" });
            var DOCvalidadorCamposCVS = new Mock <IValidadorCamposCVS>();

            DOCvalidadorCamposCVS.Setup(s => s.ValidarCamposCVS(It.IsAny <string[]>())).Returns(false);
            var DOCdeterminadorDiferenciaTiempo = new Mock <IDeterminadorDiferenciaTiempo>();

            string v = "a,b";
            string s = "-- Evento Inválido --";

            // Act
            var SUT       = new AnalizadorTextoEvento(DOCdivisorLinea.Object, DOCvalidadorCamposCVS.Object, DOCdeterminadorDiferenciaTiempo.Object);
            var resultado = SUT.AnalizarTextoEvento(v);

            // Assert
            Assert.AreEqual(s, resultado);
        }
Exemplo n.º 3
0
        public void AnalizarTextoEvento_AnalizarEventoFormatoValido_TextoEventoInvalido()
        {
            // Arrange
            var DOCdivisorLinea = new Mock <IDivisorLinea>();

            DOCdivisorLinea.Setup(s => s.DividirLinea(It.IsAny <string>())).Returns(new string[] { "a", "2020/07/01" });
            var DOCvalidadorCamposCVS = new Mock <IValidadorCamposCVS>();

            DOCvalidadorCamposCVS.Setup(s => s.ValidarCamposCVS(It.IsAny <string[]>())).Returns(true);
            var DOCdeterminadorDiferenciaTiempo = new Mock <IDeterminadorDiferenciaTiempo>();

            DOCdeterminadorDiferenciaTiempo.Setup(s => s.DeterminarDiferenciaTiempo(It.IsAny <DateTime>(), It.IsAny <DateTime>())).Returns(" ocurrirá en 6 mes(es)");

            string v = "a, 2020/07/01";

            // Act
            var SUT       = new AnalizadorTextoEvento(DOCdivisorLinea.Object, DOCvalidadorCamposCVS.Object, DOCdeterminadorDiferenciaTiempo.Object);
            var resultado = SUT.AnalizarTextoEvento(v);

            // Assert
            Assert.AreEqual("El evento a, ocurrirá en 6 mes(es)", resultado);
        }