public void should_be_valid_if_not_alone_with_the_passengers() { var passengers = new List <IPassenger>() { new PassengerBuilder().IsCabinChief().Create(), new PassengerBuilder().IsFlightOfficer().Create(), new PassengerBuilder().IsStewardess().Create(), new PassengerBuilder().IsPrisoner().Create(), new PassengerBuilder().IsCop().Create() }; var departureGate = new DepartureGate(passengers); var rule = new PrisonerRule(); rule.CheckRules(departureGate); rule.IsValid().Should().BeTrue(); rule.Errors.Should().BeEmpty(); passengers = new List <IPassenger>() { new PassengerBuilder().IsPrisoner().Create(), new PassengerBuilder().IsCop().Create() }; departureGate = new DepartureGate(passengers); rule.CheckRules(departureGate); rule.IsValid().Should().BeTrue(); rule.Errors.Should().BeEmpty(); }
public void should_be_instantiat_a_valid_departure_gate() { var passengers = new List <IPassenger>() { new PassengerBuilder().IsCabinChief().Create() }; var departureGate = new DepartureGate(passengers); departureGate.Should().NotBeNull(); }
public void should_be_invalid_if_stewardess_alone_with_the_pilot() { var passengers = new List <IPassenger>() { new PassengerBuilder().IsPilot().Create(), new PassengerBuilder().IsStewardess().Create(), }; var departureGate = new DepartureGate(passengers); var rule = new StewardessRule(); rule.CheckRules(departureGate); rule.IsValid().Should().BeFalse(); rule.Errors.Any().Should().BeTrue(); }
public void should_be_invalid_if_flight_officer_alone_with_the_cabin_chief() { var passengers = new List <IPassenger>() { new PassengerBuilder().IsCabinChief().Create(), new PassengerBuilder().IsFlightOfficer().Create(), }; var departureGate = new DepartureGate(passengers); var rule = new FlightOfficerRule(); rule.CheckRules(departureGate); rule.IsValid().Should().BeFalse(); rule.Errors.Any().Should().BeTrue(); }