public void Check_Seat_Availability()
        {
            List <Plane> planes = new List <Plane>();

            planes.Add(new Plane {
                Id = 123, Name = "Golden C3P-O", NumberOfSeats = 3
            });
            planes.Add(new Plane {
                Id = 124, Name = "Stormtrooper FN-11", NumberOfSeats = 5
            });

            var madridToPrague = new FlightRoute("Madrid", "Prague")
            {
                BaseCost                 = 80,
                BasePrice                = 150,
                LoyaltyPointsGained      = 10,
                MinimumTakeOffPercentage = 0.5
            };

            var scheduledFlight = new ScheduledFlight(madridToPrague);

            scheduledFlight.SetAircraftForRoute(planes[0]);

            scheduledFlight.Passengers.Add(new Passenger {
                Type = PassengerType.General, Name = "George", Age = 23, AllowedBags = 1
            });
            scheduledFlight.Passengers.Add(new Passenger {
                Type = PassengerType.LoyaltyMember, Name = "Luke", Age = 33, LoyaltyPoints = 1500, IsUsingLoyaltyPoints = true, AllowedBags = 2
            });

            var seatsTaken = scheduledFlight.Passengers.Count();

            Assert.True(scheduledFlight.CheckSeatsTaken(seatsTaken, planes));
        }