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); }
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); }
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); }