示例#1
0
        public void SetUpAirport()
        {
            Dictionary <string, int> arikAirlineClasses = new Dictionary <string, int>()
            {
                { "Economy", 1 },
                { "Business", 5 },
                { "First Class", 10 }
            };

            Airline airline1 = AirlineFactory.CreateAirline("passenger", "Arik", arikAirlineClasses);

            airline1.setUpFlights();
            AvailableAirlines.Add(airline1);

            Dictionary <string, int> aeroAirlineClasses = new Dictionary <string, int>()
            {
                { "Economy", 1 },
                { "Premium Economy", 3 },
                { "Business", 5 },
                { "First Class", 7 }
            };

            Airline airline2 = AirlineFactory.CreateAirline("passenger", "Aero Contractors", aeroAirlineClasses);

            airline2.setUpFlights();
            AvailableAirlines.Add(airline2);

            Airline airline3 = AirlineFactory.CreateAirline("cargo", "Arik");

            airline3.setUpFlights();
            AvailableAirlines.Add(airline3);
        }
示例#2
0
        public void Getting_All_Airlines_Within_The_Airport()
        {
            Airport anAirport = Airport.CreateAirport("Lagos");
            Airline anAirline = AirlineFactory.CreateAirline("passenger", "Arik");

            anAirport.RegisterAirline(anAirline);

            CollectionAssert.AllItemsAreInstancesOfType(anAirport.AvailableAirlines, typeof(Airline));
        }
示例#3
0
        public void Registering_An_Airline()
        {
            Airport anAirport = Airport.CreateAirport("Lagos");
            Airline anAirline = AirlineFactory.CreateAirline("passenger", "Arik");

            anAirport.RegisterAirline(anAirline);

            CollectionAssert.Contains(anAirport.AvailableAirlines, anAirline);
        }
示例#4
0
        public void Creating_An_Airline()
        {
            Airline anAirline = AirlineFactory.CreateAirline("passenger", "Arik");

            Assert.IsInstanceOf(typeof(PassengerAirline), anAirline);

            StringAssert.AreEqualIgnoringCase(anAirline.AirlineName, "Arik");

            Assert.IsInstanceOf(typeof(Airline), anAirline);
        }
示例#5
0
        public void Booking_A_Full_Flight(int capacity)
        {
            Airport sourceAirport      = Airport.CreateAirport("Lagos");
            Airport destinationAirport = Airport.CreateAirport("Berlin");

            Airline theAirline = AirlineFactory.CreateAirline("passenger", "Emirates");

            sourceAirport.RegisterAirline(theAirline);

            DateTime flightTime = new DateTime(2019, 7, 8);

            Flight flight = new Flight()
            {
                Destination    = "Berlin",
                FlightCapacity = capacity,
                FlightTime     = flightTime
            };

            theAirline.RegisterAFlight(flight);

            string[] passengerNames = { "Daniel", "Zuckerberg", "Bezos", "Page", "Gates" };

            for (int i = 0; i < capacity; i++)
            {
                Passenger passenger = new Passenger()
                {
                    FirstName   = RandomString(8),
                    Source      = sourceAirport,
                    Destination = destinationAirport,
                };

                passenger.BookFlight("Emirates", flightTime, "Economy");
            }

            Passenger latePassenger = new Passenger()
            {
                FirstName   = "Gates",
                Source      = sourceAirport,
                Destination = destinationAirport,
            };

            string expectedResponse = $"Sorry {latePassenger.FirstName}, There are no more seats on the flight going to {latePassenger.Destination.Location}";

            string actualResponse = latePassenger.BookFlight("Emirates", flightTime, "Economy");

            StringAssert.AreEqualIgnoringCase(expectedResponse, actualResponse);
        }
示例#6
0
        static void Main(string[] args)
        {
            InitializeConsole();
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("You are welcome to use Airline manager 2.0");
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("This is a manger which allows you to manage flights, which have a passanger you can manage too");
            Console.WriteLine("You will always have a menu with operation you can do on current object");
            Console.WriteLine("If you have any questions regarding current object, please look into 'Info' menu");
            Console.Write("While doing operations with editing, deleting or adding items please pay attention at");
            Console.ForegroundColor = ConsoleColor.Blue;
            Console.Write(" BLUE ");
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("hint");

            Console.WriteLine("Please press 'Enter' button to proceed");
            Console.ReadLine();

            Start(AirlineFactory.Create(args));
        }
 public IAirlineManager GetManager() => AirlineFactory.CreateManager(null);
示例#8
0
 private void Form1_Load(object sender, EventArgs e)
 {
     airline = AirlineFactory.CreateAirline();
     Refresh(airline);
 }