public Row AddSeat(Seat seat) { var seatsUpdated = Seats.Select(s => s == seat ? seat : s).ToList(); return(new Row(Name, seatsUpdated)); }
private static bool DoesNotExceedPartyRequestedAndCandidateSeatIsAdjacent(Seat candidateSeat, List <Seat> adjacentSeats, PartyRequested partyRequested) { return(candidateSeat.IsAdjacentWith(adjacentSeats) && adjacentSeats.Count < partyRequested.PartySize); }