@Test(expected = SeatNotAvailable.class) public void test_seat_not_available_exception() throws FlightCapacityExceededException, SeatNotAvailable, UnknownAirTicketException { // given Timestamp date = Timestamp.valueOf("2012-12-20 16:00:00"); Flight flight1 = new Flight(date, 200, "praha", "london", 300); genericDao.save(flight1); AirTicket airTicket1 = bookingService.bookFlight(flight1.getId()); // when bookingService.changeSeat(airTicket1.getId(), airTicket1.getSeatNumber()); }
@Test public void test_book_flight() throws FlightCapacityExceededException { // given Timestamp date = Timestamp.valueOf("2012-12-20 16:00:00"); Flight flight1 = new Flight(date, 200, "praha", "london", 300); genericDao.save(flight1); // when AirTicket airTicket1 = bookingService.bookFlight(flight1.getId()); Flight retrieved = airTicket1.getFlight(); // then assertEquals(flight1, retrieved); assertEquals(299, retrieved.getCapacity()); }
@Test public void test_cancell_flight() throws FlightCapacityExceededException, UnknownAirTicketException { // given Timestamp date = Timestamp.valueOf("2012-12-20 16:00:00"); Flight flight1 = new Flight(date, 200, "praha", "london", 300); genericDao.save(flight1); int fullCapacity = flight1.getCapacity(); AirTicket airTicket1 = bookingService.bookFlight(flight1.getId()); int afterCapacity1 = flight1.getCapacity(); assertEquals(fullCapacity, afterCapacity1 + 1); // when bookingService.cancelFlight(airTicket1.getId()); int afterCapacity2 = flight1.getCapacity(); // then assertEquals(fullCapacity, afterCapacity2); assertTrue( "Flight's airtickets should be empty after deleting the airticket", flight1.getAirTickets().isEmpty()); }
@Test public void test_change_ticket() throws FlightCapacityExceededException, SeatNotAvailable, UnknownAirTicketException { // given Timestamp date = Timestamp.valueOf("2012-12-20 16:00:00"); Flight flight1 = new Flight(date, 200, "praha", "london", 300); genericDao.save(flight1); int initialCapacity = flight1.getCapacity(); AirTicket airTicket1 = bookingService.bookFlight(flight1.getId()); Random r = new Random(); int seatNumber = r.nextInt(flight1.getCapacity()); while (seatNumber == airTicket1.getSeatNumber()) { seatNumber = r.nextInt(flight1.getCapacity()); } // when AirTicket retrieved = bookingService.changeSeat(airTicket1.getId(), seatNumber); // then System.out.println(">>>" + retrieved.getSeatNumber() + " " + airTicket1.getSeatNumber()); assertNotSame(retrieved.getSeatNumber(), airTicket1.getSeatNumber()); assertEquals(airTicket1.getFlight(), retrieved.getFlight()); assertEquals(flight1.getCapacity() + 1, initialCapacity); }