public void Constuctor_For_LoyaltyPassenger_ShouldSetProperties() { var passenger = new LoyaltyPassenger("john", 33, "loyalty", 105, true, true); Assert.AreNotEqual("John", passenger.FirstName); Assert.AreEqual(33, passenger.Age); Assert.AreEqual(true, EnumHelper <PassengerType> .IsValidEnum("loyalty")); }
private void ParseFlightReportLine(string line, FlightReport flightReport) { var instructionLine = GetInstructionLine(line); if (flightReport.Route == null) // Route must be set first { if (instructionLine.Type != InstructionLineType.AddRoute) { throw new Exception("Route is not set."); } flightReport.Route = new Route(instructionLine.ParametersArray); } else if (flightReport.Aircraft == null) // Aircraft must be set first { if (instructionLine.Type != InstructionLineType.AddAircraft) { throw new Exception("Aircraft is not set."); } flightReport.Aircraft = new Aircraft(instructionLine.ParametersArray); } else // Parse passengers { Passenger passenger = null; switch (instructionLine.Type) { case InstructionLineType.AddRoute: // Route must be set only once throw new Exception("Route is already set."); case InstructionLineType.AddAircraft: // Aircraft must be set only once throw new Exception("Aircraft is already set."); case InstructionLineType.AddGeneralPassenger: passenger = new GeneralPassenger(instructionLine.ParametersArray); break; case InstructionLineType.AddLoyaltyPassenger: passenger = new LoyaltyPassenger(instructionLine.ParametersArray); break; case InstructionLineType.AddAirlinePassenger: passenger = new AirlinePassenger(instructionLine.ParametersArray); break; } if (passenger == null) { throw new Exception("Passengers are not set."); } flightReport.Passengers.Add(passenger); } }
public override void Display() { base.Display(); var passengerName = Input.ReadString("Enter Loyalty passenger name: "); var passengerAge = Input.ReadInt("Enter Loyalty passenger age: ", 1, 120); var passengerPoints = Input.ReadInt("Enter Loyalty passenger points total: ", 1, int.MaxValue); var passengerUsePoints = Input.ReadBool("Loyalty passenger using points?"); var passenger = new LoyaltyPassenger() { Name = passengerName, Age = passengerAge, TotalPoints = passengerPoints, UsePoints = passengerUsePoints }; FlightProgram.ScheduledFlight.AddPassenger(passenger); Input.ReadString("Press [Enter] to navigate home"); Program.NavigateHome(); }
public override void Display() { base.Display(); string command; do { System.Console.WriteLine("Please enter command."); command = System.Console.ReadLine() ?? ""; try { var enteredText = command.ToLower(); if (enteredText.Contains("add general")) { var passengerSegments = enteredText.Split(' '); var generalPassenger = new GeneralPassenger { Name = passengerSegments[2], Age = Convert.ToInt32(passengerSegments[3]) }; FlightProgram.ScheduledFlight.AddPassenger(generalPassenger); } else if (enteredText.Contains("add loyalty")) { var passengerSegments = enteredText.Split(' '); var loyaltyPassenger = new LoyaltyPassenger { Name = passengerSegments[2], Age = Convert.ToInt32(passengerSegments[3]), TotalPoints = Convert.ToInt32(passengerSegments[4]), UsePoints = Convert.ToBoolean(passengerSegments[5]) }; FlightProgram.ScheduledFlight.AddPassenger(loyaltyPassenger); } else if (enteredText.Contains("add airline")) { var passengerSegments = enteredText.Split(' '); var airlineEmployee = new AirlineEmployee { Name = passengerSegments[2], Age = Convert.ToInt32(passengerSegments[3]) }; FlightProgram.ScheduledFlight.AddPassenger(airlineEmployee); } else if (enteredText.Contains("add discount")) { var passengerSegments = enteredText.Split(' '); var discountEmployee = new DiscountedPassenger { Name = passengerSegments[2], Age = Convert.ToInt32(passengerSegments[3]) }; FlightProgram.ScheduledFlight.AddPassenger(discountEmployee); } else if (enteredText.Contains("display summary")) { Program.NavigateTo <DisplaySummaryPage>(); } } catch { Output.WriteLine("Input format was not in a correct format. Please try again."); } } while (command != "exit"); Input.ReadString("Press [Enter] to navigate home"); Program.NavigateHome(); }