public void PoolConductoresTestSetUp()
        {
            //Set up
            listaConductores.Add(new Conductor("Ramona"));
            poolConductores = new PoolConductores(listaConductores);

            //Assert
            Assert.AreEqual(poolConductores.GetPoolConductores().Count, 1);
        }
        public void AsignarConductorTest()
        {
            //Set up
            List <Conductor> listaConductores = new List <Conductor>();

            listaConductores.Add(new Conductor("Samanta"));

            PoolConductores poolConductores = new PoolConductores(listaConductores);

            //Build up
            carrera.AsignarConductor(poolConductores);

            //Assert
            Assert.AreEqual(poolConductores.GetPoolConductores()[0].IsOcupado(), true);
        }
Example #3
0
        static void Main(string[] args)
        {
            /**
             * Configuración del Usuario y de la Carrera
             */

            // Confiruación Usuario
            string tarjetaCredito = "4987653214";
            string origen         = "Aeropuerto PMI";
            string destino        = "Palma de Mallorca";
            double distancia      = 25;
            int    tiempoEstimado = 15;

            //Configuración Carrera
            Carrera carrera = new Carrera(tarjetaCredito);

            carrera.SetOrigen(origen);
            carrera.SetDestino(destino);
            carrera.SetDistancia(distancia);
            carrera.SetTiempoEsperado(tiempoEstimado);

            //Prints
            Console.WriteLine("\n#####" + "\t Set Pickup: \t" + "#####\n");

            Console.WriteLine("Visa: " + carrera.GetTarjeta() + "\t");
            Console.WriteLine("Origen: " + carrera.GetOrigin() + "\t");
            Console.WriteLine("Destino: " + carrera.GetDestino() + "\t");
            Console.WriteLine("Tiempo estimado: " + carrera.GetTiempoEsperado() + "\t");


            Console.WriteLine("\n#####" + "\t See your Cost: \t" + "#####\n");
            Console.WriteLine("Visa: " + carrera.GetTarjeta() + "\t");
            Console.WriteLine("Origen: " + carrera.GetOrigin() + "\t");
            Console.WriteLine("Destino: " + carrera.GetDestino() + "\t");
            Console.WriteLine("Tiempo estimado: " + carrera.GetTiempoEsperado() + "\t");
            Console.WriteLine("Coste estimado: " + carrera.GetCosteEsperado() + "\t");


            Console.WriteLine("\n#####" + "\t Get a ride: Driver \t" + "#####\n");

            /**
             * Necesitamos crear la flota de conductores de donde seleccionar uno
             * para ofrecer el servicio.
             * La flota es un objeto de tipo PoolConductores.
             */

            List <Conductor> poolConductores = new List <Conductor>();
            Conductor        conductor       = null;
            List <string>    nombres         = new List <string> {
                "Samanta", "Ariel", "Gabriela"
            };

            foreach (string nombre in nombres)
            {
                conductor = new Conductor(nombre);
                poolConductores.Add(conductor);
            }

            List <string> matriculas = new List <string> {
                "4532DLK", "4598LKG", "6295MDN"
            };
            List <string> modelos = new List <string> {
                "Toyota Prius", "Renault Megane", "Honda Civic"
            };

            int index = 0;

            foreach (Conductor conductora in poolConductores)
            {
                conductora.SetMatricula(matriculas[index]);
                conductora.SetModelo(modelos[index]);
                conductora.SetValoracion(4);
                index++;
            }

            /**
             * Se crea el objeto flota de conductores del tipo PoolConductores
             */
            PoolConductores conductores = new PoolConductores(poolConductores);

            carrera.AsignarConductor(conductores);

            Console.WriteLine("Driver: " + carrera.GetConductor().GetNombre() + "\t");
            Console.WriteLine("Matricula: " + carrera.GetConductor().GetMatricula() + "\t");
            Console.WriteLine("Modelo: " + carrera.GetConductor().GetModelo() + "\t");
            Console.WriteLine("Valoración: " + carrera.GetConductor().GetValoracion() + "\t");
            Console.WriteLine("Origen: " + carrera.GetOrigin() + "\t");
            Console.WriteLine("Destino: " + carrera.GetDestino() + "\t");

            bool isOcupado = carrera.GetConductor().IsOcupado();

            if (isOcupado)
            {
                Console.WriteLine("El conductor esta ocupado");
            }
            else
            {
                Console.WriteLine("El conductor esta libre");
            }


            Console.WriteLine("\n#####" + "\t Pay % Tip \t" + "#####\n");

            /**
             * Hora del pago
             */
            carrera.RealizarPago(carrera.GetCosteEsperado());
            carrera.RecibirPropina(1);
            carrera.LiberarConductor();

            Console.WriteLine("Driver: " + carrera.GetConductor().GetNombre() + "\t");
            Console.WriteLine("TIP: " + carrera.GetPropina() + "\t");
            Console.WriteLine("Tarjeta: " + carrera.GetTarjeta() + "\t");
            Console.WriteLine("Coste total: " + carrera.GetCosteTotal() + "\t");
            Console.WriteLine("Esta ocupado: " + carrera.GetConductor().IsOcupado() + "\t");

            Console.WriteLine("\n#####" + "\t Rate your driver \t" + "#####\n");
            carrera.GetConductor().SetValoracion(5);
            Console.WriteLine("Driver: " + carrera.GetConductor().GetNombre() + "\t");
            Console.WriteLine("Valoracion: " + carrera.GetConductor().GetValoracion() + "\t");
        }