示例#1
0
        public void RecuperarDTOCostoMenor_ValidarPropiedadCosto_PropiedadCosto()
        {
            //Arrange
            List <IMediosTransportes> lstDHL = new List <IMediosTransportes>();
            IMediosTransportes        barco  = new MedioTransporteBarco();
            var DOCGeneradorMensaje          = new Mock <IGeneradorMensajes>();

            lstDHL.Add(barco);
            var DHL = new PaqueteriaDHLStrategy(DOCGeneradorMensaje.Object);

            DHL.lstMediosTransporte = lstDHL;
            List <ITransportistas> lstTransportistas = new List <ITransportistas>();

            lstTransportistas.Add(DHL);
            IPaqueteEnviado paqueteEnviado = new PaqueteEnviado();

            paqueteEnviado.cPaqueteria      = "Fedex";
            paqueteEnviado.cMedioTransporte = "Barco";
            paqueteEnviado.dtFechaActual    = new DateTime(2020, 01, 01);
            paqueteEnviado.dtFechaPedido    = new DateTime(2020, 01, 21);
            paqueteEnviado.cDistancia       = "600";
            paqueteEnviado.dCostoEnvio      = 1000;
            var DOCIEnlistadorPaqueterias = new Mock <IEnlistadorPaqueteriaDisponibles>();

            DOCIEnlistadorPaqueterias.Setup((s) => s.obtenerListadoTransportistas()).Returns(lstTransportistas);
            var SUT = new ObtenedorCostoEnvioMenor(DOCIEnlistadorPaqueterias.Object);

            //Act
            var PaqueteCostoMenor = SUT.RecuperarDTOCostoMenor(paqueteEnviado);

            //Assert
            Assert.AreEqual(160, PaqueteCostoMenor.CostoEnvio);
        }
示例#2
0
        public void EnlistadorPaqueteriasDisponibles_ParametroIEnlistadorPaqueteriaDisponiblesNulo_ArgumentNullException()
        {
            //Arrange
            var SUT = new ObtenedorCostoEnvioMenor(null);

            //Act

            //Assert
        }
示例#3
0
        public void RecuperarDTOCostoMenor_ParametroIPaqueteEnviadoNulo_ArgumentNullException()
        {
            //Arrange
            var DOCIEnlistadorPaqueterias = new Mock <IEnlistadorPaqueteriaDisponibles>();
            var SUT = new ObtenedorCostoEnvioMenor(DOCIEnlistadorPaqueterias.Object);

            //Act
            var DT = SUT.RecuperarDTOCostoMenor(null);

            //Assert
        }
示例#4
0
        /// <summary>
        /// Inicializa la aplicación.
        /// </summary>
        private static void InicializarAplicacion()
        {
            DateTime dtFechaBase = new DateTime(2020, 01, 23, 14, 00, 00);

            //Se obtiene la ruta del archivo.
            string cPath = string.Format("{0}{1}", Directory.GetCurrentDirectory(), @"\AppData\Paquetes.csv");
            IRecuperadorConfiguracionTransportista recuperadorConfiguracionTransportista = new RecuperadorConfiguracionTransportista();
            IGeneradorMensajes               generadorMensajes               = new GeneradorMensajes();
            IObtenedorDatosArchivo           obtenedorDatosArchivo           = new ObtenedorDatosArchivo();
            IEvaluadorFechaAnterior          evaluadorFechaAnterior          = new EvaluadorFechaAnterior();
            IObtenedorTiempo                 obtenedorTiempo                 = new ObtenedorTiempo();
            ICompletadorDatosDTO             completadorDatosDTO             = new CompletadorDatosDTO(evaluadorFechaAnterior, obtenedorTiempo);
            IRecuperadorListaPaquetes        recuperadorListaPaquetes        = new RecuperadorListaPaquetes(obtenedorDatosArchivo);
            RecuperadorTransportistaFactory  recuperadorTransportistaFactory = new RecuperadorTransportistaFactory(recuperadorConfiguracionTransportista, generadorMensajes);
            IEnlistadorPaqueteriaDisponibles enlistadorPaqueteriaDisponibles = new EnlistadorPaqueteriasDisponibles(recuperadorTransportistaFactory);
            IObtenedorCostoEnvioMenor        obtenedorCostoEnvioMenor        = new ObtenedorCostoEnvioMenor(enlistadorPaqueteriaDisponibles);
            IObtenedorMensajePaquetes        ObtenedorMensajePaquetes        = new ObtenedorMensajePaquetes(recuperadorListaPaquetes, recuperadorTransportistaFactory, completadorDatosDTO, generadorMensajes, obtenedorCostoEnvioMenor);

            ObtenedorMensajePaquetes.ObtenerMensaje(cPath, dtFechaBase);
            Console.WriteLine("\r\nPresione una tecla para salir.");
            System.Console.ReadKey();
        }