### Question:
JooqFlightDAO extends AbstractJooqDAO implements FlightDAO { @Override public List<Flight> findWithPlayerId(UUID playerId) { Preconditions.checkNotNull(playerId, "playerId"); LOGGER.debug("Finding flights with player id {}", playerId); Result<Record> result = context().select().from(FLIGHT).join(FLIGHT_SHIPS).on(FLIGHT_SHIPS.FLIGHT_ID.eq(FLIGHT.ID)).where(FLIGHT.PLAYER_ID.eq(playerId)).fetch(); return readFlights(result); } @Inject  JooqFlightDAO(UnitOfWorkService unitOfWorkService); @Override void insert(Flight flight); @Override List<Flight> findWithPlayerId(UUID playerId); @Override List<Flight> findWithArrival(long arrival); @Override void update(Flight flight); @Override void delete(Flight flight); @Override List<Flight> findWithTypeAndDetected(FlightType type, boolean detected); @Override List<Flight> findWithStart(Location location);  }### Answer:
@Test public void testFindWithPlayerId() throws Exception { List<Flight> flights = sut.findWithPlayerId(BasicScenario.Player1.PLAYER.getId()); assertThat(flights, hasSize(2)); assertThat(flights, containsInAnyOrder(FlightScenario.Player1.FLIGHT_1, FlightScenario.Player1.FLIGHT_2)); }